Mistake on this page? Email us

Device Management Client 4.13.0

Device Management Client example

  • [Mbed OS] Add DISCO_L496AG board. The cellular settings are for example only.
  • Enable EST flow for LWM2M_COMPLIANT mode.
  • Enable server certificate verification in LWM2M_COMPLIANT mode.
  • [Mbed OS] New feature for migrating the bootstrap server URI to another URI.
    • This allows moving a device from one Device Management region to another, for example from US to EU.
    • Works only with KVStore-based storage.
    • More details in PDMC Migration Tutorial document.
  • Updated libcurl from 7.76.0 to 7.85.0 for Linux targets.
  • Updated mbedTLS from 2.27.0 to 2.28.1 for Linux targets.
  • Branding changes to Izuma.
  • Add the following files to .gitignore:
    • mbed_cloud_client_user_config.h
    • mbed_cloud_dev_credentials.c and
    • update_default_resources.c to minimize risk of leaking credentials/private configs.
    • You can still update these files if you wish, but you have to use git add -f <file>.
  • Zephyr OS updated to 2.7.3.
  • Alternating port fallback config example for MBED_CLOUD_CLIENT_CUSTOM_URI_PORT added to mbed_cloud_client_user_config.h.
    • If a socket error is encountered, the next try will be done with the original CoaP port 5684.
    • After 2nd fail we alternate back to the custom port.
    • NOTE! Only port 443 can be used as an alternative customer port with Izuma Networks.

Factory Configurator Client example

Updated mbedTLS from 2.27.0 to 2.28.1 for Linux targets.

Device Management Client

  • Izuma branding changes.
  • Support for multiple ciphers via config flag PAL_MAX_ALLOWED_CIPHER_SUITES.
    • This is required for improved LwM2M compliance.
    • Please ensure your TLS configuration also enables the required ciphers.
  • Add support for parsing Pkcs#7 certificate format. This format is used in EST flow.
    • This is required for improved LwM2M compliance.
  • Developer flow only: The device goes through a storage reset if the compiled credential file differs from the stored credentials.
  • In LWM2M_COMPLIANT mode, use Bootstrap server CA as LwM2M server CA for enabling server certificate verification during TLS handshake.
  • Fix compilation issue with glibc 2.34 and newer where PTHREAD stack sizes have been changed to runtime variables.
  • Alternating port fallback function for MBED_CLOUD_CLIENT_CUSTOM_URI_PORT added.

Known issues

  • The earlier revisions of LPCXpresso 546XX have a different QSPI chip than some of the later revisions. The application needs to specify the chip at compile time. Select the correct QSPI chip in the board configuration file (define_NXP_LPC54628.txt). This depends on the board revision.
  • [PAL tests] PAL file system and PAL update tests currently support external SD card storage. Future releases will add support for other storage types.
  • [PAL tests] PAL TLS test (TCPHandshakeWhileCertVerify_threads) isn't working on Mbed OS 5.13.0.

Mbed OS

We recommend you read the Mbed OS release notes for known issues and their latest status.

  • PSA is in preview level and as such isn't ready for production yet.
    • You can't update the precompiled PSA binary through firmware update. You can only update the application, itself.
    • K64F:
      • You can use the board in PSA mode (without real hardware PSA implementation).
      • The configuration file that allows this is placed under the configs-psa folder in the example.
      • The PSA mode adds RAM consumption (static +3.5KB) and flash/ROM consumption (+18.5KB).
      • Arm and Partners are optimizing the solution in future releases.

Linux

  • glibc versions 2.23 and 2.24 have a bug in thread creation. It can cause random crashes with Linux. If possible, update glibc to version 2.25 (or later). See sourceware issue 20116 for details. We have implemented a workaround for this issue to decrease its likelihood. This issue may still occur under certain circumstances.
  • Yocto release support for client has been deprecated - if you need it, please contact us.
  • Primary offering for Linux embedded distributions is our Izuma Edge-solution via LmP.

Zephyr OS

  • Configuration MBED_CLOUD_CLIENT_CUSTOM_URI_PORT is not available for Zephyr. If you need, contact us and we will add it.
  • Enabling it now makes the image break the size limit and linking fails.

Device Management Client Third Party IP report

Device Management Client uses some third-party IP (TPIP) components. This table lists the TPIP and sources:

Original License Description
bsdfiff BSD 2 Clause Diff algorithm used for delta update image generation.
LZ4 BSD 2 Clause (lz4.c and lz4.h under /lib in LZ4) Compression algorithm used for compressing delta update images.
TinyCBOR MIT Factory configurator client (FCC) uses TinyCBOR, which is a constrained node implementation of CBOR in C, with slight modifications. The code is at mbed-cloud-client/tinycbor and in a standalone repository in GitHub.
Unity MIT Platform Adaptation Layer (PAL) tests use Unity framework from ThrowTheSwitch. The code is at mbed-cloud-client/mbed-client-pal/Test/Unity.

NXP SDK

Additional TPIP for NXP SDK:

Original License Description
Amazon FreeRTOS kernel v10.2 MIT FreeRTOS kernel from Amazon.
lwIP Modified BSD Lightweight IP stack.
Platform support files BSD 3 Clause Platform specific files in platform/NXP.
LPC54608J512 Linker script BSD 3 Clause Linker script for GNU C.
LPC54xxx generated configuration files BSD 3 Clause Board-support specific generated files in pal-platform/SDK/LPCXpresso54628/generated.
LPC54xxx board support software Copyright NXP Board support software for LPC5400-series - we don't provide this; you must download this with MCUXpresso SDK Builder yourself.
MIMXRT106XXX Linker script BSD 3 Clause Linker script for GNU C.
EVK-MIMXRT1060 generated configuration files BSD 3 Clause Board-support specific generated files in pal-platform/SDK/EVK-MIMXRT1060/generated.
EVK-MIMXRT1060 board support software Copyright NXP Board support software for EVK-MIMXRT1060 - we don't provide this; you must download this with MCUXpresso SDK Builder yourself.

Keil SDK

Original License Description
Platform support files BSD 3 Clause Platform-specific files in platform/KEIL.
Platform adaptation layer files MIT Platform adaptation layer files in Source/Port/Reference-Impl/OS_Specific/RTX_MW.

Renesas SDK

Additional TPIP for Renesas SDK (FSP):

Original License Description
Amazon FreeRTOS kernel v10.3 MIT FreeRTOS kernel from Amazon.
Renesas Flexible Software Package (FSP) v1.0.0 Copyright (c) Renesas Board support package for RA6M3 boards. Running pal-platform.py will git clone this repository to your work area under pal-platform/SDK/Renesas_EK_RA6M3/fsp.
Renesas e2studio generated configuration files Copyright (c) Renesas Renesas e2studio generates a number of files, available in pal-platform/SDK/Renesas_EK_RA6M3/e2studio_gen.
lwIP Modified BSD Lightweight IP stack.
Platform support files BSD 3 Clause Platform specific files in platform/Renesas_EK_RA6M3.
Platform adaptation layer files MIT Platform adaptation layer files in Source/Port/Reference-Impl/OS_Specific/Renesas_EK_RA6M3.

Secure Device Access (SDA)

If you enable Secure Device Access (SDA), you will use some additional TPIP:

Original License Description
cose-c BSD 3 Clause IETF Concise Binary Object Representation (CBOR) Encoded Message Syntax (COSE) - a copy of this library is located under mbed-cloud-client/tree/master/secure-device-access-client/cose-c.

Mbed OS

You also get more TPIP with the Mbed OS release, itself. See its LICENSE.md file for details.