Hello,
I am working with the NXP SDK for the i.MX RT platform and I noticed that the SDK provides multiple bootloader-related examples, such as mcuboot_opensource and ota_mcuboot_basic.
From my understanding, the boot flow seems to be as follows:
The mcuboot_opensource project is programmed first and acts as the main bootloader.
The ota_mcuboot_basic example is then used to handle firmware updates.
Finally, the OTA process updates the actual user application firmware.
So effectively, there appear to be three components involved:
MCUboot bootloader (mcuboot_opensource)
OTA update application (ota_mcuboot_basic)
Final user application firmware
I would like to confirm if this understanding is correct. Specifically:
Is mcuboot_opensource always required as the base bootloader for OTA examples like ota_mcuboot_basic?
Does ota_mcuboot_basic act as the main application that gets updated, or is it only a reference example for implementing OTA updates in a custom application?
In a real product, would we typically keep MCUboot as the bootloader and replace ota_mcuboot_basic with our own application?
Any clarification on the correct boot flow and how these examples are intended to be used in a production setup would be very helpful.
Thank you.