Firmware Update

From indie Semiconductor Wiki
Revision as of 09:52, 6 March 2019 by Jane (talk | contribs)
Jump to navigation Jump to search


Logo small.png

1 SiRad Simple®

Requirements:

  • keep the firmware ready that you want to flash (*.bin file)
  • know the COM port number of your device
  • terminal program OR small screw driver
  • STM32CubeProgrammer OR STM32Flash tool and flash script configured for SiRad Simple

1.1 Set device into programming mode

The device needs to be booted into the programming mode prior to flashing. Both of the below described methods can be used to set the device into the programming mode.

1.1.1 Use a terminal program to send the programming command

You can use any terminal program to achieve what is described below, however, we use Realterm as an example to describe the process.

Connect to the device using the following UART settings:

  • 230400 baud
  • COM port number of your device
  • Parity: None
  • Data bits: 8
  • Stop bits: 1
  • Flow control: None

Switch to the Port tab and chose the settings, then click on Open. You should see the communication of the device flowing over the UART. Now switch to the Send tab and put in !W\r\n into the first send line. Click Send ASCII to send the programming command to the device. The communication flow should stop and the LED should stop blinking. Do not power cycle the device now until the flash process was finished. Important: Switch back to the Port tab and release the Open button to be able to connect with the flash tool. If an error message appears in Realterm just click it away and try a few more times to click the button until it was released without an error message.

1.1.2 Use hardware switch SW1 to power cycle into programming mode

Disconnect the device from power and use a small screw driver to switch the MP switch of SW1 on the device to ON. Connect the UART lines and power to the device. It should not light up its LED now since it went into programming mode. Do not power cycle the device now until the flash process was finished.

1.2 Flash the firmware

The firmware can be flashed after the device has been set to programming mode. Both of the below described methods can be used to flash the firmware.

1.2.1 Use STM32CubeProgrammer to flash the firmware

Connect to the device using the following UART settings:

  • COM port number of your device
  • 115200 baud
  • Parity: Even
  • Data bits: 8
  • Stop bits: 1.0
  • Flow control: Off

Switch to the Open file tab and chose the firmware file you want to flash. Then click the Download button to flash the firmware to the device. It should take some minutes. The flash progress can be observed with the green progress bar in the bottom of the tool. Just close the tool after the finished flash progress.

1.2.2 Use STM32Flash (Open Source) to flash the firmware

Requirements:

  • STM32Flash tool and flash script with settings for SiRad Simple
  • STM32Flash tool extracted to some folder on your harddisk
  • firmware and flash script placed in the same folder as STM32Flash tool
  • know the COM port number of your device

Open the flash script (*.bat file) for editing in a text editor. Check the name of the firmware (*.bin file) and change it to match the firmware that you want to flash. Check the COM port number and change it to match your devices COM port number. Do not change any of the other settings. Save and close the *.bat file. Now execute the *.bat file. A command line window should appear telling you the flash progress. It should take some minutes to flash the firmware. The window should close automatically when the flash process is finished. The LED of the device will start blinking as usual.

Trouble shooting: If the flash progress is not shown or the command line window opens only very shortly, the flash tool could not flash the device. Please check again the name and COM port in the *.bat file and make sure that no other tool still uses the COM port.

1.3 Power cycle the device

The device now needs to be power cycled to get back into standard operation mode. Disconnect the device from power. If you used the hardware switch to boot into programming mode, you should now set the MP switch of SW1 back to OFF. Connect the power to the device. You can now use the device as usual.