Table of Contents
Firmware updates from SD-card
Bootloader configuration
In order to perform firmware updates with the OpenBLT from SD-card, double-check that the file system configured in “blt_conf.h”. The following macro should have a value of 1. If this macro did not yet have a value of 1, the bootloader should be rebuild after making the change.
#define BOOT_FILE_SYS_ENABLE (1)
SD-card preparation and update procedure
The demo bootloaders that support firmware updates from SD-card are configured to look for a S-record firmware filename with a predetermined name in the root directory on the SD-card. The filename is configured as a constant character array firmwareFilename[] in hooks.c. Here is the example for the STM32-E407 demo:
static const blt_char firmwareFilename[] = "/demoprog_olimex_stm32e407.srec";
To prepare the SD-card and start the update procedure, perform the following steps:
- Insert the SD-card into your PC and store the firmware file (as specified by firmwareFilename[]) in its root directory. For the demo programs, you can find this file in the “.\Prog\bin\” directory.
- Insert the SD-card into the card holder on the microcontroller board.
- Reset the microcontroller to start the firmware update. Once done, the newly programmed firmware is automatically started.
Note that the bootloader demo is configured to output log messages to a serial terminal. This enables you to view the progress of the firmware update with a terminal program such as Putty. The communication speed is typically 57600 bits/sec. Additionally, the log messages are written to a file called bootlog.txt on the SD-card, which can optionally be checked for verification purposes.
