Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
Add instructions for initial programming of Dash #1
The first time you program a Dash after manufacturing, it can't be done via USB and must use the SWD pins. We have a procedure to do this via openocd on the Raspberry Pi and should document it for open source users.
So for now I'm going to drop some notes in here so people can get started and then can work on a more formal doc over the coming weeks.
So the way initial programming works is you have to program the user and system micros by plugging in certain pins into the raspberry pi and using openocd to write to the flash on each micro.
Here are the pins to plug in (note this only works with the Dash 1.2):
These next two are optional, but we use them in the factory to easily run some tests and verify installation is ok. You can do this over USB instead if you want. (You might also need to reconfigure something on the pi for these pins to show up as a serial port)
You'll need to compile openocd from source on the Pi because the version in apt doesn't support everything needed. Fortunately there are instructions for this here: https://movr0.com/2016/09/02/use-raspberry-pi-23-as-a-jtagswd-adapter/
Openocd config files are attached here:
Firmware binaries are here
The commands you'll run are:
Let me know if you run into any trouble here. I'll try to put this into a better formatted doc soon.