日記帳だ! with Tux on Libserver

二度目の大改造!! 日記帳…か?を継承し、より柔軟でパワフルなBlogに変身しました。

RSSに対応しています。リンク・コメント・トラックバックは自由にしていただいてほぼ問題ありません。
RSS購読方法、僕のリンク・コメント・トラックバックについての考えを読むことをおすすめします。

<< 過去

未来 >>

USBの誤接続対策

今日は休暇を取っていた。

思いのほか昨日の帰宅が遅くなったので、休暇にしておいてよかったと思った。


先日、こんな話を書いた。

ルール上、USB Type-Cオス は他の形状のコネクタへの変換ができないので、Type-Cがない機器では使えない

(USB Type-Cにイヤホンをつなぎたい)

これってどういうことかと思った人もいるかもしれない。

USBのコネクタ形状はいろいろルールがあるのだ。


当初のUSBには平べったいA端子と、四角いB端子の2種類があって、

ホスト側(通常はPC)はA端子、デバイス側はB端子を使うということで、誤接続防止をしていた。

なんで同じUSBなのにわざわざ形状を変えてるんだろうと不思議に思っていた人もいると思う。

でも、一方がA端子(オス)、もう一方がB端子(オス)というケーブルしか流通しないようにすれば、

それだけでホスト同士とかデバイス同士を繋がれることは防げる。

まぁ世の中には不届き者もいて、規格外のA端子同士のケーブルも付属品として流通してたりするのだが。


それが少し変わり始めたのが miniB端子、microB端子 の登場である。

単に小さくしただけだと思っていたかも知れないが、実はピンが1つ(IDピン)増えている。

この1ピンはUSB On-The-Go(OTG)という機能に使っていたのだが、

スマートフォン・タブレットのようにデバイスにもホストにもなれる機器のためのものだったと。

従来は、A→B/miniB/microB という繋ぎ方しかあり得なかったが、

OTG対応であれば、miniB/microB→A(メス)に変換して、各種USBデバイスをつなげるようになった。

このような接続を行うケーブルは、ホスト側のminiB/microBのIDピンをGNDと短絡しているそうだ。

なお、厳密にはminiA/microAというのもあるが、あまり使われていなかったそうだ。

microA/B兼用コネクタなんてのもあったように、あえて使い分けるほどの理由はなかったのだろう。

ホストにしかなれない機器でminiA/microAを採用するものが皆無だったというのもあるんだろうが。


そして決定的に変わったのだがType-Cの登場である。

Type-Cはホストとデバイスで同じコネクタを使うようになった。

そんなこともあってUSB Type-CではCCという端子が追加され、これを使って相手を認識する仕組みができた。

Type-C同士のケーブルにはUSB 2.0のみ対応のタイプでもCC端子同士が結線されている。

このCC端子を使った通信で、USB Power Deliveryをコントロールしたりしているわけ。

一方で、相手がUSB Type-Cではない場合は、それなりに区別しなければならない。


なので、変換アダプタ・ケーブル内で、CC端子をプルアップまたはプルダウンしているようだ。

A端子(オス)→Type-C(オス)、microB(メス)→Type-C(オス)のような変換を行うアダプタが、

Type-C側がデバイスになるので、デバイスを表すCC端子プルアップのケーブルを使う。

Type-C(オス)→A端子(メス)のようにType-C側がホストになる場合は、CC端子をプルダウンのケーブルを使う。

このようにType-Cから先のケーブル形状によって、CC端子の処理を変えることで接続の整合性を取っているわけである。


最初に書いた、Type-C(オス) から他の形状に変更できないというのは、

Type-CというのはCC端子を判定しないと、相手がホストかデバイスかわからないので、

少なくともType-Cのメスコネクタを付けている機器は、CC端子の判別ができることという条件を付けているから。

Type-C(オス)の先には、純然たるType-C機器がいるとは限らず、形状変換されたホストがいるかもしれないし、デバイスがいるかもしれない。

それがわからない変換はやってはいけないということである。


こういう都合を考えると、Type-C以外は淘汰されるべきだと思うわけだけど、

やはり歴史的な経緯もあって、PCではA端子が主流で、その状況はなかなか変わるように見えない。

ホスト・デバイス兼用はType-Cになっていると思うが、デバイス側はType-Cが普及してきてるのかな?

でも、この前購入したUSB HDDはUSB 3.0用にmicroB端子だったし、こちらも道半ばですかね。

従来は端子形状だけで回避できるはずだった誤接続が、Type-CになるとCC端子で判別せねばならないというのは1つのハードルかもしれない。


用途を考えるとそれでいいんだけど、USBデバイスから直接Type-C(オス)が出てるってのがイレギュラーだよね。

Type-C(メス)で出していれば、それをType-Cのホストにも、A端子のホストにも接続できたのである。

昔から、USBストレージのように直接A端子のオスになっているようなデバイスはありましたけどね。

ただ、この場合は、必要ならA端子(オス)→A端子(メス)の延長ケーブルが使えたり、

microB(オス・OTG)→A端子(メス)とか、Tupe-C(オス)→A端子(メス)みたいな形状変換と組み合わせられるので全く問題はないのだが。

それと比べると、Type-C(オス)で出す不都合はとても大きいわけだけど、3.5mmミニプラグで接続していたイヤホンの代替という明確な目的がありますから。

だから許されてるんだよってことですよ。


Author : hidemaro
Date : 2019/09/30(Mon) 23:35
コンピュータ・インターネット | Comment | trackback (0)
blog comments powered by Disqus

トラックバック

トラックバックURL取得

Tools