I’ve updated my RedBear Duo Firmware (factory state 0.3.1) to the latest release 0.3.2 from:
successfully. I used dfu-util to manage the update process like documented in “The Duo: Firmware Deployment Guide”. But when I check the system firmware version via serial, I still receive the string: “system firmware version: 0.3.1” like before.
I did not update the DCT (Device Configuration Table) nor the bootloader, because DCT hasn’t changed since 2 years and I could not find any instruction about updating the bootloader at https://github.com/redbear/Duo/blob/master/docs/firmware_deployment_guide.md.
I am not familiar with dfu-util at all, and the argument -a (-- alt, specify the Altsetting of the DFU Interface by name or by number) seems to be very important. So far I did not figure out the interface, which I would have to address in order to update the bootloader.
dfu-util -d 2b04:d058 -a X -s 0x8000000 -D duo-bootloader-r6.bin
What is X in this regard? 0, 1, 2, or “u-boot”?
Because of this uncertainty, I did not update the bootloader so far.
Furthermore, I am not convinced that the older bootloader is responsible of giving me a false positive firmware message over serial. And if so, then I would like to know how to update the bootloader to duo-bootloader-r6.bin with dfu-util (see above, the -a argument issue)
I did update the following bins:
duo-factory-reset.bin Release firmware v0.3.2 2 months ago
duo-system-part1-v0.3.2.bin Release firmware v0.3.2 2 months ago
duo-system-part2-v0.3.2.bin Release firmware v0.3.2 2 months ago
duo-user-part.bin Release firmware v0.3.2 2 months ago
duo-wifi-r2.bin Release firmware v0.3.2 2 months ago
P.S. Here the README.md at https://github.com/redbear/STM32-Arduino/tree/master/arduino/firmwares (my source) says: “Current Firmware Version: v0.3.1”. But that file hasn’t updated since one year. I guess the bins are really 3.2, or?