I am developing a DFU (FOTA) feature via BLE on the nRF54L15 MCU using NCS v2.9.1.
I am using MCUBoot direct-XIP with revert mode.
My application needs to detect the following events:
-
FOTA started
-
FOTA succeeded
-
FOTA suspended
-
Image confirmation succeeded
The first two events and the last event can be detected by registering a callback with mgmt_callback_register() using these event IDs:
-
MGMT_EVT_OP_IMG_MGMT_DFU_STARTED -
MGMT_EVT_OP_IMG_MGMT_DFU_PENDING -
MGMT_EVT_OP_IMG_MGMT_DFU_CONFIRMED
However, the FOTA suspend event - such as when the upload process is paused or canceled by the mobile app, or when a BLE disconnect occurs - cannot be detected using MGMT_EVT_OP_IMG_MGMT_DFU_STOPPED.
How can I detect this event?
Do I need to register any additional events?
The MGMT_EVT_OP_IMG_MGMT_DFU_STOPPED description is: /** Callback when a DFU operation is stopped. */
So, what exactly when it is considered as "DFU stopped"?
For some reason, I am not able to upgrade to the latest NCS version.
Thanks everyone.