Firmware Update

To set up for an upgrade you will need a PEAK CAN USB to CAN adapter (provided by Barrett). Plug this into the service port on the front of the console and then into one of the USB ports on the front of the console.

Installing btflash

Before upgrading the first time, you must install btflash. To check if you have btflash installed open up a terminal and type

btflash --version

If you have btflash you will get a response similar to this:

btflash, version 0.2.0

Please note that the version number may be different.

To install btflash, follow the installation instructions in the first section from our btflash repository ( link), but skip the "setting up for development" section. You need to be connected to the internet to install btflash.

Setting up CAN

Before using btflash, you will need to guarantee that the CAN adapter is plugged in and then run the following commands. To configure CAN, type:

sudo ip link set can0 type can bitrate 1000000
sudo ip link set up can0


To perform an upgrade you will need a .bin file provided by Barrett. You can carry out the upgrade using the following series of commands (see footnote):

btflash flash 10 path/to/main-board-comm.<version>.bin
btflash reset 10

You should follow these instructions for both consoles to upgrade both Main Boards.


For some context, the Main Board, which is what runs the control firmware and talks to ROS, has an id of 10. In the above series of commands you are telling btflash to flash, write to the program memory of the device, the firmware from the defined file to the device with id 10. The reset commands provides a soft reset for the firmware on the Main Board. You should not need to power cycle, but if issues occur a power cycle is recommended.

Last modified 11 months ago Last modified on Nov 29, 2016, 9:13:47 PM