Riotboot_serial trying to flash binary file

It seems that riotboot_serial is not directly supported as a programmer, but you can enable it to experiment with firmware flashing.From the documentation, the process wasn’t entirely clear, but it appears you need to build and flash the bootloader first (specifically, riotboot_serial) using whatever method works for your hardware. Once this is done, you can access the bootloader.When you set PROGRAMMER=riotboot_serial and use the command to flash slot 0 (the riotboot/flash-slot0 target), it attempts to flash the binary file. This binary is flattened from address 0 and includes the header.By using the genhdr show command, you can determine the address of the image and header. The header size is typically 0x400 bytes, which should be subtracted from the address shown by genhdr show. Therefore, if you create a HEX file starting at that calculated address, the slot will be flashed with the correct header and image.

Questions:

  1. What specific steps are needed to properly build and flash riotboot_serial on NRF boards?
  2. Are there any particular configurations or settings required in the Makefile for successful flashing?
  3. How can I verify that the bootloader has been correctly installed before attempting to flash a new firmware image?
  4. Is there a recommended method for generating the HEX file with the correct starting address?
  5. What troubleshooting steps should I take if I encounter issues during flashing with riotboot_serial?
1 Like