Pelion Device Management を使う(導入編)

従来、Mbed Cloudと呼ばれていたArm Mbedのセキュアなデバイス管理サービスは、Pelion Device Management という名称に変更されました。 また、無償で利用可能な評価用のアカウントは誰でも取得できるようになりました。このドキュメントでは、Pelion Device Managementの使い方を紹介します。

Pelion Device Management の概要はこちらをご覧下さい。

https://www.pelion.com/iot-device-management/

準備

  • Mbed開発サイト(os.mbed.com)のアカウント
  • Mbed OS対応デバイス(FRDM-K64Fでの使用例を説明します)
  • micro SDカードとEthernetケーブル

Pelion Portal Account の取得とサービス利用準備

クラウドサービスのアカウントは、評価用として機能制限付きの無償版アカウントが用意されています。 自分のアカウントのコンソールの中にある、Pelion Device Managementから「Learn how to connect」と書かれている黄色のボタンを押します。

|/media/uploads/MACRUM/---------_2019-06-01_15.24.22a.png

画面が切り替わるので、Activate your free access ボタンを押します。 /media/uploads/MACRUM/---------_2019-06-01_15.24.55.png

以下の画面から、Activate Pelion Device Management account ボタンを押します。 /media/uploads/MACRUM/---------_2019-06-01_15.25.36.png

ボタンを押すと以下のようなメッセージが表示されます。 /media/uploads/MACRUM/---------_2019-06-01_15.26.02.png

自分のアカウントのコンソールに以下の項目が表示されていれば、準備完了です。

/media/uploads/MACRUM/1_pelion_ready.png

[portal] ボタンを押して、Pelion Device Management のポータルサイトにアクセスします。 初回アクセス時はライセンス条項への同意が必要になります。

Pelion Device Management サービスをMbed OS 対応デバイスで使用するには、以下の Quick Start の手順に従って設定を行います。

https://os.mbed.com/guides/connect-device-to-pelion/

ここには、各ボード毎に動作確認済みのサンプルコードが用意されています。これらのサンプルをインポートして自分のアカウント用の設定を行うだけで、Pelion Device Managementサービスを簡単に体験することが出来ます。

サンプルプログラムのインポートと設定

FRDM-K64FボードをEthernet接続で使用する手順を説明します。

まず、以下のリンクをクリックして、自分のアカウントにFRDM-K64Fを登録します。

https://os.mbed.com/platforms/FRDM-K64F/add

次に、以下のリンクをクリックして、デバイス側のサンプルコードをインポートします。

https://os.mbed.com/compiler/#import:/teams/NXP/code/pelion-example-frdm/

ブラウザのタブが切り替わり、ダイアログが表示されるので、[Import] ボタンを押してプログラムをインポートします。

https://dl.dropboxusercontent.com/s/7f3bwzbkq6luofx/pdmc-00-import.png

プログラムがインポートされ、プログラムワークスペースにプロジェクトが追加されます。この時、画面右上のプラットフォームが FRDM-K64F になっているのを確認してください。

https://dl.dropboxusercontent.com/s/j66ylxdv36kntr3/pdmc-07-imported.png

次に、開発者用証明書を生成します。メニュー [Pelion Device Management] - [Manage Connect Certificates] を選択します。

https://dl.dropboxusercontent.com/s/n7i14gkl32zlrwa/pdmc-01-connect.png

開発者証明書のリストが表示されます(まだ証明書を作成していないので、空のままです)。[Create] ボタンを押します。

https://dl.dropboxusercontent.com/s/2kdmnmfp1dl6b29/pdmc-02-create-cert.png

作成する証明書の名前を入力し、[OK] ボタンを押します。

https://dl.dropboxusercontent.com/s/hao0muikgcwqfxt/pdmc-03-cert.png

開発者用証明書が生成されました。[OK] ボタンを押すと証明書がプログラムのヘッダファイル(mbed_cloud_dev_credentials.h)にインストールされます。

https://dl.dropboxusercontent.com/s/pet0pz7b6ifnu0m/pdmc-04-created.png

上書きの確認ダイアログが表示されるので、[OK] ボタンを押します。

https://dl.dropboxusercontent.com/s/mh58c60v2h951q7/pdmc-05-cert-confirm.png

FRDM-K64FでEthernet接続の場合は、これでプログラムの準備は終了です。画面上部の [コンパイル] ボタンを押して、プログラムをビルドします。

https://dl.dropboxusercontent.com/s/oirpy185dtm3aof/pdmc-06-compile.png

エラー無くビルドできたら、バイナリファイルがダウンロードされます。

デバイス側の準備

FRDM-K64F に micro SDカードを挿します(容量は、2GB程度で問題ありません)。Ethernet ケーブルをRJ45コネクタに接続します。USBケーブルでホスト側のコンピュータと接続します。写真を参考にしてください。

