Difference between revisions of "Pdmc"

From ESS-WIKI
Jump to: navigation, search
 
(5 intermediate revisions by the same user not shown)
Line 8: Line 8:
 
:Before a device connected to Pelion Device Management, the user need an Mbed account. please refer to the below link to sign up<br/>
 
:Before a device connected to Pelion Device Management, the user need an Mbed account. please refer to the below link to sign up<br/>
  
::
+
::*An Mbed account - [https://os.mbed.com/account/login/ "sign up if you don't have one."]
*An Mbed account - [https://os.mbed.com/account/login/ "sign up if you don't have one."]
 
  
::
+
::*Access to Pelion Device Management - [https://console.mbed.com/cloud-registration "request access here"]
*Access to Pelion Device Management - [https://console.mbed.com/cloud-registration "request access here"]
 
  
  
Line 19: Line 17:
 
:Please click [https://portal.mbedcloud.com/identity/certificates "link to create certificate"] and follow the below steps to create a new one.
 
:Please click [https://portal.mbedcloud.com/identity/certificates "link to create certificate"] and follow the below steps to create a new one.
  
::
+
::*Click the "New certificate"
*Click the "New certificate"
 
  
 
[[File:Wise1570 pdmc 07.png|center|900px|Wise1570 pdmc 07.png]]
 
[[File:Wise1570 pdmc 07.png|center|900px|Wise1570 pdmc 07.png]]
Line 26: Line 23:
  
  
::
+
::*Click the "Create a developer certificate" in pop-up window
*Click the "Create a developer certificate" in pop-up window
 
  
 
[[File:Wise1570 pdmc 08.png|center|400px|Wise1570 pdmc 08.png]]
 
[[File:Wise1570 pdmc 08.png|center|400px|Wise1570 pdmc 08.png]]
Line 33: Line 29:
  
  
::
+
::*Give a name of your certificate and click "Create certificate"
*Give a name of your certificate
 
  
 
[[File:Wise1570 pdmc 09.png|center|900px|Wise1570 pdmc 09.png]]
 
[[File:Wise1570 pdmc 09.png|center|900px|Wise1570 pdmc 09.png]]
Line 40: Line 35:
  
  
::
+
::*Click the "Download Developer C file" to download the certificate and get the file "mbed_cloud_dev_credentials.c"
*Click the "Download Developer C file" to download the certificate
 
  
 
[[File:Wise1570 pdmc 10.png|center|900px|Wise1570 pdmc 10.png]]
 
[[File:Wise1570 pdmc 10.png|center|900px|Wise1570 pdmc 10.png]]
 
 
 
::
 
*Replace the file "mbed_cloud_dev_credentials.c" to your source tree before the process of build the hex file in Step03
 
  
  
Line 57: Line 46:
  
  
:'''Step04:''' Flash programming by DAPLINK using WISE-DB-1505<br/>
+
:'''Step04:''' Flash programming by DAPLink on WISE-DB-1505<br/>
 
:Check device connected to PC using micro-USB cable and use drag-and-drop programming with your hex file.<br/>
 
:Check device connected to PC using micro-USB cable and use drag-and-drop programming with your hex file.<br/>
  
  
  
:'''Step05:''' Access sensor data in Pelion Device Management Portal"
+
:'''Step05:''' Access sensor data in Pelion Device Management Portal
::
+
::*Open browser and go to [https://portal.mbedcloud.com/devices "Device Management Portal's Device Directory page."]. The user will see the list of devices.
*Open browser and go to [https://portal.mbedcloud.com/devices "Device Management Portal's Device Directory page."]. The user will see the list of devices.
 
  
 
[[File:Wise1570 pdmc 02.png|center|900px|Wise1570 pdmc 02.png]]
 
[[File:Wise1570 pdmc 02.png|center|900px|Wise1570 pdmc 02.png]]
Line 70: Line 58:
  
  
::
+
::*Click the device ID and select the "RESOURCES" tab to view the device's exposed LwM2M resources.
*Click the device ID and select the "RESOURCE" tab to view the device's exposed LwM2M resources.
 
  
 
[[File:Wise1570 pdmc 03.png|center|900px|Wise1570 pdmc 03.png]]
 
[[File:Wise1570 pdmc 03.png|center|900px|Wise1570 pdmc 03.png]]
Line 77: Line 64:
  
  
::
+
::*Scroll down to locate the resource temperature or humidity.
*Scroll down to locate the resource temperature or humidity.
 
  
 
[[File:Wise1570 pdmc 04.png|center|900px|Wise1570 pdmc 04.png]]
 
[[File:Wise1570 pdmc 04.png|center|900px|Wise1570 pdmc 04.png]]
Line 84: Line 70:
  
  
::
+
::*Click "temperature - Sensor Value" or "humidity - Sensor Value" to open the graph and observe the sensor's data changed.
*Click "temperature - Sensor Value" or "humidity - Sensor Value" to open the graph and observe the sensor's data changed.
 
  
 
[[File:Wise1570 pdmc 05.png|center|800px|Wise1570 pdmc 05.png]]
 
[[File:Wise1570 pdmc 05.png|center|800px|Wise1570 pdmc 05.png]]
Line 95: Line 80:
 
=== OTA with PDMC ===
 
=== OTA with PDMC ===
 
<div style="margin-left:0.847cm;margin-right:0cm;">
 
<div style="margin-left:0.847cm;margin-right:0cm;">
The “Over the Air” (OTA) is method for software update. For PDMC, we use the manifest tool to demonstrate how it works. Please follow the below steps to give it a try.
+
The “Over the Air” (OTA) is method for firmware update. For PDMC, we need to prepare two firmwares, one is programmed into WISE-1570 and anthoer is hosted in your PC, and use the manifest tool to demonstrate how it works. Please follow the below steps to give it a try.
  
  
Line 101: Line 86:
 
:'''Step01:''' Create an API key on Pelion Device Management Portal<br/>
 
:'''Step01:''' Create an API key on Pelion Device Management Portal<br/>
  
:
+
:*Click the "New API key"
*Click the "New API key"
 
  
 
[[File:Wise1570 ota 01.png|center|900px|Wise1570 ota 01.png]]
 
[[File:Wise1570 ota 01.png|center|900px|Wise1570 ota 01.png]]
Line 108: Line 92:
  
  
:
+
:*Give a "API key name" and select the "Developers" group
*Give a "API key name" and select the "Developers" group
 
  
 
[[File:Wise1570 ota 02.png|center|400px|Wise1570 ota 02.png]]
 
[[File:Wise1570 ota 02.png|center|400px|Wise1570 ota 02.png]]
Line 115: Line 98:
  
  
:
+
:*Copy the API key and API host, then save it in your PC
*Copy the API key and API host, then save it in your PC
+
::<span style="color:red">Please note that the key is only available once, so please be sure to copy it.</span>
::Please note that the key is only available once, so please be sure to copy it.
 
  
 
[[File:Wise1570 ota 03.png|center|400px|Wise1570 ota 03.png]]
 
[[File:Wise1570 ota 03.png|center|400px|Wise1570 ota 03.png]]
Line 126: Line 108:
 
:The manifest tool is compatible both with Python 2.7.11 and later and with Python 3.5.1 and later.<br/>
 
:The manifest tool is compatible both with Python 2.7.11 and later and with Python 3.5.1 and later.<br/>
  
:
+
:*Option1: install from PyPi with pip
*Option1: install from PyPi with pip
 
  
 
:<pre>$ pip install manifest-tool</pre>
 
:<pre>$ pip install manifest-tool</pre>
  
:
+
:*Option2: install from GitHub over HTTPS.
*Option2: install from GitHub over HTTPS.
 
  
 
:<pre>$ pip install git+https://github.com/ARMmbed/manifest-tool.git</pre>
 
:<pre>$ pip install git+https://github.com/ARMmbed/manifest-tool.git</pre>
Line 140: Line 120:
 
:'''Step03:''' Create a new project<br/>
 
:'''Step03:''' Create a new project<br/>
  
:
+
:*Initialize by manifest-tool.
*Initialize by manifest-tool.
 
 
:<pre>$ manifest-tool init -d "<company domain name>" -m "<product model identifier>" -a "<Device Management API Key>" -S "<Device Management Alternative API address>"</pre>
 
:<pre>$ manifest-tool init -d "<company domain name>" -m "<product model identifier>" -a "<Device Management API Key>" -S "<Device Management Alternative API address>"</pre>
  
:
+
:*Example:
*Example:
 
 
:<pre>$  manifest-tool init -d "www.advantech.com" -m "wise-1570" -a "ak_1MDE1N2ZmZTA5ZGEzMDAaMjBhM12wZjBkMDAwMD87MDA016a00d388945e0274c21077000000004bkctykMAhnUTAQssYpFmNLRJhHS2PxR" -S "https://api.us-east-1.mbedcloud.com"</pre>
 
:<pre>$  manifest-tool init -d "www.advantech.com" -m "wise-1570" -a "ak_1MDE1N2ZmZTA5ZGEzMDAaMjBhM12wZjBkMDAwMD87MDA016a00d388945e0274c21077000000004bkctykMAhnUTAQssYpFmNLRJhHS2PxR" -S "https://api.us-east-1.mbedcloud.com"</pre>
  
:
+
:*Fill in the information.
*Fill in the information.
 
  
 
[[File:Wise1570 ota 04.png|center|800px|Wise1570 ota 04.png]]
 
[[File:Wise1570 ota 04.png|center|800px|Wise1570 ota 04.png]]
  
:
+
:*Output files
*Output files
 
  
 
[[File:Wise1570 ota 05.png|center|550px|Wise1570 ota 05.png]]
 
[[File:Wise1570 ota 05.png|center|550px|Wise1570 ota 05.png]]
Line 160: Line 136:
  
  
:'''Step04:''' Add certificate into source tree and rebuild the PDMC
+
:'''Step04:''' Add certificate into source tree and rebuild the PDMC<br/>
:*Please replace the file "update_default_resources.c" generated by manifest tool into your source tree.
+
:*Please replace the file "update_default_resources.c" generated by manifest tool into your source tree.<br/>
 
:*Build out the hex file and it will be "source_dir/BUILD/WISE_1570/GCC_ARM/WISE-1570-Pelion-Device.hex"
 
:*Build out the hex file and it will be "source_dir/BUILD/WISE_1570/GCC_ARM/WISE-1570-Pelion-Device.hex"
  
  
  
:'''Step05:''' Flash programming by DAPLINK using WISE-DB-1505<br/>
+
:'''Step05:''' Flash programming by DAPLink on WISE-DB-1505<br/>
 
:Check device connected to PC using micro-USB cable and use drag-and-drop programming with your hex file.<br/>
 
:Check device connected to PC using micro-USB cable and use drag-and-drop programming with your hex file.<br/>
  
  
  
:'''Step06:''' Build the new PDMC that has "OTA" string displayed on console
+
:'''Step06:''' Build the new PDMC that has "OTA" string displayed on console<br/>
:*Comment out the macro "OTA_TEST" in main.cpp and rebuild the PDMC.
+
:*Comment out the macro "OTA_TEST" in main.cpp and rebuild the PDMC.<br/>
 
:*The output binary will be "source_dir/BUILD/MTB_ADV_WISE_1570/GCC_ARM/WISE-1570-Pelion-Device_update.bin
 
:*The output binary will be "source_dir/BUILD/MTB_ADV_WISE_1570/GCC_ARM/WISE-1570-Pelion-Device_update.bin
  
Line 178: Line 154:
  
 
:'''Step07:''' Launch OTA<br/>
 
:'''Step07:''' Launch OTA<br/>
 +
:*Launch OTA by mainfest tool (PC):
 
:<pre>$ manifest-tool update device -p <payload> -D <device ID></pre>
 
:<pre>$ manifest-tool update device -p <payload> -D <device ID></pre>
  
:
+
:*Example:
*Example:
+
:<pre>$ manifest-tool update device -p WISE-1570-Pelion-Device_update.bin -D 016a533470bb000000000001001003ca</pre>
:<pre>$ manifest-tool update device -p WISE-1570-Pelion-Device_update.bin -D 016a04f2a8ec000000000001001000f2</pre>
+
 
 +
:*You will see the state keep on publishing (PC)<br/>
 +
 
 +
[[File:Wise1570 ota 06.png|center|550px|Wise1570 ota 06.png]]
 +
 
 +
:*Get request on endpoint (Device)<br/>
 +
 
 +
[[File:Wise1570 ota 07.png|center|550px|Wise1570 ota 07.png]]
 +
 
 +
:*Download in progress (Device)<br/>
 +
 
 +
[[File:Wise1570 ota 08.png|center|550px|Wise1570 ota 08.png]]
 +
 
 +
:*Check integrity with the firmware image (Device)<br/>
 +
 
 +
[[File:Wise1570 ota 09.png|center|550px|Wise1570 ota 09.png]]
 +
 
 +
:*You will see "OTA" string on console after reboot (Device)<br/>
 +
 
 +
[[File:Wise1570 ota 10.png|center|550px|Wise1570 ota 10.png]]
  
  
 
</div>
 
</div>

Latest revision as of 10:46, 6 May 2019

ARM Pelion

Pelion Device Management Client Example

This example is demonstrate how to connect to Pelion Device Management. Please follow the below steps to give it a try.

Step01: Prepare an Mbed account
Before a device connected to Pelion Device Management, the user need an Mbed account. please refer to the below link to sign up


Step02: Create developer certificate.
Please click "link to create certificate" and follow the below steps to create a new one.
  • Click the "New certificate"
Wise1570 pdmc 07.png


  • Click the "Create a developer certificate" in pop-up window
Wise1570 pdmc 08.png


  • Give a name of your certificate and click "Create certificate"
Wise1570 pdmc 09.png


  • Click the "Download Developer C file" to download the certificate and get the file "mbed_cloud_dev_credentials.c"
Wise1570 pdmc 10.png


Step03: Get source code and compile it by mbed CLI.
Please click "Link to source" and review the file "README.md" to know how to deployment and compilation with this example. The output hex file will be "source_dir/BUILD/WISE_1570/GCC_ARM/WISE-1570-Pelion-Device.hex"


Step04: Flash programming by DAPLink on WISE-DB-1505
Check device connected to PC using micro-USB cable and use drag-and-drop programming with your hex file.


Step05: Access sensor data in Pelion Device Management Portal
Wise1570 pdmc 02.png


  • Click the device ID and select the "RESOURCES" tab to view the device's exposed LwM2M resources.
Wise1570 pdmc 03.png


  • Scroll down to locate the resource temperature or humidity.
Wise1570 pdmc 04.png


  • Click "temperature - Sensor Value" or "humidity - Sensor Value" to open the graph and observe the sensor's data changed.
Wise1570 pdmc 05.png



OTA with PDMC

The “Over the Air” (OTA) is method for firmware update. For PDMC, we need to prepare two firmwares, one is programmed into WISE-1570 and anthoer is hosted in your PC, and use the manifest tool to demonstrate how it works. Please follow the below steps to give it a try.


Step01: Create an API key on Pelion Device Management Portal
  • Click the "New API key"
Wise1570 ota 01.png


  • Give a "API key name" and select the "Developers" group
Wise1570 ota 02.png


  • Copy the API key and API host, then save it in your PC
Please note that the key is only available once, so please be sure to copy it.
Wise1570 ota 03.png


Step02: Install manifest tool
The manifest tool is compatible both with Python 2.7.11 and later and with Python 3.5.1 and later.
  • Option1: install from PyPi with pip
$ pip install manifest-tool
  • Option2: install from GitHub over HTTPS.
$ pip install git+https://github.com/ARMmbed/manifest-tool.git


Step03: Create a new project
  • Initialize by manifest-tool.
$ manifest-tool init -d "<company domain name>" -m "<product model identifier>" -a "<Device Management API Key>" -S "<Device Management Alternative API address>"
  • Example:
$  manifest-tool init -d "www.advantech.com" -m "wise-1570" -a "ak_1MDE1N2ZmZTA5ZGEzMDAaMjBhM12wZjBkMDAwMD87MDA016a00d388945e0274c21077000000004bkctykMAhnUTAQssYpFmNLRJhHS2PxR" -S "https://api.us-east-1.mbedcloud.com"
  • Fill in the information.
Wise1570 ota 04.png
  • Output files
Wise1570 ota 05.png


Step04: Add certificate into source tree and rebuild the PDMC
  • Please replace the file "update_default_resources.c" generated by manifest tool into your source tree.
  • Build out the hex file and it will be "source_dir/BUILD/WISE_1570/GCC_ARM/WISE-1570-Pelion-Device.hex"


Step05: Flash programming by DAPLink on WISE-DB-1505
Check device connected to PC using micro-USB cable and use drag-and-drop programming with your hex file.


Step06: Build the new PDMC that has "OTA" string displayed on console
  • Comment out the macro "OTA_TEST" in main.cpp and rebuild the PDMC.
  • The output binary will be "source_dir/BUILD/MTB_ADV_WISE_1570/GCC_ARM/WISE-1570-Pelion-Device_update.bin


Step07: Launch OTA
  • Launch OTA by mainfest tool (PC):
$ manifest-tool update device -p <payload> -D <device ID>
  • Example:
$ manifest-tool update device -p WISE-1570-Pelion-Device_update.bin -D 016a533470bb000000000001001003ca
  • You will see the state keep on publishing (PC)
Wise1570 ota 06.png
  • Get request on endpoint (Device)
Wise1570 ota 07.png
  • Download in progress (Device)
Wise1570 ota 08.png
  • Check integrity with the firmware image (Device)
Wise1570 ota 09.png
  • You will see "OTA" string on console after reboot (Device)
Wise1570 ota 10.png