Xamarin と Gadgeteer と SignalR で色を伝えるデモ

f:id:iseebi:20160313102216j:plain

先日のDevelopers Summit 2016 Japan Xamarin User Group コミュニティブースと第3回フェンリルデベロッパーズセミナー セッション「モバイル/クラウド/IoT…C# の新たな活躍の場」でご紹介したデモのソースコードを公開しました。

GitHub - iseebi/ColorWithDevice: Connection demo with Xamarin / .NET Gadgetter / SignalR

どんなデモ?

このような動きをします。

  • Gadgeteer と iOS/Android アプリを Bluetooth で接続します。
  • ジョイスティックの向きに合わせて LED の色が変わります
  • その色を Bluetooth Low Energy で接続された iOS/Android に送られ、画面上に同じ色が表示されます。
  • Gadgetter につながっていないアプリにも、SignalR を通じて同じ色が表示されます。

Gadgeteer

以下のモジュールを使います。

  • メインボード: FEZ Cerberus 1.1
  • Socket 4: Joystick 1.2 (Socket A)
  • Socket 6: Bluetooth SMART (Socket U)
  • Socket 7: LED7C 1.0 (Socket X)

ちょうど昨日気づいたのですが、入手難易度が高かった Bluetooth SMART モジュールが TinyCLR.jp に入荷していることに気づきました。安心してください、技適ありますよ!この機会に是非。

アプリについて

サーバーを動かしている URL を ColorWithDevice の App.cs で指定してください。

BLE の接続部分は Monkey.Robotics を使っています。

サーバー側のデプロイ

Installing ASP.NET 5 On Linux に従ってセットアップした Ubuntu で動きます。

  • ColorWithDevice.Model を先に xbuild でビルドしておく必要があります。
  • DNVM では mono を指定してください。

実行する際は dnx web で実行するとローカルのみ、dnx public で実行すると外部からの接続可で起動します。

感想

思った以上に SignalR 簡単だったので、これを使って何かしたいですね。

あと、結構適当に書いちゃってる部分があるのでちゃんと直したいですね。