/media/uploads/MACRUM/usb.jpg

コンピュータと接続すると、USBマスストレージとしてドライブがマウントされます。マウントされたUSBドライブに、先ほどダウンロードしたバイナリファイル(pelion-example-frdm.K64F.bin)をコピーします。コピーが完了すると、ドライブはマウント解除され、再度マウントされます。コピーしたファイルはドライブには残っていませんが、これは正常な動作です。

デバイスからは起動時にログが出力されるので、TeraTermやCoolTermのようなターミナルソフトウェアを使用すると便利です。ホストコンピュータが Windows 7や8の場合は、シリアルドライバのインストールが必要です(Windows 10の場合は不要です)。パラメータは、115200-8N1で接続します。

最後にFRDM-K64Fボードのリセットボタン(USBケーブルを接続したコネクタに一番近い小さいボタン)を押して、プログラムを起動します。ターミナルソフトウェアにログが表示されるのを確認します。

[BOOT] Mbed Bootloader
[BOOT] ARM: 00000000000000000000
[BOOT] OEM: 00000000000000000000
[BOOT] Layout: 0 83A8
[BOOT] Active firmware integrity check:
[BOOT] SHA256: 8018350434DCCF6B415D41C7AFFE0621FCE022B5F963CA8E3DA730FF73F23B57
[BOOT] Version: 1559375802
[BOOT] Slot 0 is empty
[BOOT] Active firmware up-to-date
[BOOT] Application's start address: 0x10400
[BOOT] Application's jump address: 0x112C1
[BOOT] Application's stack address: 0x20030000
[BOOT] Forwarding to application...


Starting Simple Pelion Device Management Client example
You can hold the user button during boot to format the storage and change the device identity.

Sensors configuration:
FXOS8700Q accelerometer = 0xC7
FXOS8700Q magnetometer  = 0xC7

Connecting to the network using the default network interface...
Connected to the network successfully. IP address: 192.168.11.21
Initializing Pelion Device Management Client...
Initialized Pelion Device Management Client. Registering...
Press the user button to increment the LwM2M resource value...
                                                             
FXOS8700Q mag:   -0.118 x,  -0.464 y,  -0.534 z [gauss]        
FXOS8700Q acc:   -0.103 x,   3.843 y,   0.136 z [g]            

Registered to Pelion Device Management. Endpoint Name: 016b13aXXXXXXXXXX
                                                             

ポータルサイトでの確認

ポータルサイトにログインします。メニュー [Device directory(デバイスID)] - [Device(デバイス)] を選択し、デバイスが登録されているのを確認します。
https://portal.mbedcloud.com/devices/list

https://dl.dropboxusercontent.com/s/ns4vw3nvs8xeb6o/pdmc-08-devlist.png

登録されているデバイスをクリックすると、各種情報が表示されます。

https://dl.dropboxusercontent.com/s/0fvqakmrf1b2ztu/pdmc-09-device.png

[Live Resources(リソース)] タブから、[button_count] を表示します。

https://dl.dropboxusercontent.com/s/sgdnjhihzhimh4f/pdmc-10-resource.png

デバイス上の SW2 スイッチを押すと、ボタンカウントがインクリメントされます。

https://dl.dropboxusercontent.com/s/2dsaonz5garmxfr/pdmc-11-btncnt.png

[button_count] をクリックすると、ボタンを押した回数がグラフ化されます。

https://dl.dropboxusercontent.com/s/aimded97egx9enm/pdmc-12-countup.png

その他の情報


4 comments on Pelion Device Management を使う(導入編):

07 Sep 2018

Thank you for registering your interest in Pelion Device Management

と表示されているだけで、 利用できない状態がずっと続いています。 何か問題があるのでしょうか。。

13 Sep 2018

サポートに確認したところ、現在登録上の問題が発生しているとのことでした。 こちらに追加情報がアップデートされると思います。

https://forums.mbed.com/t/about-your-request-to-access-pelion-device-management/3570

18 Nov 2018

現在、GR-LYCHEE用のサンプル(mbed-cloud-example GR-LYCHEE)を使って、PelionDeviceManagementに接続を試みています。PelionDeviceManagementにて新規でAPIを発行して、出力されたak_で始まるAPIキーをmbedコンパイラーの[Manage Connect certificate]でAPIキーを貼り付けしてokを押しているのですが、その後の処理が開始されません。 これはこちら側で何か問題が生じているのでしょうか?

04 Feb 2019

GR-LYCHEE用のサンプルコードは、以下が最新版になっていますので、ご確認ください。

https://os.mbed.com/teams/Renesas/code/pelion-example-common/

Please log in to post comments.