【コラム】

塩田紳二のアンドロイドなう

12 AndroidのUSBホスト機能

塩田紳二  [2012/08/23]

12/117

編集部注: 本稿は、2012年7月27日にAndorid情報のWeb専門誌「AndroWire」に掲載した記事を再構成したものです。

一部のアンドロイドスマートフォンやタブレットでは、USBマウスやキーボードが接続できるものがある。しかし、この機能は誤解も多い。というのは、アンドロイド自体がこうした機能をサポートしていても、ハードウェアが対応していなければ利用できず、ハードウェアを対応させるかどうかはメーカーの判断次第で、キーボードやマウスの接続ができないハードウェアも存在するからだ。

USBでは、制御を行う側を「ホスト」、利用される側を「デバイス」という。パソコンは「ホスト」であり、接続されるUBSメモリやWebカメラ、キーボード、マウスなどが「デバイス」である。一般にスマートフォンやタブレットなどのUSBでキーボードなどの「デバイス」を接続するためには、「USBホスト」機能が必要になる。

通常は、ホストとデバイスの役割は固定しているが、モバイルデバイスに限り、ホスト機能とクライアント機能を切り替えて動作できる「On-The-Go」(OTG)という機能がある。一部のアンドロイドスマートフォンやタブレットは、このOTGに対応している。ただし、On-The-Goでアンドロイド側をホストとして動作させるためには、「ホストケーブル」と呼ばれる特殊なケーブルが必要になる(写真01)。逆に言うとOTG機能を装備するスマートフォンやタブレットは、通常はデバイスとして動作し、ホストケーブルを接続したときだけ、ホストとして動作するということだ。

写真01: 汎用のUSBホストケーブル。OTG側に接続するマイクロUSBプラグはA型で、周囲が四角くなっているもの。普通のマイクロUSBプラグはB型で台形になっている

話をまとめると、アンドロイドにUSBデバイスを接続して使うには以下の3つの条件を満たす必要がある。

  1. アンドロイド機自体がOn-The-Go(またはホスト)機能を持っていること
  2. そのアンドロイド機用のホストケーブルを使うこと(通常のUSBケーブルではホストにはなれない)
  3. アンドロイド機に、USBデバイスに対応したデバイスドライバが組み込まれていること

なお、目安としてアンドロイドがUSBホストをサポートしたのは、Android 2.3.4以上(Gingerbreadの後期バージョン)または3.1(Honycomb)以上である。つまり、これ以降のアンドロイドが組み込まれているマシンならばUSBホスト機能が使える可能性がある。

なお、ややこしいことにAndroid 3.1および2.3.4以上では、「USB Accessory」という機能が利用できる。これは、On-The-Go機能を持たないアンドロイド機に「USB Accessory」デバイスを接続する機能だ。このときの接続にもUSBコネクタを使う。

この機能は、接続される機器側がUSBホストとなるため、USBホストになることができないアンドロイド機でも利用できる。ただし、現状、USB Accessoryデバイスは市販されていないようだし(開発用のキットはある)、普及するとしてもこれからなのでとりあえず、今回は、忘れておいて欲しい。

OTGとホストケーブル

アンドロイドスマートフォンやタブレットにUSBホストになることができるOTGがあるかどうかを確実に見分ける方法はなく、基本的には、機器の取説やメーカーの機器ホームページを見るか、メーカーに問い合わせるしか方法がない。

アンドロイドの場合、初期の頃の機種にミニUSBを使ったものがあったが、大半の機種は、マイクロUSBコネクタである。OTGがある場合、規格上は、このマイクロUSBレセプタクルはAB型となる(写真02)。しかし、アンドロイドの中には、B型のマイクロUSBレセプタクルを持ちながら、OTGによりホストになれる機種も存在する(たとえばモトローラのXOOMなど)。

逆に、規格からいえば、マイクロUSBのAB型コネクタを装備しているアンドロイドスマートフォンなどは、USBホストとして動作が可能である可能性が高い。たとえば、Xperia ray には、マイクロUSBのABレセプタクルが使われており、ホストケーブルを使えば、USBホストとして動作するため、キーボードやマウスを接続できる。

写真02: Xperia rayのUSBコネクタ。これは、マイクロUSBのAB型と呼ばれるレセプタクル(コネクタ)で、A型またはB型プラグのどちらもさすことができる。B型をさすとOTG対応機器はデバイスとして動作し、A型のホストケーブルをさすとホストとして動作する

次のポイントであるホストケーブルだが、OTGでは、このケーブルの配線で、USBホストとUSBデバイス機能を切り替えている。つまり、通常のUSBケーブルが接続されれば、アンドロイド機はUSBデバイスとして動作し、ホストケーブルが接続されれば、USBホストとして動作するのである。なお、アンドロイド側がAB型レセプタクルであれば、汎用の「ホストケーブル」が利用できる可能性が高い。ホストケーブルの配線は規格で決まっているため、サードパーティが製造可能なのである。

