Skip to content

Commit

Permalink
Merge pull request #43 from ARMmbed/release-3.1.0
Browse files Browse the repository at this point in the history
mbed-cloud-client-example 3.1.0
  • Loading branch information
teetak01 authored Apr 26, 2019
2 parents 44104a0 + 9884def commit b4b4f55
Show file tree
Hide file tree
Showing 34 changed files with 500 additions and 152 deletions.
29 changes: 29 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,34 @@
# Changelog for Pelion Device Management Client example application

## Release 3.1.0 (26.04.2019)

* Updated to Mbed OS 5.12.1.
* [Linux] Updated Mbed TLS to 2.17.0.
* General optimization on default stack-sizes and TLS configurations for all configurations.
* Dropped the lwIP buffers from 32 KiB to 12 KiB.
* Flash savings from 7 KiB to 20 KiB.
* RAM savings from 7 KiB to 34 KiB.
* Introduced new `configs/wifi_esp8266_minimal.json` which demonstrates the bare minimum needed for full client functionality.
* The configuration uses shared event-queue from main thread, instead of using a separate thread for events. This saves 10.5 KiB RAM.
* New application flag `MCC_MINIMAL` disables several features only designed to enhance user experience, and removes other non-critical features.
* Disabled Button and LED usage by default.
* Disabled error descriptions.
* Disabled usage of some helper functions like `fcc_verify()`.
* Resources generated by the application are disabled on this profile.
* Changed the KVStore and firmware candidate storage to internal flash configuration. This saves 4 KiB RAM and 34 KiB ROM as you don't need to pull in SDDriver or related components.
* Altogether, these optimizations save 43 KiB flash and 31 KiB RAM in respect to the `configs/wifi_esp8266_v4.json` profile. (49 KiB flash and 39 KiB RAM vs. 3.0.0 release version).
* Currently, the minimal profile supports only TCP.
* Minimal configuration is optimimal for boards with about 1024 KiB of flash. If you use it with boards with only 512 KiB flash, you need to enable the external storage for a firmware update candidate and KVstore. The following changes would be needed:
* Change the bootloader to the `block_device` variant.
* Change the target offsets to match the `block_device` bootloader.
* Change the update storage to point to the external storage.
* Change the KVstore configuration to match the external storage configuration.
* See the [porting guide](https://www.pelion.com/docs/device-management/current/porting/index.html) for reference.
* K66F default configuration now provides the full Client feature. This target enables all the RAM/ROM intensive features by default.
* Enabled certificate enrollment client features.
* Increased the main stack size to reflect higher RAM requirements for features.
* [MbedOS] Stop using `CellularBase()` as it is deprecated in Mbed OS, use `CellularInterface()` instead.

## Release 3.0.0 (27.03.2019)

* Updated to Mbed OS 5.12.0.
Expand Down
6 changes: 6 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ LOCAL_ADD_INCLUDE += . \
${LOCAL_NAME}/mbed-cloud-client/source \
${LOCAL_NAME}/mbed-cloud-client/ns-hal-pal \
${LOCAL_NAME}/mbed-cloud-client/nanostack-libservice/mbed-client-libservice \
${LOCAL_NAME}/mbed-cloud-client/mbed-client-pal/Source \
${LOCAL_NAME}/mbed-cloud-client/mbed-client-pal/Source/PAL-Impl/Services-API \
${LOCAL_NAME}/mbed-cloud-client/mbed-client-pal/Configs/pal_config \
${LOCAL_NAME}/mbed-cloud-client/mbed-client-pal/Configs/pal_config/SXOS \
Expand Down Expand Up @@ -108,6 +109,11 @@ else
# from pal_tests_nonstandard_entrypoint.c by PAL_UNIT_TESTING_NONSTANDARD_ENTRYPOINT.
LOCAL_EXPORT_FLAG += "PAL_UNIT_TESTING_NONSTANDARD_ENTRYPOINT"

# the PAL tests can be run one suite at a time by defining PAL_UNIT_TEST_<suite name> flag
# or all suites by omitting said flags and only giving PAL_UNIT_TESTING flag.
# here, export all PAL_UNIT_TEST_* -flags to enable the singe suite testing feature
$(foreach v, $(filter PAL_UNIT_TEST_%,$(.VARIABLES)), $(eval LOCAL_EXPORT_FLAG += "$(v)=$($(v))"))

# build the tests
LOCAL_MODULE_DEPENDS += ${LOCAL_NAME}/mbed-cloud-client/mbed-client-pal/Test

Expand Down
7 changes: 6 additions & 1 deletion configs-psa/eth_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,17 @@
"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-client-pal.pal-dns-api-version" : 2,
"mbed-cloud-client.external-sst-support" : 1,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null
},
"Freescale": {
"lwip.mem-size" : 12500
},
"K64F": {
"target.network-default-interface-type" : "ETHERNET",
"target.bootloader_img" : "tools/mbed-bootloader-k64f-block_device-kvstore-v4.0.0.bin",
Expand Down
20 changes: 10 additions & 10 deletions configs-psa/wifi_esp8266_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,15 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"mbed-client.event-loop-size" : 2048,
"rtos.main-thread-stack-size" : 5120,
"rtos.timer-thread-stack-size" : 256,
"rtos.idle-thread-stack-size" : 256,
"mbed-client-pal.pal-dns-api-version" : 2,
"mbed-cloud-client.external-sst-support" : 1,
"mbed-cloud-client.psa-support" : 1,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"events.shared-stacksize" : 2048,
"events.shared-eventsize" : 1536,
"mbed-trace.enable" : null,
"drivers.uart-serial-rxbuf-size" : 1024,
"drivers.uart-serial-txbuf-size" : 1024,
"nsapi.default-wifi-security" : "WPA_WPA2",
"nsapi.default-wifi-ssid" : "\"SSID\"",
"nsapi.default-wifi-password" : "\"Password\""
Expand All @@ -27,16 +28,16 @@
"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-g65fd.hex",
"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" : "0xa5c00",
"target.restrict_size" : "0xADC00",
"storage_filesystem.filesystem" : "LITTLE",
"storage_filesystem.blockdevice" : "SD",
"storage_filesystem.internal_base_address" : "(0x1004a400+0xB8000-0xa400-(1024*32))",
"storage_filesystem.rbp_internal_size" : "(31*1024)",
"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)",
Expand All @@ -49,7 +50,7 @@
"esp8266.provide-default" : true,
"update-client.application-details" : "(0x1004a000)",
"update-client.storage-address" : "(1024*1024*64)",
"update-client.storage-size" : "0xa5c00",
"update-client.storage-size" : "0xADC00",
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP_BLOCKDEVICE"
},
"LPC55S69_NS": {
Expand All @@ -66,7 +67,6 @@
"storage.storage_type" : "FILESYSTEM",
"storage_filesystem.filesystem" : "LITTLE",
"storage_filesystem.blockdevice" : "SD",
"mbed-client.event-loop-size" : 2048,
"update-client.bootloader-details" : "0x36FB0",
"update-client.application-details" : "0x38000",
"update-client.storage-address" : "(1024*1024*64)",
Expand Down
13 changes: 10 additions & 3 deletions configs/eth_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,20 @@
"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-client-pal.pal-dns-api-version" : 2,
"mbed-cloud-client.external-sst-support" : 1,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null
},
"Freescale": {
"lwip.mem-size" : 12500
},
"STM_EMAC": {
"lwip.pbuf-pool-size" : 16,
"lwip.mem-size" : 12500
"lwip.pbuf-pool-size" : 16,
"lwip.mem-size" : 12500
},
"K64F": {
"target.network-default-interface-type" : "ETHERNET",
Expand All @@ -44,12 +49,14 @@
"target.bootloader_img" : "tools/mbed-bootloader-k66f-internal_flash-no_rot-v4.0.0.bin",
"target.header_offset" : "0x8000",
"target.app_offset" : "0x8400",
"rtos.main-thread-stack-size" : 8192,
"update-client.bootloader-details" : "0x4D58",
"update-client.application-details" : "(32*1024)",
"update-client.storage-address" : "(MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_BASE_ADDRESS+MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_SIZE)",
"update-client.storage-size" : "(1024*1024-MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_SIZE)",
"update-client.storage-page" : 8,
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP",
"mbed-cloud-client.disable-certificate-enrollment": null,
"storage_tdb_internal.internal_base_address": "(1024*1024)",
"storage_tdb_internal.internal_size" : "(96*1024)",
"storage.storage_type" : "TDB_INTERNAL"
Expand Down
9 changes: 8 additions & 1 deletion configs/eth_v6.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,19 @@
"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-client-pal.pal-dns-api-version" : 2,
"mbed-cloud-client.external-sst-support" : 1,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-locations" : 1,
"mbed-trace.enable" : null,
"lwip.ipv4-enabled" : false,
"lwip.ipv6-enabled" : true
},
"Freescale": {
"lwip.mem-size" : 12500
},
"STM_EMAC": {
"lwip.pbuf-pool-size" : 16,
"lwip.mem-size" : 12500
Expand Down Expand Up @@ -46,12 +51,14 @@
"target.bootloader_img" : "tools/mbed-bootloader-k66f-internal_flash-no_rot-v4.0.0.bin",
"target.header_offset" : "0x8000",
"target.app_offset" : "0x8400",
"rtos.main-thread-stack-size" : 8192,
"update-client.bootloader-details" : "0x4D58",
"update-client.application-details" : "(32*1024)",
"update-client.storage-address" : "(MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_BASE_ADDRESS+MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_SIZE)",
"update-client.storage-size" : "(1024*1024-MBED_CONF_STORAGE_TDB_INTERNAL_INTERNAL_SIZE)",
"update-client.storage-page" : 8,
"mbed-cloud-client.update-storage" : "ARM_UCP_FLASHIAP",
"mbed-cloud-client.disable-certificate-enrollment": null,
"storage.storage_type" : "TDB_INTERNAL",
"storage_tdb_internal.internal_base_address": "(1024*1024)",
"storage_tdb_internal.internal_size" : "(96*1024)"
Expand Down
5 changes: 4 additions & 1 deletion configs/legacy_storage/eth_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 1024,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-address" : "(1024*1024*64)",
Expand Down Expand Up @@ -47,7 +48,9 @@
"client_app.sotp-section-1-address" : "(32*1024)",
"client_app.sotp-section-1-size" : "( 4*1024)",
"client_app.sotp-section-2-address" : "(36*1024)",
"client_app.sotp-section-2-size" : "( 4*1024)"
"client_app.sotp-section-2-size" : "( 4*1024)",
"rtos.main-thread-stack-size" : 8192,
"mbed-cloud-client.disable-certificate-enrollment": null
},
"NUCLEO_F429ZI": {
"target.bootloader_img" : "tools/mbed-bootloader-nucleo_f429zi-block_device-sotp-v3.4.0.bin",
Expand Down
1 change: 1 addition & 0 deletions configs/legacy_storage/eth_v6.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 1024,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-address" : "(1024*1024*64)",
Expand Down
1 change: 1 addition & 0 deletions configs/legacy_storage/mesh_6lowpan.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 32768,
"mbed-client.reconnection-count" : 6,
"mbed-client-pal.pal-dns-api-version": 2,
Expand Down
1 change: 1 addition & 0 deletions configs/legacy_storage/mesh_thread.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 32768,
"mbed-client.reconnection-count" : 6,
"mbed-client-pal.pal-dns-api-version": 2,
Expand Down
1 change: 1 addition & 0 deletions configs/legacy_storage/wifi_esp8266_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 2048,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-address" : "(1024*1024*64)",
Expand Down
1 change: 1 addition & 0 deletions configs/legacy_storage/wifi_f411re_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 2048,
"mbed-cloud-client.external-sst-support" : null,
"nanostack-hal.event_loop_thread_stack_size": 8192,
Expand Down
1 change: 1 addition & 0 deletions configs/legacy_storage/wifi_odin_v4.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
"platform.stdio-convert-newlines" : true,
"platform.stdio-buffered-serial" : true,
"platform.stdio-flush-at-exit" : true,
"rtos.main-thread-stack-size" : 5120,
"mbed-client.event-loop-size" : 2048,
"nanostack-hal.event_loop_thread_stack_size": 8192,
"update-client.storage-address" : "(1024*1024*64)",
Expand Down
3 changes: 3 additions & 0 deletions configs/mesh_6lowpan.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
"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-client.reconnection-count" : 6,
"mbed-client-pal.pal-dns-api-version" : 2,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 120,
Expand Down
3 changes: 3 additions & 0 deletions configs/mesh_thread.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@
"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-client.reconnection-count" : 6,
"mbed-client-pal.pal-dns-api-version" : 2,
"mbed-client.sn-coap-blockwise-max-time-data-stored": 120,
Expand Down
Loading

0 comments on commit b4b4f55

Please sign in to comment.