USB Type-Cは、パソコンやAndroidスマートフォンの上位機種のほとんどに搭載されているインターフェースだ。USBとして最も新しいインターフェースだが、今後の標準となることが期待されている。
USBはもともと親となるホストと、子となるデバイスをつないで通信する仕様となっている。動作はホスト側が制御し、電力もホスト側が供給する。このときにホスト側をA、デバイス側をBと表し、それぞれのためのインターフェースをType-AまたはType-Bと呼んでいた。形状を変えることで、ホストとデバイスを誤って挿すことを防止した。
Type-AでもType-Bでもない新たなインターフェースとして登場したのがType-Cだ。ホストとデバイスの区別なく、どちらにつないでもよい。ケーブルの両方をType-Cにすることも可能だ。
プラグの向きを電圧で判断
インターフェースには「プラグ」と「レセプタクル」がある。差し込むほうがプラグ、受け止めるほうがレセプタクルだ。
USB Type-Cの特徴の1つは、プラグに裏表がない点だ。USBで使っている他のインターフェースと異なり、プラグのどちらを上にして挿してもよい。
USB Type-Cのインターフェースは上下12本ずつ計24本の端子が配置されている(図4)。プラグのどちらを上にして挿しても通信できるように、ピンの配置は対称になっている。電源供給のためにはGNDとVBUSという2本の端子を使い、それぞれ上下で2ペアずつ用意している。
どちら向きで接続しているかは、接続時にプラグ側のCCがレセプタクルのCC1とCC2のどちらに接続しているかを電圧レベルで測定して判断する。
USB Type-CはUSB 2.0からUSB4までの全バージョンに対応するように設計されている。USB 2.0で相手と通信するときは、D+とD-の2個をデータ転送に使う。一方USB 3.2(Gen1)またはUSB 3.2(Gen2)で相手と通信するときはTX1(またはTX2)とRX1(またはRX2)の+と-の計4個の端子をデータ転送に使う。
USB 3.2(Gen2×2)以降では通信する双方がUSB Type-Cを使うことが必須となる。高速化のためUSB 3.2(Gen1)またはUSB 3.2(Gen2)の2倍の伝送路が必要だからだ。USB 3.2(Gen2×2)ではTX1とTX2およびRX1とRX2の+と-の計8個の端子を使う。データ通信用の端子が4個しかないUSB Type-AやUSB Type-Bでは、USB 3.2(Gen2×2)以上の高速通信には対応できないのだ。
一方、USB 3.2(Gen2)までならUSB Type-Aを使える。このときは相手がUSB 2.0/USB 3.2(Gen1)/USB 3.2(Gen2)のいずれでも問題なく通信できる。USB Type-Aが相手の対応バージョンに合わせて利用する端子を変えるからだ(図5)。