Skip to content

Commit

Permalink
Merge pull request #53 from ARMmbed/release-4.0.0
Browse files Browse the repository at this point in the history
mbed-cloud-client-example 4.0.0
  • Loading branch information
teetak01 authored Sep 25, 2019
2 parents fc46b17 + 20d5345 commit d3c2235
Show file tree
Hide file tree
Showing 46 changed files with 2,511 additions and 2,774 deletions.
22 changes: 19 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,26 @@
# Changelog for Pelion Device Management Client example application

## Release 3.4.0 (28.08.2019)
## Release 4.0.0 (25.09.2019)

* Updated to Mbed OS 5.14.0.
* [Linux] Updated Mbed TLS to 2.19.1.
* The example application initialization is now done in multiple steps. This ensures the succcessful initialization of the Device Management Client library. It needs to be properly initialized before the memory intensive components (for example nanostack mesh stack).
* Removed `CY8CKIT_062_WIFI_BT_PSA`, which is no longer supported starting from Mbed OS 5.13.1.
* [Linux] Fixed busy-loop when `stdin` is not connected.
* Added default behavior for optionally created `Factory Reset` Resource located under the `Device` Object `/3/0/5`.
* You can overwrite both `Reboot` and `Factory Reset` Resource default behavior by implementing corresponding handler functions.
* Added support for Discovery `L475VG IOT01A` target board (`configs/wifi.json`).
* Added PSA support for `NUCLEO_F411RE` target board (`configs-psa/wifi.json`).
* Added PSA support for Linux (`define_linux_psa.txt`).
* Changed `NUCLEO_F411RE` Wi-Fi configuration to use ESP8266 module instead of the deprecated X-Nucleo IDW01M1.
* Unified Wi-Fi configuration files. `configs/wifi.json` and `configs-psa/wifi.json` now include all supported Wi-Fi configurations except the minimum configuration example, which is still in `configs/wifi_esp8266_minimal.json`.
* New application feature to introduce random delay for Device Management Client registration after the network connection has been established. You can use this feature to stabilize large mesh-type networks with high latency and limited bandwidth. By default, it is enabled for mesh-type networks and disabled for other configurations. To enable the random delay, define `STARTUP_MAX_RANDOM_DELAY` in seconds.

## Release 3.4.0 (15.08.2019)

* Added PSA configuration for K66F (`configs-psa/eth_v4.json`).
* Updated usage of new Update Authorization API, which enables [update priority](../updating-firmware/firmware-manifests.html) feature `set_update_authorize_priority_handler` instead of `set_update_authorize_handler`.
* Use `set_message_delivery_status_cb` to ensure that a POST trigger on the `unregister resource` (`/5000/0/1`) does not result in closing the network connection before client is able to send the final ACK to server.
* Updated usage of new Update Authorization API, which takes in priority as well, `set_update_authorize_priority_handler` instead of `set_update_authorize_handler`.
* Use `set_message_delivery_status_cb` as part of unregister resource triggering to make sure device does not close the network connection before client is able to send the final ACK to server.
* [Linux] Updated Mbed TLS to 2.18.1.
* [Mbed OS] Removed the legacy ESFS-SOTP configurations from the applications. Only KVstore is supported for client storage.

Expand Down
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ LOCAL_ADD_INCLUDE += . \
${LOCAL_NAME}/mbed-cloud-client/mbed-client-pal/Configs/pal_config/SXOS \
${LOCAL_NAME}/mbed-cloud-client/mbed-client/mbed-client-c \
${LOCAL_NAME}/mbed-cloud-client/mbed-coap/mbed-coap \
${LOCAL_NAME}/mbed-cloud-client/mbed-client-randlib \
${LOCAL_NAME}/mbed-cloud-client/nanostack-libservice \
${LOCAL_NAME}/mbed-cloud-client/sal-stack-nanostack-eventloop \
${LOCAL_NAME}/mbed-cloud-client/certificate-enrollment-client/certificate-enrollment-client \
Expand All @@ -75,7 +76,6 @@ LOCAL_EXPORT_FLAG += "'MBED_CLOUD_CLIENT_USER_CONFIG_FILE=\"mbed_cloud_client_us

LOCAL_EXPORT_FLAG += "'MBED_CONF_MBED_CLIENT_EVENT_LOOP_SIZE=12000'"
LOCAL_EXPORT_FLAG += "PAL_SIMULATOR_FLASH_OVER_FILE_SYSTEM=1"
LOCAL_EXPORT_FLAG += "MBED_CONF_MBED_TRACE_ENABLE"
LOCAL_EXPORT_FLAG += "MBED_CONF_APP_CLOUD_MODE=1"
LOCAL_EXPORT_FLAG += "MBED_CONF_APP_DEVELOPER_MODE=1"

