こんにちは、Seeedの坪井です。
最近、個人的にUSB-Cの自作キーボードの基板を買ったのですが、これをUSB-CのiPad Proに両端がUSB-Cのケーブルで接続すると認識させられないということがありました。試しにType−CとType−Aのケーブルを使って接続すれば認識をします。これは終端抵抗が付いていないUSBデバイスにありがちな挙動です。
これまではUSBのホスト側とデバイス側では、Type-AとType-Bといった具合に異なる形状のコネクタが採用されていました。しかし、Type-Cはホストもデバイスも同じコネクタですので、コネクタそのものではホストなのかデバイスなのか区別が付きません。Type-CにはConfiguration Channel (CC)という信号線があり、コネクタの方向によってCC1とCC2いずれかのピンを使います。デバイス側のコネクタは、UFP (Upstream Facing Port)、つまり上流に向き合うポートと呼ばれます。このUFPは、CC1ピンと CC2ピンの両方をそれぞれRdプルダウン抵抗を介してGNDに接続することと決まっています。5V 1.5Aあるいは3AのUSB-C供給電源を使う場合、このRdプルダウン抵抗の値は5.1 kΩ ± 10%です。
さて、この買ってきたキーボードの基板を見ると、5.1kΩらしき抵抗は見当たりません。ですので、5.1kΩの抵抗器をCC1とCC2ピンに取り付けることにします。個人的に買ったキーボードですので自宅で作業していたのですが、家にあるパーツを探すと5.1 kΩ ± 1% 1/4Wの抵抗の袋が出てきました。1/4Wですのでリード線が少々太いのが気になりますが、仮説をすぐに検証したいのでこれをはんだづけすることにします。
取り付ける端子は、知っている中国製のType-Cレセプタクルと外形が同じだったので、そのデータシートを当たって調べました。
どうやら、左から3つめのPADと、右から4つめのPADがそれぞれCC2とCC1の様です。Type-Cレセプタクルのピンに抵抗器の片方のリード線をはんだづけし、もう一方のリード線を近くにあったGNDのスルーホールにはんだづけしてRd抵抗の取り付けを完了しました。
家のフラックスは何かの用でオフィスに持って行ってしまっていたので、はんだのぬれが悪いのはご愛敬です。拡大鏡で目的のピンに正しくはんだづけされていることと、他のピンにショートしていないことを目視検査して完成しました。ちょっとドキドキしながら、iPad ProとキーボードをUSB-C - USB-Cケーブルで接続してみます。すると、前回はキーボードのLEDが光りませんでしたが、今回は点灯しました!また、キーボードとして無事にキー入力もできました。
こうして、私の自作キーボードは、USB-C - USB-Cケーブルで使うことのできるキーボードにすることができました。
後日談
出張で行った先のすぐ近くにマルツさんの店舗があったので、フラックスと1/4W 5.1kΩの金皮の抵抗器を買ってきて付け直しました。
おまけ
ここまで書いて、そういえば、「こんなことを書いてUSB-Cコネクタの付いたSeeeduino NanoにRd抵抗が付いていなかったらどうしよう!?」と思って確認してみました。しっかり、Seeeduino NanoにはRd抵抗が付いていますので、USB-C - USB-Cケーブルでも使うことができそうですね。(この記事は家で書いているので、現物での確認はできていません…)
変更履歴
日付 | 変更者 | 変更内容 |
---|---|---|
2019/11/30 | ytsuboi | 作成 |
2019/12/07 | ytsuboi | 後日談を追記 |