You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Remove alpha, add note about the mbed-cloud-client-example
We're not alpha anymore.
We should tell about the other example too and explain why some
people might want to use that.
Wi-Fi needs to be spellt with the hyphen inbetween.
Copy file name to clipboardExpand all lines: README.md
+6-22Lines changed: 6 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,11 @@
1
1
# Pelion Client Mbed OS Example
2
2
3
-
This is a simplified example with the following features:
3
+
This is a simplified example for Mbed OS with the following features:
4
4
- Mbed OS 5.14.1 and Pelion Device Management Client 4.0.0
5
5
- Support for FW Update
6
6
- 200 lines of code + credential sources
7
7
8
-
Note this application is considered **alpha** and given early access to Mbed Partners.
8
+
There is an example of the client for multiple operating systems in [mbed-cloud-client-example](https://github.com/ARMmbed/mbed-cloud-client-example) repository. The underlying client library is the same for both. This Mbed OS only example is simpler as it only supports one OS, but if you want to do development in Linux and Mbed OS at the same time - you should use the [mbed-cloud-client-example](https://github.com/ARMmbed/mbed-cloud-client-example).
@@ -121,7 +119,6 @@ You can extend or override the default configuration using `mbed_app.json` in th
121
119
122
120
Then start designing the system memory map, the location of components (whether they are on internal or external memory), and the corresponding base addresses and sizes. You may want to create a diagram similar to the one below to help you to make design decisions:
123
121
124
-
```
125
122
+--------------------------+
126
123
| |
127
124
| |
@@ -152,35 +149,30 @@ You can extend or override the default configuration using `mbed_app.json` in th
152
149
| Bootloader |
153
150
| |
154
151
+--------------------------+ <-+ 0
155
-
```
156
152
157
153
In cases where the MCU has two separate memory banks, it's appropiate to allocate the bootloader and base application in one bank, and KVSTORE storage at the begining of the second bank followed by a firmware candidate storage.
158
154
159
155
-**Option 1:** Allocating credentials in internal memory
160
156
161
157
**This is the preferred option whenever possible**. Make sure `TDB_INTERNAL` is the type of storage selected in `mbed_app.json`. Specify the base address depending on the available memory in the system. The size of this section should be aligned with the flash erase sector. The value should be multiple of 4 with a minimum of 24KB and upwards depending on the use case (for example the usage of certificate chain will increase the need of storage to hold those certificates). An example of this configuration can be seen for the `NUCLEO_F429ZI` platform in this application.
-**Option 2:** Allocating credentials in external memory:
170
164
171
165
This is possible when the platform has an storage device wired to the MCU (could be on-board or external component). Make sure `FILESYSTEM` is specified as type of storage. The blockdevice and filesystem should be one of the supported in Mbed OS (see [docs](https://os.mbed.com/docs/mbed-os/latest/porting/blockdevice-port.html)).
172
166
173
167
An example of this configuration can be seen for the `K64F` platform in the [mbed-cloud-client-example](https://github.com/ARMmbed/mbed-cloud-client-example/blob/master/mbed_app.json#L32)
-**Option 1:** Allocating the firmware update candidate in internal memory
220
210
221
211
**This is the preferred option whenever possible**. Make sure `ARM_UCP_FLASHIAP` is selected in `update-storage` in `mbed_app.json`. This area should be located at the end of the flash after the KVSTORE area. Specify the `storage-address`, `storage-size` and `storage-page` as required. The `application-details` option should point at the end of the bootloader area. An example of this configuration can be seen for the `NUCLEO_F429ZI` platform.
-**Option 2:** Allocating the firmware update candidate in external memory
231
219
232
220
When using an external device to the MCU to store the firmware candidate, make sure `ARM_UCP_FLASHIAP_BLOCKDEVICE` is specified as type of `update-storage`. Specify the `storage-address`, `storage-size` and `storage-page` as required.
233
221
234
222
An example of this configuration can be seen for the `K64F` platform in the [mbed-cloud-client-example](https://github.com/ARMmbed/mbed-cloud-client-example/blob/master/mbed_app.json#L32)
@@ -247,7 +233,7 @@ The bootloader is required to perform FW Updates. The steps below explain how to
247
233
248
234
1. Edit the bootloader application configuration in this example (`bootloader/bootloader_app.json`) and add a new target entry. An example of this configuration can be seen for the `NUCLEO_F429ZI` platform:
<spanclass="notes">**Note:**`mbed-bootloader` is primarily optimized for `GCC_ARM`, so you may want to compile it with that toolchain.
269
-
Before jumping to the next step, you should compile and flash the bootloader and then connect over the virtual serial port to ensure the bootloader is running correctly. You can ignore errors related to checksum verification or falure to jump to application - these are expected at this stage.</span>
270
-
254
+
Before jumping to the next step, you should compile and flash the bootloader and then connect over the virtual serial port to ensure the bootloader is running correctly. You can ignore errors related to checksum verification or failure to jump to application - these are expected at this stage.</span>
0 commit comments