Windows Phone 10 から Windows Remote Arduino を利用する

Windows Remote Arduino を利用して Arduino 戦車を動かす | Moonmile Solutions Blog
http://www.moonmile.net/blog/archives/7168

先日の続きで、Windows Phone 10 のユニバーサルアプリで Windows Remote Arduino を使います。UI は、Windows ストアアプリで作ったものをそのまま流用します。Windows 10 上の Visual Studio 2015 RC ならば、そのまま XAML デザイナが動くのですが、手元の PC では Windows 8.1 上に VS2015RC を入れているのでデザイナが動きません…が、基本的なところは 8.1 の XAML と同じなのでそのままコピーして使えます。

ms-iot/remote-wiring の Microsoft.Maker.win10 のほうをコピーして使います。

image

Package.appxmanifest ファイルに、bluetooth.rfcomm の記述を追加しておきます。

 

 
  <Capabilities>
    <Capability Name="internetClient" />
    <DeviceCapability Name="bluetooth.rfcomm">
      <Device Id="any">
        <Function Type="name:serialPort" />
      </Device>
    </DeviceCapability>
  </Capabilities>

 

8.1 のときと違って、m2: のプレフィックスが要りません。これを、ARM でビルドして、Windows Phone 10 に送り込みます。手元では Lumia 1520 で確認しています。

https://pbs.twimg.com/media/CFTG3JGUIAA-SJe.jpg

あらかじめ、Bluetooth とのペアリングをしておく必要があるのは Windows ストアアプリのときと同じです。初回起動時のみ接続先の Bluetooth を使うかどうかのダイアログが表示されます。

コードは、Windows Remote Arduino を利用して Arduino 戦車を動かす | Moonmile Solutions Blog のものと全く同じなので省略。ユニバーサルアプリで作ったので、そのままデスクトップの Windows 10 でも動くはずです(動作は確認していませんが)。そんなわけで、ひとまず、Windows ストアアプリと Windows Phone アプリから動作したので完了。

これを C# 版にして、Xamarin.Android で動くようにすれば、Android から Firmata を使って Arduino を操作することも可能になりますね…と、まずは C++ から C# への移植作業をしないといけないのですが、それはまた後日。

カテゴリー: Arduino, Win IoT, Windows Phone パーマリンク