ArdOSC (とArduino DHCP , Bonjour )のデモ

できたてホヤホヤのArdOSCを使ってデモってみました。

そもそも

だれでも簡単に使える (iPhone用) 通信デバイス

実はこのことが自分の中では大きなテーマでして
本来であればZigBeeやBluetoothも視野にいれなくちゃなんですけど
ZigBee自体相手があんましいない。iPhoneにゃ標準で付いてない。もっと汎用なのが好き
Bluetoothも何気に壁が多い(個人レベルで。特にiPhoneだとMfiライセンスの壁が。。)

となると Ethernet(Wi-fi)しか残らなくなっちゃう。
あくまでLAN内前提ですが、どうしても自デバイスのIP設定や、相手側のIP/Port設定がネック。というか面倒くさいなーと思っていたところ
Arduino用 DHCP、Bonjourライブラリというのが公開されてたのでこれがあれば設定すっとばせるので設定面倒な懸念がイッキにクリアになりました。
ちなみにこのライブラリの作者、あのFTIRマルチタッチ用のドライバの作者でもありました・親しみを覚えちゃう。

だがしかーし、
このライブラリはとんでもなく超高校級のコードサイズ
使うだけで、最新Arduinoのプログラム領域の半分くらい使っちゃう
正直、そこまでしてArduinoでカッツカツでやるもんじゃないとは思います。。(特にこだわりはないので)
とはいえ、サックリ使えるのは非常に魅力なので、なんとかこれに軽量なOSCライブラリを組み込んでiPhoneと通信させようと作ったのが
今回の ArdOSC でした

前置きながい

今回のデモの構成(手書きww)はこんな感じです
iPhone <-> Arduino direct OSC(ArdOSC) control

Arduino+Ethernet ShieldはWiFiルーターと有線接続
iPhoneはWifiでルーターへ接続

Arduino、iPhone共にDHCPによりIPを取得しています。(Arduinoは EthernetDHCPを使用)

iPhone側ではOSCサーバを起動、およびBonjourにより iPhone IP , OSCサーバポートをパブリッシュさせています。
実際にはCopyByEar(新ver) 内でOSCサーバ起動、Bonjour Publishを行っています。(“_osc._udp”)

Arduino側では
EthernetDHCPによりArduinoのIPを取得
EthernetBonjourによりiPhoneでBonjour publishされた
iPhone IP,OSCサーバポートを自動で取得しています。
具体的には ”_osc._udp”を探し出し、複数の場合は最初に見つけたデバイスを選択
同一LAN内であることと指定のポート10000(CopyByEar側での決め打ち)であることを条件に接続先を決定します。

ここまでできると、相手IP,ポートがわかるので
あとはOSCメッセージをほいほい送るだけです

デモでは、
電源投入(というかリセットからの復帰ですけど、、)
DHCPでのIP取得(LED 赤)
Bonjourでの相手IP.ポート取得成功(LED 黄)

橙ボタン : CopyByEarの再生/ポーズ
緑ボタン : CopyByEarのボタン1(10秒戻る)トリガ
白ボタン : CopyByEarの マークジャンプ/ループ開始 トリガ

をそれぞれデモってます。

iPhone Arduino OSC(ArdOSC) connect demo from recotana on Vimeo.

Share on Facebook

4 Comments

  1. 返信

    [...] we last covered recotana’s Open Sound Controller (OSC) library for Arduino (ardOSC), he had an Arduino talking to an iPhone using the OSC protocol. The project worked quite well, [...]

  2. 返信

    [...] we last covered recotana’s Open Sound Controller (OSC) library for Arduino (ardOSC), he had an Arduino talking to an iPhone using the OSC protocol. The project worked quite well, [...]

  3. 返信

    [...] MAKE: When we last covered recotana’s Open Sound Controller (OSC) library for Arduino (ardOSC), he had an Arduino talking to an iPhone using the OSC protocol. The project worked quite well, [...]

  4. 返信

    [...] we last covered recotana’s Open Sound Controller (OSC) library for Arduino (ardOSC), he had an Arduino talking to an iPhone using the OSC protocol. The project worked quite well, [...]

コメントを残す

メールアドレスが公開されることはありません。

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>