Device Management Client Lite 1.2.0 release notes (preview)
New features and changes
Application and bootloader support for manifest version 3. This enables support for FOTA library features:
- Update download resume (currently not supported for differential updates) - resume download in case power or connectivity loss.
- Support firmware candidate encryption (useful for external storage) - disabled by default.
- Component update - allow an application to register custom components and installers.
- Semantic version - firmware version is reported based on the semantic version format.
- Firmware version is reported on the
/14/0/2
resource. - Manifest tool v2.0.0 is required to work with this FOTA library.
- Update x.509 certificate is replaced with a public key in uncompressed point format (X9.62) - requires less memory.
- An application can defer the update.
Device Management Client Lite
- Fixed an issue where Client Lite would trigger sleep-callback during the bootstrapping process.
- Changed the notification handler to send a notification only when crossing the "less than" or "greater than" notification threshold values.
Example application
Fixed handling of partially written (due to power-cut) flash pages while installing the FW candidate.
Known issues
Client Lite 1.2.0 release had regression which may cause bootloader to fail without recovery. It is strongly recommended to upgrade to a later version.
Mbed CLI and Mbed OS tools
- Mbed CLI and Mbed OS tools in general do not currently support manifest-tool v2.
- Mbed Studio has limited support for Client Lite
E2E test library is incompatible with manifest-tool v2
- The provided Pelion E2E python test library does not yet have firmware update support for manifest-tool v2.
- You can use the test-library to verify other functionalities.
The software is alpha quality
- It compiles only with the
GCC_ARM
compiler. - All client features are not in place yet.
- APIs may change.
- Documentation is work in progress.
NRF52840_DK board
- Uses J-Link. It has some stability issues when flashing the board. Sometimes, it ends up in "read only" mode. To fix this, unplug the USB cable and plug it back in.
- Does not compile with ARMC6 compiler.
- Does not work with block-wise sizes smaller than 512.
Other issues
-
The device preserves certificates between device flashes (using
.hex
flashing). If you want the device to pick new developer credentials, you need to clear the storage for example withpyocd erase --mass-erase
or use the configuration optionstorage-reset-dev-credentials
inmbed_app.json
. The device creates a newDevice ID
if it is not found in KVStore. A developer certificate limits the number of devices to 100. -
The logs show:
Resource created Error code : 7
You can ignore this error.