Difference between revisions of "Sync Box Firmware Upgrade using dfu-programmer"
Line 30: | Line 30: | ||
Then to program the device the syntax is: | Then to program the device the syntax is: | ||
act@wilson:~$ sudo dfu-programmer at89c5131:2,49 flash sync_box_v22_26sept2014.hex | act@wilson:~$ sudo dfu-programmer at89c5131:2,49 flash sync_box_v22_26sept2014.hex | ||
+ | |||
+ | [[Category:Firmware]] |
Revision as of 16:09, 30 August 2016
This describes how to upgrade Sync Box Firmware using the free dfu-programmer on linux. This only applies to the microprocessor; often it is also necessary to upgrade the CPLD.
The https://dfu-programmer.github.io/ software can be installed in Ubuntu like this:
sudo apt-get install dfu-programmer
Make sure your version supports the sync box device:
act@wilson:~$ dfu-programmer --version dfu-programmer 0.6.1 act@wilson:~$ dfu-programmer --targets targets: at89c51snd1c at89c51snd2c at89c5130 at89c5131 at89c5132 at90usb1287 at90usb1286 at90usb1287-4k ...
Connect the sync box to the computer over USB. From the manual: "To reprogram BLJB or to get the bootloader to restart so that you can download new code, the PSEN and RESET switches must be held down while the USB connector is inserted. Reset is then released followed by PSEN. "
When the device is properly detected it will show up in lsusb as something like:
act@wilson:~$ lsusb Bus 002 Device 049: ID 03eb:2ffd Atmel Corp. at89c5130/c5131 DFU bootloader
To prove things are working, dump the contents of the device into a file:
act@wilson:~$ sudo dfu-programmer at89c5131:2,49 dump > part_dump.bin
Note that we read the address 2,49 from the lsusb output. The contents of part_dump.bin can then be inspected with hexdump -C to confirm it's the sync box code and not some other nonsense.
Then to program the device the syntax is:
act@wilson:~$ sudo dfu-programmer at89c5131:2,49 flash sync_box_v22_26sept2014.hex