SDKを使ったサンプルです。ターゲットデバイスは、​GR-SAKURAで、Ethernet上のHTTPかMQTTで通信します。MQTTは、mbedTLS版でのみ確認できています。​GR-PEACH版は​こちらを参照してください。サンプルを動作させるには、下記の手順でAzure側にデバイスを追加し、そのデバイスの接続文字列を取得し、ソースコード「app_iothub_client/src/client.c」の以下の個所を書き換える必要があります。string]";ダウンロードGR-SAKURAのソースコードはWolfSSL版が​こちらで、mbedTLS版が​こちらにあります。Archive」をクリックすると、zipファイルでダウンロードできます。開発環境ビルドはGCC+Makefileで行います。RX向けGCCは​こちらから入手できます。studioV7.4.0を使用しました。Rubyの実行環境が必要なので、​​こちらからダウンロードして、コマンドプロントから実行できるよう、環境変数でパスを通してください。V7.4.0のプロジェクトファイルも含まれているので、展開したフォルダをワークスペースとして開き、プロジェクトのインポートをこのフォルダに対して行うことで、取り込むことができます。License標準CライブラリGCC付属の標準Cライブラリnewlibではなく、muslを使用しています。付属のnewlibでは、dirent.hやsocket.hがないので、curlやviのコンパイルに向いていません。Linux向けのmuslを使用することで、POSIX向けのソースコードのコンパイルが難無く行えます。未実装のAPIがあるとリンクエラーになります。このソフトでは、ntshell/srcにコードがありますが、サンプルを動作させる最小限の実装を行っています。ついて本サンプルの作成には以下のドキュメントを参考にしました。エディション」を使用しました。​https://azure.microsoft.com/ja-jp/pricing/details/iot-hub/開発手順ワークスペースの読み込みタウンロードしたファイルを、適当なフォルダに展開します。この説明では「E:\e2studio\azure_iot_hub」に展開します。パス名にスペースや漢字などを含むと問題になることがあります。英数字とアンダーバーのみのフォルダ名で構成されたパス名にします。e2studioを起動し、ワークスペースの場所に展開したフォルダを指定します。「ようこそ」ページを閉じます。メニューから「ファイル」→「インポート」を選択します。「一般」の中にある「既存プロジェクトをワーク・スペースへ」を選択し、「次へ」ボタンを押します。「プロジェクトのインポート」画面が表示されます。「ルート・ディレクトリの選択」にソースを展開したフォルダを入力します。「参照」ボタンを押して、そのまま「OK」ボタンを押せば入力されます。インポートが成功すると下記のように、「プロジェクト・マネージャ」にプロジェクトが表示されます。ビルドメニューから「プロジェクト」→「すべてビルド」を選択すると、ビルドが開始されます。ビルドが終了すると、「プロジェクト・マネージャ」の「app_iothub_client」の下に「バイナリー」の項目が追加されます。デバッグ​E1エミュレータを使ったデバッグの説明をします。Serial変換ケーブルなどでGR-SAKURAと接続し、TeraTermでシリアルポートに接続します。ポーレートは「115,200bps」です。「プロジェクト・マネージャ」の「app_iothub_client」の「バイナリー」の下に「app_iothub_client.elf」があるので、それを右クリックします。出てきたメニューから「デバッグ」→「デバッグの構成」を選択します。Debugging」で右クリックし、「新規」を選択します。アプリケーション」が「Debug\app_iothub_client.elf」になっていることを確認します。Device」にGR-SAKURAのCPU「R5F63NB」を選択します。現在販売されているのはGR-SAKURA2で、CPUは「R5F563NYD」です。RAMが256KByteとGR-SAKURAの倍になっています。Settings」タブでは、「EXTAL周波数」を「12.0000」に、「エミュレーターから電源を供給する」と「いいえ」変更します。そのほかの画面には変更はありません。#startup下にある「デバッグ」ボタンを押すと、プログラムのロードが始まり、「パースペクティブ切り替えの確認」画面が表示されますので、「はい」を押します。プログラムのロードが終わると「start.S」ファイルで停止しています。「デバッグ構成」画面の「Startup」タブのスクロールして下にある「再開」チェックボックスにチェックを入れると、停止せず実行されるようになります。実行するとTeraTermの画面に以下のように表示が出ます。「Enter」キーを入力すると、プロンプト「NTShell」が表示されます。試しに「Help」+「Enter」を入力すると、コマンド一覧が表示されます。DHCPサーバーからIPアドレスの取得を待ちます。証明書の検証には実際の時刻が必要なので、NTPで時刻同期するまで待ちます。Hubへメッセージを5つ送信します。送られたメッセージを確認するには、上記サイトの「​ハブから利用統計情報を読み取る」の手順で行います。Hubの操作や設定、メッセージの確認方法など、詳しく教えて頂きました。ありがとうございました。athttp://trac.edgewall.org/。