This is a simple mbed client example demonstrating, registration of a device with mbed Device Connector and reading and writing values as well as deregistering on different Network Interfaces including Ethernet, WiFi, 6LoWPAN ND and Thread respectively.
Fork of mbed-os-example-client by
Diff: README.md
- Revision:
- 71:ec259c9b02ea
- Parent:
- 70:23c95e43feb9
- Child:
- 72:d0c254f237c4
--- a/README.md Thu Mar 09 14:30:14 2017 +0000 +++ b/README.md Mon Mar 13 13:00:12 2017 +0000 @@ -22,6 +22,7 @@ This example has been tested in following configuration * K64F + NXP MCR20 15.4 shield (mesh `NANOSTACK_FULL` mode) + * [NUCLEO_F429ZI](https://developer.mbed.org/platforms/ST-Nucleo-F429ZI/) + [X-NUCLEO-IDS01A4](https://github.com/ARMmbed/stm-spirit1-rf-driver) Spirit1 6LoWPAN expansion board (mesh `LOWPAN_ROUTER` mode) * NUCLEO_F429ZI + ATMEL AT233 15.4 shield (mesh `LOWPAN_ROUTER` mode) * K64F (Ethernet) * NUCLEO_F429ZI (Ethernet) @@ -84,14 +85,13 @@ ### 6LoWPAN ND and Thread settings -First, you need to select the RF driver to be used by the 6LoWPAN/Thread stack. This example supports [AT86RF233/212B](https://github.com/ARMmbed/atmel-rf-driver) and [NXP-MCR20a](https://github.com/ARMmbed/mcr20a-rf-driver) radio shields. +First, you need to select the RF driver to be used by the 6LoWPAN/Thread stack. This example supports [AT86RF233/212B](https://github.com/ARMmbed/atmel-rf-driver), [NXP-MCR20a](https://github.com/ARMmbed/mcr20a-rf-driver), and [X-NUCLEO-IDS01A4](https://github.com/ARMmbed/stm-spirit1-rf-driver) (*a.k.a.* Spirit1) radio shields. -To add the Atmel driver to your application from the command line, call: `mbed add https://github.com/ARMmbed/atmel-rf-driver`. -Please make sure that the `mbed_app.json` file points to the correct radio driver type: +To choose the radio shield make sure that the `mbed_app.json` file points to the correct radio driver type: ```json "mesh_radio_type": { - "help": "options are ATMEL, MCR20", + "help": "options are ATMEL, MCR20, SPIRIT1", "value": "ATMEL" }, ``` @@ -137,6 +137,35 @@ You can view debug traces from the gateway with a serial port monitor. The gateway uses baud rate 460800. The gateway IPv6 address is correctly configured when the following trace is visible: `Eth bootstrap ready, IP=XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX`. +<span class="notes">**Note:** In case you want to use the NUCLEO_F429ZI + X-NUCLEO-IDS01A4 target hardware configuration, you need also to use the [stm32-border-router](https://github.com/ARMmbed/stm32-border-router) (that can be used only as a 6LoWPAN BR and only with NUCLEO_F429ZI) as gateway router. In this case, you need to enable another security feature. By default, the `stm32-border-router` uses `PSK` as security.</span> + +You can enable the security here on your mbed-os-example-client application, for example: + +```json + "target_overrides": { + "*": { + "mbed-mesh-api.6lowpan-nd-security-mode": "PSK", + } + } +``` + +Alternatively, you can remove the link layer security from the `stm32-border-router`. To do that, change the [mbed_app.json](https://github.com/ARMmbed/stm32-border-router/blob/master/mbed_app.json) fetched from the `stm32-border-router` repository, for example: + +```json + "config": { + "security-mode": "NONE", + } +``` + +Furthermore, for the STM Spirit1 Sub-1 GHz RF expansion board (X-NUCLEO-IDS01A4) you need also to configure its MAC address in the `mbed_app.json` file, for example: +```json + "target_overrides": { + "*": { + "spirit1.mac-address": "{0x0, 0x1, 0x2, 0x3, 0x4, 0x5, 0x6, 0x7}" + }, + } +``` + #### Channel settings The default 2.4GHz channel settings are already defined by the [mbed-mesh-api](https://github.com/ARMmbed/mbed-mesh-api) to match the mbed gateway settings. The application can override these settings by adding them to the `mbed_app.json` file in the main project directory. For example: @@ -152,7 +181,7 @@ } ``` -For sub-GHz shields (AT86RF212B) use the following overrides, **6LoWPAN ND only**: +For sub-GHz shields ([Spirit1](https://github.com/ARMmbed/stm-spirit1-rf-driver) or AT86RF212B) use the following overrides, **6LoWPAN ND only**: ```json "mbed-mesh-api.6lowpan-nd-channel-page": 2,