MACからでもデバイス登録可能だよ。IoTHub-Explorer紹介

テストや実証実験目的で、Azure IoT Hubにデバイスを追加したりセンサーデータをモニタリングしたりデバイスにコマンドを送ったりするのに、Device Explorerというツールが用意されています。このツールは、https://github.com/Azure/azure-iot-sdks/releases に記載のリンク、SetupDeviceExplorer.msi をクリックしてダウンロード&インストール可能です。このツール、超便利…なのですが、Windows PCにしかインストールできません。

私はMACなんだよね…って方。大丈夫です。コマンドラインUIなので、ちょっと使いにくいですが、Node.js上で動く、iothub-explorerというツールが別途公開されているので、それを使えば、MACだけでなく、LINUX等でも、IoT Hubへのデバイス登録や送信データのモニタリングができます。

まず、https://nodejs.org/en/download/current/ から、Node.jsの環境をダウンロードしてインストールしてください。インストールが終わったらNode.jsのシェルを立ち上げて、https://github.com/Azure/azure-iot-sdks/tree/master/tools/iothub-explorer に記載に従って、以下を実行します。

npm install -g iothub-explorer

このコマンドでiothub-explorerに関する必要ファイルがインストールされます。インストールが終わったら、同じシェル上で

iothub-explorer login [connection string]

を実行します。”[connection string]”の部分は、https://portal.azure.comで作成したIoT Hubの共有アクセスポリシーのiothubownerの接続文字列に置き換えます。

HostName=IoTHubName.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=Base64EncodingString

こんな感じの文字列です。管理ポータルのコピーボタン(紙が二枚重なっている感じのアイコン)でコピー可能です。

次に

iothub-explorer create [deviceId]

を実行すると、IoT Hubに指定したデバイスIDが登録され、接続に必要なセキュリティ文字列が表示されます。

複数登録されたデバイスの一覧を表示したい場合は、

iothub-explorer list

を実行すると、既に登録されたデバイスIDの一覧と、それぞれのセキュリティ文字列が表示されます。この情報を使って、デバイス側のIoT Hubへの接続・送信アプリを完成することができます。

IoT Hubの作成等、基本的な手順は、https://aka.ms/IoTKitHoLV3On のStep2を参照してくださいね。