Expand Down
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1 +1,4 @@
The full documentation for this example is [available on our documentation site](https://cloud.mbed.com/docs/current/connecting/device-management-client-tutorials.html)
The full documentation for this example is [available on our documentation site](https://www.pelion.com/docs/device-management/current/connecting/device-management-client-tutorials.html).

You can report concerns about the documentation or this SW as issues to [this GitHub repository](https://github.com/ARMmbed/mbed-cloud-client-example/issues).

8 changes: 5 additions & 3 deletions configs-psa/eth_v4.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
{
"macros": [
"ARM_UC_USE_PAL_BLOCKDEVICE=1",
"MBED_BOOTLOADER_SIZE=(32*1024)",
"MBEDTLS_USE_PSA_CRYPTO"
],
"target_overrides": {
Expand All @@ -12,8 +11,6 @@
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null
},
Expand Down Expand Up @@ -72,6 +69,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
80 changes: 44 additions & 36 deletions configs-psa/wifi_esp8266_v4.json → configs-psa/wifi.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,56 +10,24 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"mbed-cloud-client.psa-support" : 1,
"rtos.main-thread-stack-size" : 5120,
"events.shared-stacksize" : 2048,
"events.shared-eventsize" : 1536,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null,
"nsapi.default-wifi-security" : "WPA_WPA2",
"nsapi.default-wifi-ssid" : "\"SSID\"",
"nsapi.default-wifi-password" : "\"Password\""
},
"CY8CKIT_062_WIFI_BT_PSA": {
"client_app.mbedtls-user-config-file" : "\"mbedTLSConfig_mbedOS.h\"",
"client_app.pal-user-defined-configuration" : "\"pal_config_MbedOS.h\"",
"target.app_offset" : "0x0A400",
"target.header_offset" : "0x0A000",
"target.bootloader_img" : "tools/mbed-bootloader-cy8ckit_062_wifi_bt_psa-block_device-kvstore-v4.0.1-4-g19c1.hex",
"target.extra_labels_add" : [ "PSA" ],
"target.macros_add" : ["MBEDTLS_PSA_CRYPTO_C"],
"target.network-default-interface-type" : "WIFI",
"target.components_add" : ["FLASHIAP", "SD"],
"target.restrict_size" : "0xADC00",
"storage_filesystem.filesystem" : "LITTLE",
"storage_filesystem.blockdevice" : "SD",
"storage_filesystem.internal_base_address" : "(0x10040000+0xB8000)",
"storage_filesystem.rbp_internal_size" : "(23*1024)",
"storage.storage_type" : "FILESYSTEM",
"storage_filesystem.external_base_address" : "(0x0)",
"storage_filesystem.external_size" : "(1024*1024*64)",
"sd.SPI_MOSI" : "P12_0",
"sd.SPI_MISO" : "P12_1",
"sd.SPI_CLK" : "P12_2",
"sd.SPI_CS" : "P12_3",
"esp8266.rx" : "P10_0",
"esp8266.tx" : "P10_1",
"esp8266.provide-default" : true,
"update-client.application-details" : "(0x1004a000)",
"update-client.storage-address" : "(1024*1024*64)",
"update-client.storage-size" : "0xADC00",
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP_BLOCKDEVICE"
},
"LPC55S69_NS": {
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP_BLOCKDEVICE",
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP_BLOCKDEVICE",
"target.bootloader_img" : "tools/mbed-bootloader-lpc55s69_ns-block_device-kvstore-v4.0.1-4-g65fd.hex",
"target.header_offset" : "0x8000",
"target.app_offset" : "0x8400",
"target.features_add" : [ "BOOTLOADER", "STORAGE" ],
"target.components_add" : [ "SD", "FLASHIAP" ],
"target.extra_labels_add" : [ "PSA" ],
"target.macros_add" : [ "MBEDTLS_PSA_CRYPTO_C", "DISABLE_ERROR_DESCRIPTION" ],
"target.macros_add" : [ "DISABLE_ERROR_DESCRIPTION" ],
"target.restrict_size" : "0x5BC00",
"target.network-default-interface-type" : "WIFI",
"storage.storage_type" : "FILESYSTEM",
Expand All @@ -79,6 +47,41 @@
"storage_filesystem.external_base_address" : "0x0",
"storage_filesystem.external_size" : "(1024*1024*64)",
"button-pinname" : "SW2"
},
"NUCLEO_F411RE": {
"client_app.mbedtls-user-config-file" : "\"mbedTLSConfig_mbedOS_SW_TRNG_PSA.h\"",
"client_app.pal-user-defined-configuration" : "\"pal_config_non_trng_MbedOS.h\"",
"target.extra_labels_add" : ["PSA"],
"target.macros_add" : ["DISABLE_ERROR_DESCRIPTION", "MBEDTLS_ENTROPY_NV_SEED"],
"mbed-cloud-client.disable-certificate-enrollment": 1,
"target.network-default-interface-type" : "WIFI",
"target.bootloader_img" : "tools/mbed-bootloader-nucleo_f411re-block_device-kvstore-v4.0.0.bin",
"target.header_offset" : "0x10000",
"target.app_offset" : "0x10400",
"target.components_add" : ["SD", "WIFI_IDW01M1"],
"update-client.bootloader-details" : "(MBED_ROM_START + 30*1024)",
"update-client.application-details" : "(MBED_ROM_START + MBED_BOOTLOADER_SIZE + MBED_CONF_STORAGE_FILESYSTEM_RBP_INTERNAL_SIZE)",
"update-client.storage-address" : "(MBED_CONF_STORAGE_FILESYSTEM_EXTERNAL_SIZE)",
"update-client.storage-size" : "((MBED_ROM_START + MBED_ROM_SIZE - APPLICATION_ADDR) * MBED_CONF_UPDATE_CLIENT_STORAGE_LOCATIONS)",
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP_BLOCKDEVICE",
"storage_filesystem.internal_base_address" : "(MBED_ROM_START + MBED_BOOTLOADER_SIZE)",
"storage_filesystem.rbp_internal_size" : "(32*1024)",
"storage_filesystem.external_base_address" : "(0x0)",
"storage_filesystem.external_size" : "(1024*1024*64)",
"storage.storage_type" : "FILESYSTEM",
"storage_filesystem.filesystem" : "LITTLE",
"storage_filesystem.blockdevice" : "SD",
"target.macros_remove" : ["MBEDTLS_CONFIG_HW_SUPPORT"],
"sd.SPI_MOSI" : "PC_3",
"sd.SPI_MISO" : "PC_2",
"sd.SPI_CLK" : "PC_7",
"sd.SPI_CS" : "PB_9",
"esp8266.rx" : "PB_7",
"esp8266.tx" : "PA_15",
"esp8266.rst" : null,
"esp8266.rts" : "PA_12",
"esp8266.cts" : "PA_11",
"esp8266.provide-default" : true
}
},
"config": {
Expand All @@ -94,6 +97,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
8 changes: 5 additions & 3 deletions configs/eth_v4.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"macros": [
"MBED_BOOTLOADER_SIZE=(32*1024)",
"ARM_UC_USE_PAL_BLOCKDEVICE=1"
],
"target_overrides": {
Expand All @@ -11,8 +10,6 @@
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null
},
Expand Down Expand Up @@ -108,6 +105,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
8 changes: 5 additions & 3 deletions configs/eth_v6.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"macros": [
"MBED_BOOTLOADER_SIZE=(32*1024)",
"ARM_UC_USE_PAL_BLOCKDEVICE=1"
],
"target_overrides": {
Expand All @@ -11,8 +10,6 @@
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null,
"lwip.ipv4-enabled" : false,
Expand Down Expand Up @@ -110,6 +107,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
11 changes: 7 additions & 4 deletions configs/mesh_6lowpan.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,12 +10,10 @@
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"mbed-client.reconnection-count" : 6,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 120,
"mbed-client.tls-max-retry" : 240,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 300,
"client_app.pal_dtls_peer_min_timeout" : "10000",
"client_app.startup_max_random_delay" : 200,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null,
Expand Down Expand Up @@ -60,6 +58,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
11 changes: 7 additions & 4 deletions configs/mesh_thread.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,12 +12,10 @@
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"mbed-client.reconnection-count" : 6,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 120,
"mbed-client.tls-max-retry" : 240,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 300,
"client_app.pal_dtls_peer_min_timeout" : "10000",
"client_app.startup_max_random_delay" : 200,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null,
Expand Down Expand Up @@ -61,6 +59,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
12 changes: 7 additions & 5 deletions configs/mesh_wisun.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
{
"macros": [
"MBED_BOOTLOADER_SIZE=(32*1024)",
"ARM_UC_USE_PAL_BLOCKDEVICE=1",
"MBEDTLS_PEM_PARSE_C",
"MBEDTLS_NIST_KW_C",
Expand All @@ -14,12 +13,10 @@
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"mbed-client.reconnection-count" : 6,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 120,
"mbed-client.tls-max-retry" : 240,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 300,
"client_app.pal_dtls_peer_min_timeout" : "10000",
"client_app.startup_max_random_delay" : 200,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null,
Expand Down Expand Up @@ -70,6 +67,11 @@
"led-pinname" : {
"help" : "PinName for led, which is attached to led blink resource.",
"value" : "LED_RED"
},
"bootloader-size": {
"help" : "Helper macro to enable calculation of rom regions. target.header_offset and target.app_offset still needs to be calculated manually, though.",
"value" : "(32*1024)",
"macro_name": "MBED_BOOTLOADER_SIZE"
}
}
}
Loading

0 comments on commit d3c2235

Please sign in to comment.