Bootloader AVR109

From InCircuit
Revision as of 14:36, 31 January 2017 by CGruenig (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The ICradio Module 2.4G and the ICradio Stick 2.4G contain a bootloader allowing the update of the application-software without a hardware debugging unit. While older modules used a proprietary protocol, all recent modules shipped after November 2010 are equipped with an AVR109 compatible bootloader. The ICradio Mini 2.4G is shipped with an bootloader with start of software-version v1.3. Previous models do not contain a bootloader.

Boot strategy

After Power up or Reset the Device will enter the bootloader mode for 5 seconds. If there is no communication, the user application will be started. If an 'E' is received, the bootloader will start the application immediately. If some AVR109 compatible Tool start communicating the device within this time, the bootloader will stay running, until it is stopped by software.

Updating the Application

To update the application any AVR109 compatible program can be used. The following examples will present the usage of avrdude. This can be downloaded at Media:Avrdude+config.zip for example.

The first step is always to gather the information on which UART or COM-Port the ICradio is connected. Using the ICradio Stick 2.4G this is the same port as is used usally to communicate with the device. Using the ICradio Module 2.4G, we recommend either the usage of the ICradio Application Development Board or the USB-UART Bridge. Both will make the Modules UART available via a virtual COM Port. The following example will use the port COM3. All communication will use a baudrate of 38400.

To flash now a new application, eg. the file called main.hex, open a commandline and enter but not starting the command

 avrdude -c avr109 -P COM3 -b 38400 -p m1281 -U flash:w:main.hex

If a ICradio Mini 2.4G is in use, -p m1281 has to be replaced by -p m8.

Now the ICradio should either be reseted or disconnected and reconnected (and repowered this way) and as soon as the the device was detected again the entered command started.

Personal tools