Changes between Version 17 and Version 18 of Stuff/FirmwareUpdate


Ignore:
Timestamp:
11/16/10 20:53:30 (13 years ago)
Author:
art
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Stuff/FirmwareUpdate

    v17 v18  
    77== Bootloader == 
    88Since 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''' 
    910 * reset OpenBM manually or by an ibus message: 
    1011   * manually: hold MENU+SELECT+EJECT and the release MENU 
     
    1213 
    1314 * 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 32bit 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) 
    1516 
    1617 * now we have around one second time to send messages over ibus to set bootloader into "Firmware Update" mode: 
     
    2223   * bootloader is also deactivated, when full firmware code was transmitted (see next section of how to transmit firmware) 
    2324 
     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