2012年8月8日水曜日
Arduino with USB BT ドングル
ついにこの日がやってきました。
待ちに待った、USB Bluetooth ドングルを Arduino で使うライブラリが登場しました。
必要なものは
・Arduino (Uno など)
・USB Host Shield 2.0 (相当)
・USB BT ドングル (対応機種不明)
(Planex BT-Micro EDR1X、Buffalo BSHSBD03、で動作確認)
です。
使用ソフトウェアは
Arduino IDE 1.0.1 + USB Host Shield Library 2.0 です。
UHS ライブラリに、最近のアップデートで「RFCOMM」というサンプルが追加されました。
詳しくは、Circuits@Home の記事 を確認して下さい。
基本的にはライブラリをインストールして、サンプルを実行するだけです。
この RFCOMM というサンプルは Android のBT 通信でよく使われるSPP 通信に対応しています。上の写真は S2 BT Terminal です。
Android 側から送った文字は Arduino のシリアルポートに出力されます(もちろん逆方向も)。
Harpy でも試してみました。
このHarpy は USB Host Shield 2.0 相当に改造してあります。
(改造の詳細は Harpy のメーリングリストなどに情報があります。)
USB のVbas を3.3V から取る様に改造しているめか、Planex ドングルは使えたものの、Buffalo ドングルは使用で来ませんでした。
また、シリアル通信で文字化けするので、115200bps →19200bps に速度を落としました。
とりあえず通信ができただけですが、待望のBT ドングル通信に感動しています。
待ち切れなくてPIC に走ったり、いろいろ手を出しましたが、、、
やっぱりArduino が 好きです。
※USB Host Shield 2.0 に関して
Sparkfun の USB Host Shield や、Harpy nano の回路は Circuits@Home の古い USB Host Shield が元になっています。
Sparkfun のシールドを、ライブラリ2.0 に対応させるには、一部改造する必要があります。こちらの記事を参考にして下さい。
本家 Circuits@Home のシールドは代理店がないので、個人輸入するしかないのですが、Amazon でUHS 2.0 相当のシールドが売られている様です。(コピー商品のようですが、、、)
登録:
コメントの投稿 (Atom)
はじめまして。TKAと申します。
返信削除ArduinoとAndroidのBTドングルを使った通信を
試している者です。
このサイトに倣い、以下の条件で行いましたがAndroid側のBTターミナルで接続をしようとすると「unable to connect」となってしまい通信ができません。考えられる原因があればご教授いただきたく思います。
Android端末:IS05 (android 2.3.4)
Arduino: Arduino UNO
USB host shield : sparkfun製(改造済み)
BTドングル:PLANEX BTMICROEDR1XZ
BTターミナル:S2 Bluetooth Terminal3
arduinoにコンパイルしたプログラム:circuits@homeに載っている「hello from arduino」を表示するもの
何卒、よろしくお願いいたしますm(_ _)m