RSS Twitter Facebook

2014/02/02 (2014年02月 のアーカイブ)

MicroAとかBとかUSBコネクタの話

珍しくUSBの話です。買ってきたケーブルが繋がらないとかそういう悲しい事態に遭遇しない限り、普段そんなに気にもしていないし気にしなくてもあまり困る事もないのですが、意外と混沌としているのです。

元々USBはPCと周辺機器を繋ぐI/FでPC側(ホスト)はAプラグ、周辺機器側(デバイス)はBプラグと呼ばれる明確に役割と形状の違うコネクタで接続されるものだったわけです。

機器の小型化が進むにつれ、miniUSBとかmicroUSBというものになって行きました。しかしあくまでもUSBはPCと周辺機器の接続で使うものなのでPC側はA、周辺機器側はBとなっていてそれぞれ miniA、miniB、microA、microBという形状の違うコネクタがあるわけです。まあ周辺機器は小型になってもPC側は普通のPCというケースが多いので「通常のA<=>microB」みたいなケーブルが多くて小型のAタイプを目にする機会はそれほど多くはないし、プラグの形状としてもA/Bがパッと見には判別しにくいというのも話がややこしくなった原因かも知れません。

さて、ここでUSB OTG(On-The-Go)というものが出てきます。周辺機器同士を直接繋いで動作させるというものです。デジカメやプリンタでPCを使わずに直接接続という使い方ももちろんあったのですが、スマホ(とかタブレット)が一気に普及してOTGが日の目を見た感じですかね。スマホはPCと接続した時、PCとのファイルのやり取りなんかができるように周辺機器として動作するわけですが、PCと繋がずにスマホ単体で使っている時にはせっかくUSBが付いているんだからマウスとかUSBメモリとかを使いたい、と。これを実現するのがOTGで、最近のAndroidスマホ(OSバージョンとかによります)は繋いだ相手がPCなら自分は周辺機器、繋いだ相手が周辺機器なら自分がPC側(ホスト)になります。

ここで問題になるのがコネクタの形状で、PC側はA、周辺機器側はBと決めてたのにどうすんだよ。となるわけですが、USBの規格としてはこれもちゃんと考えていて、USB OTG対応でホスト/デバイスのどちらにでもなれる機器はmicroABソケットというmicroA/microBどちらのケーブルも挿入できるソケットを使う事になっています。というかmicroUSBの規格的にはmicroA専用のソケットはなくて、microB専用ソケットかmicroABソケットしか定められていません。そしてケーブル側はmicroAとmicroBが両端についていて、Aが挿された方がホストになる、と。本来のOTGの姿ってこういう感じだったのだと思います。

これで話がすめばよかったのだけど、実はスマホという奴は上で「(OSバージョンとかによります)」と書いたように発売当初はOTGに対応して無かったのだけどOSが頑張って対応しましたっ!というケースが出てきたわけです。しかし、こういう機器はmicroB専用ソケットが搭載されていて、OSがいくら頑張ってもコネクタ形状は変わりませんのでmicroBしか繋がらないけどOTG対応(PC側)という機器になっちゃうわけです。こういうスマホに周辺機器を繋ぐためには両端がBタイプのケーブルとか、microBから普通のAの受け口になっているケーブル(いわゆるOTGケーブルとかホストケーブルとか言われる奴)が必要になります。そしてケーブル関係の方はとにかくmicroBにしておけば繋がらない事はないはずっ、という事でmicroAはほぼ駆逐されてゆく運命に...(業務用機器なんかではまだ結構あるみたいですが)。

実際問題ホストとデバイスが同じコネクタになってしまって何がまずいかというと間違えてホスト同士を繋いでしまうようなケースですかね。壊れないように保護されているならまあ良いかとも思いますが。

こうなってくるとたまにmicroAケーブルが混じっていて「繋がらないじゃないかぁ!」みたいなのが逆に事故な感じがするので、microUSBはもう全部microBって事に統一されてもいいかな、というのが現在の風潮です。ケーブルもものによっては単に「microUSB」とだけ書かれてmicroUSB(B)が売られてたりします。

まあmicroUSBがほとんどBタイプの事を指すようになった今、問題が起こる確率は下がっている気はしますが、絶滅寸前だからこそ、一部に残っているmicroUSB(A)ケーブルとかにたまたま遭遇すると「なんじゃこりゃあ!」と悲しい目に会います。気を付けましょう。

Posted by g200kg : 2014/02/02 08:08:44