Hi NXP Team,
I am implementing OTA on i.MX8M Plus LPDDR4 EVK using:
Yocto Wrynose
Linux 6.18.20
U-Boot 2026.04
SWUpdate 2026.05.1
SWUpdate integrated successfully into Yocto.
Successfully generated .swu packages.
SWUpdate package installation is working.
Hardware compatibility checking is working.
Successfully updated /etc/ota-version using SWUpdate.
rawfile handler is working.
Now I want to implement production-level A/B OTA with automatic rollback and signed updates.
Could you please guide me on the recommended NXP approach for:
A/B rootfs partition layout.
U-Boot bootcount/bootlimit based rollback.
SWUpdate integration with U-Boot environment.
Correct fw_env.config / libubootenv configuration.
Signed .swu package verification.
Anti-rollback/version protection.
Secure Boot + SWUpdate integration.
Currently, the OTA update completes, but SWUpdate reports:
Cannot initialize environment from /etc/fw_env.config Cannot persistently store update state
Is there an NXP reference design, application note, or example for SWUpdate + A/B + U-Boot rollback + signed OTA on i.MX8M Plus?
Thanks.
Hello,
We do not provide a standard EVK A/B update framework out of the box. A/B update, rollback policy, and power-fail-safe boot selection are system-level features you must implement using U-Boot + SWUpdate. The closest references are:
Best regards.
Hey vp1,
While I do not have an exact answer, I would like to make you aware that Torizon now supports any i. MX SoCs. It's deployed in many critical i.MX8MPlus products worldwide (mostly on Toradex SoMs). It does feature highly reliable OTA (default is OSTree but can be changed)
It includes out-of-the-box secure boot, anti-rollback, vulnerability management (for EU CRA compliance), and more.
The OS is free and open source; we are happy to help if you like. Contact us if you like to give it a try on the i.MX8M Plus LPDDR4 EVK or your own HW.
www.torizon.io
Sorry for the pitch, i work for Torizon and this seemed relevant.
Thanks for the information.
I would like to get some guidance on the recommended OTA architecture for our i.MX 8M Plus evk.
For our i.MX 8M Plus evk, we need a secure OTA solution with:
A/B or fail-safe updates
Signed/authenticated OTA packages
Secure Boot integration
Anti-rollback
Automatic recovery after failed/power-interrupted updates
Key rotation/revocation
Preservation of device identity/configuration
Factory recovery and update logging
For these requirements, could you please suggest which approach is recommended for the i.MX 8M Plus evk?
Specifically, should we continue with the U-Boot + A/B + SWUpdate approach discussed in this thread, or would you recommend another solution such as RAUC, Mender, or an NXP-supported OTA architecture?