|
| 1 | +--- |
| 2 | +platform: Free RTOS |
| 3 | +device: Wio Terminal |
| 4 | +language: C++ |
| 5 | +--- |
| 6 | + |
| 7 | +Connect Digital Signage for Wio Terminal device to your Azure IoT services |
| 8 | +=== |
| 9 | + |
| 10 | +--- |
| 11 | +# Table of Contents |
| 12 | + |
| 13 | +- [Introduction](#Introduction) |
| 14 | +- [Bill of Materials](#BillofMaterials) |
| 15 | +- [Supported Device Attestation Methods](#SupportedDeviceAttestationMethods) |
| 16 | +- [Prerequisites](#Prerequisites) |
| 17 | +- [Prepare the Device](#preparethedevice) |
| 18 | +- [Connect to Azure IoT](#ConnecttoAzureIoT) |
| 19 | +- [Limitation](#Limitation) |
| 20 | +- [Additional Links](#AdditionalLinks) |
| 21 | + |
| 22 | +<a name="Introduction"></a> |
| 23 | +# Introduction |
| 24 | + |
| 25 | +This document describes how to connect Digital Signage for Wio Terminal to Azure IoT Hub using the Azure IoT Explorer with certified device application and device models. |
| 26 | + |
| 27 | +IoT Plug and Play certified device simplifies the process of building devices without custom device code. Using Solution builders can be integrated quickly using the certified IoT Plug and Play enabled device based on Azure IoT Central as well as third-party solutions. |
| 28 | + |
| 29 | +This getting started guide provides step by step instruction on getting the device provisioned to Azure IoT Hub using Device Provisioning Service (DPS) and using Azure IoT Explorer to interact with device's capabilities. |
| 30 | + |
| 31 | +The Digital Signage for Wio Terminal is a device that displays text and images. |
| 32 | +Text and images to be displayed can be remotely controlled from Azure IoT. |
| 33 | +The device also sends button clicks to Azure IoT so that cloud processes can be executed in response to button clicks. |
| 34 | + |
| 35 | +<img src="media/5-1.jpg" height="250"/> |
| 36 | +<img src="media/5-2.png" height="250"/> |
| 37 | +<img src="media/5-3.png" height="250"/> |
| 38 | + |
| 39 | +<a name="BillofMaterials"></a> |
| 40 | +# Bill of Materials |
| 41 | + |
| 42 | +|Name|SKU#|Quantity|Wiki|Shop| |
| 43 | +|:--|:--|:--|:--|:--| |
| 44 | +|Wio Terminal|102991299|1|[here](https://wiki.seeedstudio.com/Wio-Terminal-Getting-Started/)|[here](https://www.seeedstudio.com/Wio-Terminal-p-4509.html)| |
| 45 | + |
| 46 | +<a name="SupportedDeviceAttestationMethods"></a> |
| 47 | +# Supported Device Attestation Methods |
| 48 | + |
| 49 | +The following table summarizes supported device attestation/authentication methods : |
| 50 | + |
| 51 | +| Service | Enrollment | Authentication | Support status | |
| 52 | +|:------------------|:-----------|:-------------------------|:---------------| |
| 53 | +| Azure IoT Hub | - | Symmetric Key | Need recompile | |
| 54 | +| Azure IoT Hub | - | X.509 Self-Signed | Not Supported | |
| 55 | +| Azure IoT Hub | - | X.509 CA-Signed | Not Supported | |
| 56 | +| Azure IoT Hub DPS | Group | Symmetric Key | **Supported** | |
| 57 | +| Azure IoT Hub DPS | Group | CA Certificate | Not Supported | |
| 58 | +| Azure IoT Hub DPS | Group | Intermediate Certificate | Not Supported | |
| 59 | +| Azure IoT Hub DPS | Individual | Symmetric Key | **Supported** | |
| 60 | +| Azure IoT Hub DPS | Individual | X.509 | Not Supported | |
| 61 | +| Azure IoT Hub DPS | Individual | TPM | Not Supported | |
| 62 | +| Azure IoT Central | Group | Symmetric Key | **Supported** | |
| 63 | +| Azure IoT Central | Group | CA Certificate | Not Supported | |
| 64 | + |
| 65 | +<a name="Prerequisites"></a> |
| 66 | +# Prerequisites |
| 67 | + |
| 68 | +You should have the following items ready before beginning the process: |
| 69 | + |
| 70 | +**For Azure IoT Central** |
| 71 | +- [Azure IoT Central application](https://docs.microsoft.com/en-us/azure/iot-central/core/overview-iot-central) |
| 72 | + |
| 73 | +**For Azure IoT Hub** |
| 74 | +- [Azure IoT Hub instance](https://docs.microsoft.com/en-us/azure/iot-hub/about-iot-hub) |
| 75 | +- [Azure IoT Hub Device Provisioning Service](https://docs.microsoft.com/en-us/azure/iot-dps/quick-setup-auto-provision) |
| 76 | + |
| 77 | +<a name="preparethedevice"></a> |
| 78 | +# Prepare the Device |
| 79 | + |
| 80 | +In order to configure WiFi and Azure IoT device authentication, please install a serial terminal application such as Putty. |
| 81 | +Wio Terminal uses a serial console command line tool to configure network and Azure IoT provisioning information. |
| 82 | + |
| 83 | +[A game application](https://wiki.seeedstudio.com/Wio-Terminal-Firmware/) is pre-installed to Wio Terminal. |
| 84 | +In order to connect to Azure IoT, please follow steps below : |
| 85 | + |
| 86 | +1. Update the Wi-Fi Firmware |
| 87 | +2. Install Azure IoT Firmware |
| 88 | +3. Boot Wio Terminal into the configuration mode |
| 89 | +4. Configuring Wi-Fi |
| 90 | +5. Reboot Wio Terminal |
| 91 | + |
| 92 | +## 1. Update the Wi-Fi Firmware |
| 93 | + |
| 94 | +Please follow instruction at [Wio Terminal's network overview page](https://wiki.seeedstudio.com/Wio-Terminal-Network-Overview/#update-the-wireless-core-firmware) to update the firmware. |
| 95 | + |
| 96 | +> You must use the version of Wi-Fi firmware specified in Azure IoT Firmware. |
| 97 | +> See [the release page](https://github.com/SeeedJP/wioterminal-iotpnp-device/releases). |
| 98 | +
|
| 99 | +## 2. Install Azure IoT Firmware |
| 100 | + |
| 101 | +1. Download the latest firmware **wioterminal-digital-signage.uf2** from [the release page](https://github.com/SeeedJP/wioterminal-iotpnp-device/releases) |
| 102 | +2. Connect Wio Terminal to your PC |
| 103 | +3. Slide the power switch twice quickly to enter bootloader mode ([Wio Terminal FAQ](https://wiki.seeedstudio.com/Wio-Terminal-Getting-Started/#faq)) |
| 104 | +4. Confirm the Wio Terminal appears as a storage device in your PC as "Arduino" |
| 105 | +5. Copy **wioterminal-digital-signage.uf2** to the **Arduino** drive |
| 106 | + |
| 107 | +## 3. Boot Wio Terminal into the configuration mode |
| 108 | + |
| 109 | +1. Turn on Wio Terminal while holding 3 buttons on the top of the device |
| 110 | +2. Confirm LCD displays `In configuration mode` |
| 111 | + |
| 112 | +## 4. Configuring Wi-Fi |
| 113 | + |
| 114 | +1. Start the serial terminal application and configure the serial port number and baudrate |
| 115 | +2. In the serial terminal application, type `help` |
| 116 | + |
| 117 | + Output example: |
| 118 | + |
| 119 | + ``` |
| 120 | + # help |
| 121 | + Configuration console: |
| 122 | + - help: Help document. |
| 123 | + - reset_factory_settings: Reset factory settings. |
| 124 | + - show_settings: Display settings. |
| 125 | + - set_wifissid: Set Wi-Fi SSID. |
| 126 | + - set_wifipwd: Set Wi-Fi password. |
| 127 | + - set_az_idscope: Set id scope of Azure IoT DPS. |
| 128 | + - set_az_regid: Set registration id of Azure IoT DPS. |
| 129 | + - set_az_symkey: Set symmetric key of Azure IoT DPS. |
| 130 | + - set_az_iotc: Set connection information of Azure IoT Central. |
| 131 | +
|
| 132 | + # |
| 133 | + ``` |
| 134 | +
|
| 135 | +3. Enter Wi-Fi SSID and password with `set_wifissid` and `set_wifipwd` commands |
| 136 | +
|
| 137 | + Output example: |
| 138 | +
|
| 139 | + ``` |
| 140 | + # set_wifissid SSID |
| 141 | + Set Wi-Fi SSID successfully. |
| 142 | +
|
| 143 | + # set_wifipwd PASSWORD |
| 144 | + Set Wi-Fi password successfully. |
| 145 | +
|
| 146 | + # |
| 147 | + ``` |
| 148 | +
|
| 149 | +## 5. Reboot Wio Terminal |
| 150 | +
|
| 151 | +Slide power switch to reset Wio Terminal. |
| 152 | +
|
| 153 | +<a name="ConnecttoAzureIoT"></a> |
| 154 | +# Connect to Azure IoT |
| 155 | +
|
| 156 | +Depending on the authentication you would like to use, configure device authentication using set_az* command in the configuration mode. |
| 157 | +
|
| 158 | +## For Azure IoT Central |
| 159 | +
|
| 160 | +### 1. Booting into the configuration mode |
| 161 | +
|
| 162 | +1. Turn on Wio Terminal while holding 3 buttons on the top of the device |
| 163 | +2. Confirm LCD displays `In configuration mode` |
| 164 | +
|
| 165 | +### 2. Execute set_az_iotc command |
| 166 | +
|
| 167 | +``` |
| 168 | +# set_az_iotc IDSCOPE SYMKEY DEVICEID |
| 169 | +Set connection information of Azure IoT Central successfully. |
| 170 | + |
| 171 | +# |
| 172 | +``` |
| 173 | +
|
| 174 | +<img src="media/1.png" width="800"/> |
| 175 | +
|
| 176 | +### 3. Reboot Wio Terminal |
| 177 | +
|
| 178 | +Slide power switch to reset Wio Terminal. |
| 179 | +
|
| 180 | +## For Azure IoT Hub DPS using individual enrollment |
| 181 | +
|
| 182 | +
|
| 183 | +### 1. Booting into the configuration mode |
| 184 | +
|
| 185 | +1. Turn on Wio Terminal while holding 3 buttons on the top of the device |
| 186 | +2. Confirm LCD displays `In configuration mode` |
| 187 | +
|
| 188 | +### 2. Execute set_az_iotc command |
| 189 | +
|
| 190 | +``` |
| 191 | +# set_az_idscope IDSCOPE |
| 192 | +Set id scope successfully. |
| 193 | + |
| 194 | +# set_az_regid REGID |
| 195 | +Set registration id successfully. |
| 196 | + |
| 197 | +# set_az_symkey SYMKEY |
| 198 | +Set symmetric key successfully. |
| 199 | + |
| 200 | +# |
| 201 | +``` |
| 202 | +
|
| 203 | +### 3. Reboot Wio Terminal |
| 204 | +
|
| 205 | +Slide power switch to reset Wio Terminal. |
| 206 | +
|
| 207 | +<a name="Limitation"></a> |
| 208 | +# Limitation |
| 209 | +
|
| 210 | +* Only monochrome .bmp format images can be displayed. The maximum size is 186 x 186 pixels. |
| 211 | +
|
| 212 | +<a name="AdditionalLinks"></a> |
| 213 | +# Additional Links |
| 214 | +
|
| 215 | +- [Source code (on GitHub)](https://github.com/SeeedJP/wioterminal-iotpnp-device/releases) |
| 216 | +
|
| 217 | +Please refer to the below link for additional information for Plug and Play |
| 218 | +
|
| 219 | +- [Manage cloud device messaging with Azure-IoT-Explorer](https://github.com/Azure/azure-iot-explorer/releases) |
| 220 | +- [Import the Plug and Play model](https://docs.microsoft.com/en-us/azure/iot-pnp/concepts-model-repository) |
| 221 | +- [Configure to connect to IoT Hub](https://docs.microsoft.com/en-us/azure/iot-pnp/quickstart-connect-device-c) |
| 222 | +- [How to use IoT Explorer to interact with the device ](https://docs.microsoft.com/en-us/azure/iot-pnp/howto-use-iot-explorer#install-azure-iot-explorer) |
0 commit comments