Firmware update through UART with other microcontroller (Not PC or Mobile tools)

Hi, I'm building bootloader that can update new firmware through other embedded system.

New firmware package is located in online server. So the other module(that connected with nrf52832 through UART) can download the firmware through internet.

I want to update nrf52832 firmware through that module.

Until now, following process has been ready.

1. The other module(LTE Module) download the new firmware(ZIP package) and store it in its storage.

2. nRF52832 module send AT command to get downloaded firmware through UART.

3. LTE Module start to transfer stored firmware through UART.

I don't know how can I update firmware when nRF52832 receive new firmware from LTE module.

In my opinion, after reading the NRF_DFU_EVT_DFU_INITIALIZED event from DFU Observer, I think it will be possible to update the firmware if I receive data through UART.

In other words, I wonder if it is possible to update the firmware with the following procedure.

1. Start DFU Bootloader and enter into DFU INIALIZED status.

2. Send AT Command to connected LTE module to get the new firmware package(ZIP)

3. LTE module transfer new firmware to nrf52832.

4. Get the NRF_DFU_EVT_DFU_STARTED events from observer.

5. Write new firmware.

6. Postvalidation and restart

7. New firmware started.

Would you check this scenario?

Related