Changes between Version 17 and Version 18 of Stuff/FirmwareUpdate
- Timestamp:
- 11/16/10 20:53:30 (13 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Stuff/FirmwareUpdate
v17 v18 7 7 == Bootloader == 8 8 Since I am using AVR ATmega32 as the uC the update of the firmware can only be done in the bootloader mode. Special code is written to the bootloader section of the uC and is executed on the start or reset. The bootloader checks for special commands and if nothing received it passes the execution to the main software. So in order to activate bootloader mode on the OpenBM device we do following: 9 '''Initialization''' 9 10 * reset OpenBM manually or by an ibus message: 10 11 * manually: hold MENU+SELECT+EJECT and the release MENU … … 12 13 13 14 * OpenBM send version information of currently flashed program as a message over the ibus: 14 * openbm send: F0 len FF FB 01 12 d3 d2 d1 d0 rr rr rr rr chk (major version 8bit = 1:01, minor version 8bit = 18:12 -> 1.18, d0-d3: device id as 32 bit number, rr - reserved bytes)15 * openbm send: F0 len FF FB 01 12 d3 d2 d1 d0 rr rr rr rr chk (major version 8bit = 1:01, minor version 8bit = 18:12 -> 1.18, d0-d3: device id as 32 bit number, rr - reserved bytes) 15 16 16 17 * now we have around one second time to send messages over ibus to set bootloader into "Firmware Update" mode: … … 22 23 * bootloader is also deactivated, when full firmware code was transmitted (see next section of how to transmit firmware) 23 24 25 '''Programming''' 26 * Host application must send an Init-Chunk-Message: FF 07 F0 FA FF 00 nch ncl chk, where nch:ncl - is a 16 bit number indicating number of the firmware chunks