Setting up babydriver, from the top

These steps are accurate as of today, and they might not be.

Setting up CAN (do this the first time you set things up)

  • sudo apt-get install can-utils

  • sudo modprobe can

  • sudo modprobe can_raw

  • sudo modprobe vcan

Setting up CAN dongle

Note: channel names don’t matter, you can put anything you want there, these are just standard

  • if using a PEAK CAN dongle (it’ll say PEAK) on it, sudo ip link set can0 up type can bitrate 500000

    • Note that the name of the channel in this case is can0

  • if using a serial CAN dongle (basically anything other than the PEAK CAN dongle, including the blue one with a cable that looks straight out of the 90s/00s) sudo slcand -o -c -s6 /dev/ttyUSB[press tab here] slcan0 then sudo ip link set up slcan0

    • note the channel name in this case is slcan0

Setting up minicom (optional)

  • open another terminal in vagrant

  • connect the programmer to the controller board

  • sudo minicom -D /dev/serial/by-id/usb-D[press tab here]

  • You should get into the minicom terminal.

  • To exit, press ctrl+shift+a then press z then press enter.

Setting up babydriver

  • make sure you’re in the firmware_xiv directory. If not, do cd ~/shared/firmware_xiv

  • git pull (and make sure it succeeds!). If it doesn’t succeed, make sure you commit your changes if you made any, then do git reset --hard then try pulling again.

  • git checkout soft_306_babydriver_prototype

  • python3 -m pip install projects/baby_driver/scripts/requirements.txt

  • make babydriver

  • once the python shell pops up with the prompt >>>, you can do gpio set

  • gpio_set('b', 5, 1) or gpio_set('b', 5, 0) to set an LED on the controller board (it might be either)