Skip navigation.
ホーム
BLOG-ROMMER 日高のブログ

ブログ

iothub-explorer に代わる素晴らしいもの

先月のことだが、下記の Pull Request が却下された。1か月待たされてからの返事は、Closedだった。

https://github.com/Azure/azure-iot-sdk-c/pull/690

PRの内容は、azure-iot-sdk-ciothub_service_client の samples 以下にある iothub_registrymanager_sample を次のことを実現する様に修正するものだった。

  • iothub_registrymanager_sample のソースコードに、connection string 等のパラメーターを設定するだけで、単体のプログラムとしてビルドして実行可能にする。試せばわかるが、この Sample は「コーディング事例」だけを示すもので、パラメーターを設定だけではプログラムとして意味がある動作をしない。
  • Deprecated 扱いになった、IoTHubRegistryManager_GetDeviceList() の正しい使用法を示す。
  • このサンプルプログラムが、Deprecated になった、iothub-explorer の代替として利用できる様にする。
  • それの README を付加する。

そのそもこのPRを出そうと思いついたのは、全て iothub-explorer が原因である。

どんなデータって何だ?de:code 2018

「どんなデータもAzure IoT Hub に転送」

de:code 2018で私が話したシアターセッションのタイトルである。当然ながら「どんなデータ」って何だ?という疑問が出るであろう。そこでde:code 2018でのセッションを聞かなかった方のために、少しだけ解説する。ポイントは私が去年から何となく考えていた次の3つである。

  • IoTが流行り出して様々なシステム、プロトコルや標準、さらには団体まで出て来ているが、みなどれも難しくしすぎてないだろうか?
  • データをデバイスからクラウドに転送する、あるいは逆方向も同じだが、最も簡単に、勿論セキュアに実現する方法は何だろうか?
  • 世の中様々なデータやバスがあって、それぞれの通信方式があるが、これらを簡単かつ統一的に扱う、あるいは管理するための方法はどの様になるだろうか?

私なりの考えに基づいて実装した事例を紹介したのがこのセッションである。

EnOcean Alliance Event in Luxemburg

5月15日から4日間、ルクセンブルグで開催されたEnOcean Allianceのイベントに参加して来たのでレポートする。
15日と16日は TWG(Technical Working Group) だけのミーティングで、TWGの現在の課題である Remote Comissioning と Self Certificate を中心に議論が進められた。これら TWG の活動成果(公開情報)は、下記の EnOcean Alliance のページにまとめられているので、興味がある方は参照頂きたい。

EnOcean Alliance Event in Luxemburg

続編:Azure 無料アカウント

2018年5月11日に、2017年に書いた記事のコメントとして無料アカウントの記事を全面的に調べ直して書き直したのだが、細かすぎて伝わらないとの指摘もあったので、新項目として書き直す。本体であるPDFのリンク先は、5月11日のコメントと同じままである。

無料の Azure アカウントを今すぐ作成しましょう

いつの間にか、IoTという言葉がごく当たり前のように、あちこちで聞かれるようになった。どうやらこれからの世の中はすごいらしく、事務用品、子供用おもちゃやレジャー用品など、まったく関係無さそうなまでがIoTになるらしい。それはさておきIoTがらみのセミナーや実習でいつも問題になるのが、学習で使うクラウドのアカウントをどうやって開設するかという事だ。弊社の場合は業務上の関係でMicrosoft Azureを実習で利用することが多いのだが、相変わらず2年前と同じように無料の評価用アカウントの取得が学習の障害になっている。

今さら聞けないVisual Studio 2015 Update3の入手とインストール

Windows 10 IoT Coreがリリースされて約2年が立った、前身の Windows on Devices for Windows 8 の一般公開から約3年である。その間の開発環境やインストール方法の変化の変遷はいろいろあったが、ここ最近は結構安定してきたと思う。インストール手順は現時点では、このGalileo時代と全く同じWindows on Devices のURL
(実態は https://developer.microsoft.com/ja-jp/windows/iot へのリンク)にアクセスして「Get started」をクリックすれば基本的に誰でも簡単に開発環境が構築できるはずである。素晴らしい時代になった。

LLILUM SDK公開

LLILUM(リリューム)はMicrosoft社の.NET Micro Framework (NETMF)開発チームが2015年に開発を始めた、新しいオープンソースの組込みシステム開発環境である。

簡単に説明するとC#のコードをWindows上にインストールしたVisual Studioでコンパイルしてmbedの各種ボードで動作するbin形式バイナリを開発する。ILをインタプリタ実行するNETMFとは異なる。ビルド完了後、F5押下でbin形式マシン語コードをローカルマシンに接続したUSB経由でターゲットボードのmbedポートに直接送り込み、C#ソースコードデバッグを開始できる。

EnOcean Alliance Japan イベント

11月2日に、EnOcean Alliance Japan Eventが千葉県柏市 柏の葉であったので、簡単に紹介する。
EnOcean AllianceはWorld Wideでは2008年にEnOcean製品を製造・販売するメーカーを中心に、一部ユーザーも含んで設立された。日本支部は2011年秋に設立された直後から、国内では毎年2回のペースでイベントを開催しているので今回で11回目である。

Windows 10 の Ubuntu Linux 環境機能

Windows 10 Anniversary Update (RS1)「Red Stone 1」のリリースが目前になって来た。ここでは以前から気になっていた、Windows 10 の Ubuntu Linux 環境機能をInsider Preview版で実際に使ってみたので簡単に解説する。

Ubuntu Linux 環境機能と書いたのは、実際に使ってみた結果Windowsカーネルを含めてUbuntu 14.04.4 LTSがほぼそのままWindows 10に入ることを確認したからだ。先の Build 2016 やその後のアナウンスでは「Bash」などと紹介されているが、実体はそんな単純なものではない。Windows 10でひとたびBashを起動したならば、UbuntuのユーザーランドがGUIと/dev/以下以外はほぼ全て追加される。そしてシームレスに既存のWindows環境と同居する。VMやコンテナの様な隔離はない。

Windows 10 デバイスドライバーの署名

最近、各方面からWindows 10ドライバの署名に関する問い合わせが多い。最新の状況を調べてみた結果、各所で記述されている説明は頻繁に更新されていて、しかもわかり難い。実際の動作も非常に不可解な状態であることを確認した。すでにWindows 10の新しい署名要件は開始されているので、SPC署名されているドライバであっても次の様に署名が認識されない場合がある。

現時点の状況をなるべく分かり易くまとめると次の通りである。

サードパーティーが開発したWindows 10用のカーネルモードのドライバには「原則として」Microsoftによる署名が必要
このMicrosoftによる署名を取得する方法は次の2種類

  • HLKによる署名
  • HLKテストをパスして、その結果をダッシュボードに提出。(従来のロゴテストによる署名と同様。古くはWHQLとも。)

  • Windows 10 Desktop Attestation Signing(日本語:Windows 10 デスクトップの構成証明署名)
  • 申請者がEV証明書による署名で身元を証明した後、署名が欲しいドライバをダッシュボードに提出。従来のSPC署名に相当するが、Windows 8.1以前やWindows Serverでは動作しない点が異なる。

「原則として」の例外については、現時点で不明確な点がある
そのためHLKまたはWindows 10 Desktop Attestation Signingのどちらかとなる。今後出荷されるWindows Server 2016での動作も目指すのであれば、HLKしか無い。

コンテンツ配信