2011-06-16 Android の USB Host 初体験

_ XOOM のUSB Host ケーブル

画像の説明

6/22 追記: @hideponm さんにamazon にも XOOM で使える USB Host アダプタが売っているのを教えてもらいまいた。 http://www.amazon.co.jp/gp/product/B0053WHDZK

試行錯誤した結果、 海外版 XOOM で使用可能な USB Hostケーブルを見つけました。 docomo の Optimus Pad の オプション品 の 「microUSB-USB A変換アダプタ L01 [ALG59681]」です。 私は docomo shop で注文しましたが、docomoのオンラインショップでも購入できます(リンク先のページで、メーカーのところから LG、機種のところから Optimus Pad を選択して検索すると出てきます)。秋葉原などでは USB Hostケーブルを取り扱っているお店もあるようですが、docomo なら全国どこでも入手可能なのが大きい。

最初は Galaxy Tab 10.1 用を探していたのですが、こいつは本体側のコネクタが独自のものなので早々に諦め。XOOM なら micro B なのでいけるかと思い tweet してみたところ、@95kugo さんが、一週間くらいであれば海外版 XOOM(Android 3.1) を貸してもいいと言ってくれました。ありがとうくごーさん!

最初は ヨドバシカメラで形が合いそうなものをいろいろ調達してきて試したのですがうまくいきませんでした。 XOOM の本体のUSB端子は micro USB B です。 普通の USB 端子は ピンが4つなのですが、micro USB 端子はピンが5つあります。この5つ目のピン(実際は4番ピンらしい)が、GND と短絡していれば USB Host ケーブルとして XOOM 本体が認識するという仕組みのため形だけ合わせてもうまくいきません。

そこでいろいろ検索していると、 Optimus Pad には純正オプションとして micro B - USB メスのケーブルが存在することのこと。横浜の docomo shop に在庫がなかったので配送をお願いしておいたのが今日届きました。

早速 XOOM にとりつけ、ころがっていた XBOX 360 のコントローラーをさしてみたところ光る! 十字キーでアイコン選択、ボタンで起動ができました。他にもキーボードや ラベルプリンタを試してみたところどれもいけそう!試してわかったのは、 Android が対応しているデバイス(コントローラーやキーボード)では、 USB Host API で device を enumerate してもデバイスが見つからず、ラベルプリンタのように Android が対応していないデバイスのみ検出可能ということです。

Android デバイス上のアプリからラベルプリンタを認識できることまでがわかったので、なんとか印刷まで辿りつければいいなと思います。


«前の日記(2011-06-07) 最新 次の日記(2011-06-19)»