USB Type-Cケーブルで接続すると動作しないQiワイヤレス充電器の謎を調べてみた

古めのUSB Type-C接続のデバイスの中には、なぜかUSB Type-C ⇔ Type-Cケーブルを使って電源に接続すると動作しないものがあります。


具体的には、リリース直後のM5StickCは、Type-C ⇔ Type-CケーブルでMacに接続すると動作しない問題がありました。
これは現在は改善されており、裏面のブロックダイアグラムに、「RTC」が記載されているロットでは正常に動作します。

他にも、2018年頃に買ったTronsmartのQiワイヤレス充電器(もう入手できない模様)はType-Cコネクタがついているのですが、同じくType-CコネクタのついたACアダプタにType-Cケーブルで接続すると電源が入りませんでした。

どちらも回避方法があり、USB Type-A ⇔ Type-C や Micro-B ケーブルにType-C変換アダプタをつけて接続してやるとなぜか動作します。

f:id:NeoCat:20220108182702j:plain f:id:NeoCat:20220108182714j:plain
USB Type-Cケーブル USB Type-A / Micro-Bケーブル + Type-Cアダプタ*2
動作しない 動作する

一体何が違うのか、USBケーブルチェッカーを使って調べてみました。
BitTradeOne ADUSBCIM USB CABLE CHECKER 2

USBケーブルチェッカーで調べてみた

まずはUSB Type-Cケーブルの方から。

一方USB Type-A ⇔ Micro-Bケーブルの両端にType-Cアダプタをつけてみた場合はこちら。

CCが接続されていることを示すLEDが消灯し、代わりにディスプレイにA側のCCが5.1kΩでプルダウンされ、B側のCCが56kΩでプルアップされていることが表示されています。
(CC1, CC2は上下の違いなので、上下逆に差し込めば逆になります。)

これは変換アダプタに内蔵された抵抗によるものなので、ケーブルなしでアダプタのみチェッカーに接続しても表示されます。

CCピンは、接続を検出したり、USB PD (Power Delivery)や映像伝送などで使われるAlt Modeへの切り替えをネゴシエーションするための通信線です。充電器や単純な機器の場合は抵抗でプルアップ・プルダウンすることで対応することもできます。

A側の5.1kΩプルダウンは、接続の向きを示すために入っているものです。USB Type-Cには上下それぞれにUSB 2.0のD+/D-信号線があるので、この抵抗を使って接続された向きを識別してどちら側を使うかが選択されます。


B側の56kΩプルアップは、給電能力を示すために入っています。表を見ると56kΩはUSB Default Powerで、この場合はUSB2.0接続なので0.5A(3.0なら0.9A)ということになります。


さて、これで違いはCCピンの処理にあることがわかりました。Type-Cケーブルで接続するとうまく動作しない機器は、電源やPCとCCピン同士が接続されてしまうと、通信によるネゴシエーションに失敗してしまってうまく接続できないのだろうと考えられます。アダプタを挟むとCCピン同士が接続されないので、失敗を回避できていたということです。

おまけで別のケーブルのチェック

Macの充電ケーブル。大電流が流せることを示すeMarkerが入ったUSB2.0ですね。

別のType-Cケーブルです。これも充電器は動作しない。USB3.0に対応しているのでTX/RX-1が配線されている。TX/RX-2やサブバンドは繋がっていないのでAlt Modeの映像出力やUSB3.1 Gen1x2などは利用できない。

Full Featuredなケーブルなら全部のLEDがつくはずだけど意外となかった…。

電源をUSB PDトリガー調べてみた

ついでなので、USB Type-C電源の方も、PD検出機能付きのチェッカーで調べてみました。

TC66C Type-C Bluetooth PDトリガーUSB電圧電流計容量計

TC66Cは双方向対応の電圧・電流チェッカーの機能のほか、安価ながらも、電源が対応しているプロトコルを検出したり、それを使って各種電圧を出力させるトリガー機能を持っています(QC, USB-PDの他, SamsungHuaweiのベンダ独自規格に対応。検出時はいろんな電圧が出力されてしまうので絶対に他のデバイスを接続しないようにしましょう)。

対応プロトコルと出力電圧・電流を調べたり(非対応は赤色)、

実際に選択した電圧を出力させたり(この写真だと20V出ていることが確認できます)、

QC3.0を使って0.2V単位で出力電圧を操作できたりします。


ところで、調べているうちに、このチェッカーを通して件のワイヤレス充電器を繋ぐと、どういうわけだかUSB Type-Cケーブルでもちゃんと電源が入って使えることが判明しました。あれれ? ただの電圧・電流チェックモードなので、何かのプロトコルをトリガーしている訳ではありません。それどころか、ちゃんとPDでネゴシエーションが成立して9Vを引き出せている模様*1

何かのインピーダンス整合だか電源ONタイミングだかの不具合が、このチェッカーのCCピン接続のおかげで解消したのでしょうか?
ということで、思わぬところでチェッカーが役に立つことが判明しました(笑)

*1:確かに裏面に9V入力対応と書いてあるけど、今までのアダプタ経由ではCCピンが繋がっていなかったので成功していなかった