一般にホストケーブルは、機器側がプラグ(オス)、もう一方がレセプタクル(メス)になっているが、単なる、オスメス変換コネクタでは、ホストケーブルになることはできない。一方がマイクロBプラグで、反対側が通常のAレセプタクルといったケーブルも世の中には存在しているが、これは、通常AプラグをマイクロBプラグに変換するものなので、これでホスト機能を使うことはできない。

デバイスドライバはあるか?

最後の問題として、接続されるUSBデバイスに対応するデバイスドライバソフトウェアがアンドロイド機に組み込まれている必要がある。アンドロイドの場合、あとからデバイスドライバを組み込むことは原則できない。

USBホスト機能がアンドロイドとして正式にサポートされたのは、Anroid 3.1から。当時は、タブレット向けのHonycombとスマートフォン向けのGingerbreadが並行して開発されていたため、あとからAnroid 2.3.4でも対応が行われた。OTGがあって、Anroid 3.1以上であれば、USBマウス、キーボードなどが使える可能性が高い。ただし、どのデバイスドライバが入っているのかは、メーカー次第である。マウスやキーボードに対応したHIDドライバは入っている機器が多いが、USBメモリに対応したマスストレージデバイスのドライバが入っているかどうかはメーカーによって違う。たとえば、前述のXperia(Android 2.3.4)の場合、マスストレージデバイスのドライバは組み込まれていない。

おそらくタブレットで、Android 3.0のままというハードウェアは少ないはずなので、可能性としては多くのタブレットで利用できるはずだが、前述のようにメーカーによっては、ハードウェアがOTGに対応していないことがある。筆者の手元にあるものでは、Acerのタブレット「ICONIA TAB A200」が対応していなかった。

USBホストが利用できると、スマートフォンでも本格的なキーボードなどが利用できる。さらにHDMI出力などがあれば、テレビに画面を表示させることも可能。ちょっとした作業ぐらいならこなせるようになる。また、Android 4.1では、USBオーディオがサポートされたようだ。PCなどに比べるとまだ限定された使い方しかできないが、アンドロイドもバージョンを追うごとに機能は充実してきているようだ。ベースはLinuxでもあり、潜在的には利用できるデバイスも少ないわけでもない。現状、ドライバを簡単にインストールできる環境にないが、バージョンが進むと共に接続できるデバイスも増えていくだろう。

12/117

インデックス

連載目次
第117回 「Android N」プレビュー その1
第116回 「ZenWatch 2」の充電動作を調べて見た
第115回 Android Wearのバッテリ関連機能を検証してみる
第114回 Android Wearを再評価してみる
第113回 Nexus 7をカーナビにしてみた(その3)
第112回 Nexus 7をカーナビにしてみた(その2)
第111回 Nexus 7をカーナビにしてみた(その1)
第110回 画面キャプチャに便利なシステムUI調整ツール
第109回 2016年の注目はタブレット
第108回 「Nexus 5X」と「USB Type-C」
第107回 「Nexus 5X」と「LTE」
第106回 Android 6.0 ストアとアプリ
第105回 Nexus 5XでみるAndroid 6.0 Marshmallow
第104回 「Nexus 5X」を買いました
第103回 「Android Mのプレビュー3」を試す(前編)
第102回 Android M プレビュー2 (準備編)
第101回 「LG G Watch」のその後
第100回 「Zenefone 2」買いました
第99回 ちいさくてかわいい「LG L20」、イギリスで買ってみました
第98回 「Google日本語入力」アップデートで何が変わった?
第97回 どのアプリで開く? 「インテント」の仕組み
第96回 「OneNote」をつかってみた
第95回 ロリポップのマテリアルデザインをまとめてみる
第94回 「Email Markup」って何?
第93回 Outlookは来たけれど
第92回 Office Previewつかってみた
第91回 Google INBOXを使ってみる
第90回 AndroidWareの文字盤を自作する
第89回 Android Ware Lollipop版
第88回 「Nexus Player」を試す - ソフトウェア編
第87回 「Nexus Player」を試す - ハードウェア編
第86回 「Nexus 9」ファーストインプレッション - ソフトウェア(Lollipop)編
第85回 「Nexus 9」ファーストインプレッション - ハードウェア編
第84回 充電しながらUSBデバイスが使えるホストケーブル
第83回 Android "L"プレビューとAndroidWareがアップデート
第82回 ちょっとイケてる「Kyocera Hydro Vibe」
第81回 Android "L" バッテリ消費を監視する
第80回 アクセスポイントの基本を知る
第79回 OneDriveとGoogleドライブ
第78回 シェルのネットワーク関連コマンド
第77回 "L"の中身
第76回 アンドロイドウェア(Android Wear)は暫定バージョン?
第75回 LGのスマートウォッチ「G Watch」
第74回 "L"がくる
第73回 次は「Lollipop」か? その前にKitKatが4.4.3に
第72回 VPNを使う その3 「VPNをアンドロイドから使う」
第71回 「Chromecast」とは?
第70回 VPNを使う その2 「VPNサーバーを立てる」
第69回 VPNを使う その1 「基礎編」
第68回 アンドロイドのストレージ
第67回 「NVIDA SHIELD」のソフトウェア
第66回 「NVIDA SHIELD」のハードウェア
第65回 HDMIとMHL、SlimPort - ディスプレイ接続端子を整理してみる
第64回 「LG L1 II」を買ってみた
第63回 アンドロイドに音楽を「聞かせる」
第62回 住所録の秘密
第61回 Outlook.comをカレンダーに表示する
第60回 ソースコードはどこにある?
第59回 AndroidのBluetoothテザリングとWindows 8.1
第58回 NFCでマニュアル参照を簡単に
第57回 あらためて「ポータブルアクセスポイント」をきちんと試してみる
第56回 「ビルド番号」ってなに?
第55回 画面キャプチャをバッチファイルで実行
第54回 adbコマンドをちょっと解説
第53回 「android 4.4 "Kit Kat"」で画面を録画する
第52回 「android 4.4 "Kit Kat"」の内部的な変更点
第51回 「android 4.4 "Kit Kat"」を解説
第50回 「Nexus 5」を買ってみた
第49回 Google Keepはリマインダーだった
第48回 android 4.2からサポートされた「ワイヤレスディスプレイ」
第47回 画面キャプチャー
第46回 ヘッドセットの秘密
第45回 Nexus 7のLTEモデル
第44回 Nexus 4買いました。アメリカで。
第43回 ブートローダーとfastboot
第42回 Jelly Beans 4.3 Returns
第41回 Chromecast、テレビに刺さる
第40回 デバイスマネージャでAndroidの位置を確認
第39回 新しいNexus 7を買ってみた
第38回 Jelly Beans 4.3
第37回 レノボ「K900」を国際版化
第36回 NFCで遊ぶ
第35回 自宅で簡単ファイル転送
第34回 レノボ「K900」のカスタマイズされたJelly Beansを見てみる
第33回 CloverTrail+のスマートフォン、レノボ「K900」を買ってみた
第32回 AndroidがBluetooth 4.0を正式サポート
第31回 ARMの次世代CPU「Cortex-A12」
第30回 SDKをインストールしよう
第29回 ウィジェットを活用
第28回 QRコードでお手軽設定
第27回 XPERIA Tipoとロンドンアンロック屋事情
第26回 diNovoキーボードを使う
第25回 キーボードをカスタマイズする
第24回 Androidキーボードのしくみ
第23回 2段階認証を使おう
第22回 いらないプリインストールアプリを削除
第21回 64bitなんて必要なのかしら?
第20回 アメリカでアンドロイドの読書端末を買ってみた
第19回 Android 4.2の新機能
第18回 Android Beamって何だ?
第17回 NFCで何ができる?
第16回 Nexus 7をアメリカで買ってみた
第15回 AndroidをPCにつなぐと
第14回 Androidの記憶領域
第13回 Google Nowを使ってみる
第12回 AndroidのUSBホスト機能
第11回 デュアルSIMを使ってみる
第10回 キーボード一体縦型Androidマシン
第9回 Androidの言語設定
第8回 アンドロイドに道を聞く
第7回 Google Playはどうやってアプリの公開を制御しているのか?
第6回 「Acer A100」がICSになった
第5回 つながっているのはACアダプタ、それともUSB端子
第4回 スマートフォンを普通の電話としてつかってみた
第3回 Androidからの通知を表示可能な腕時計
第2回 アームを誤解してませんか?
第1回 MWCで見たAndroid

もっと見る

特別企画 PR

人気記事

一覧

新着記事

父の告白を聞いた有森也実は…『ファミリーヒストリー』
[05:15 5/26] エンタメ
[刑事7人]東山紀之主演の刑事ドラマが1年ぶり復活 7月から第2シリーズ放送へ
[05:00 5/26] エンタメ
東山紀之、『刑事7人』第2シリーズで要望「高いプロ意識で生きる男たちを」
[05:00 5/26] エンタメ
清野菜名×ディーン・フジオカのドラマ「はぴまり」原作イメージのビジュアル
[04:00 5/26] ホビー
[トリンドル玲奈]「カフェオーレ」新CMでくつろぎの表情
[04:00 5/26] エンタメ

特別企画 PR