koktoh の雑記帳

気ままに書いていきます

【開発者向け】 TRRS ジャックの配線ってどうすればいいの?

はじめに

左右分割キーボードを設計するときに、左右間の通信に多く採用されているのが TRRS ケーブル(およびジャック)です
しかし、 TRRS ジャックへの配線については、あまり知識が共有されず、感覚的 / 経験的に行われているような気がします

この記事では、私が「どのような考え方のもと、どう配線しているか」をまとめました

なお、一個人の考えなので、「絶対にこの配線にしろ」と強制したり、「この配線以外はクソ」とか言うつもりはないので、考え方の一種、参考程度に捉えてください

結論

さっさと実際の配線を示してしまいましょう

理由とかを読むのが面倒なら、とりあえずこの配線を真似するだけでいいです

I2CSDA / SCL は入れ替えてもいいです

TRRS とは?

左右分割キーボードで使われる TRRS ケーブル / ジャックは、「Φ3.5mm 4極オーディオケーブル / プラグ / ジャック」とか呼ばれていると思います

左が一般的な「Φ3.5mm 3極オーディオプラグ(TRS プラグ)」、右が TRRS プラグです
端子(極)が1つ増えてますね

つまり、 TRS では3本、 TRRS では4本の信号線が繋がっているということです

世の中には極数がもっと多いものもあります(昔買った Walkman に付いてたノイズキャンセリング付きイヤホンは5極とかだった気がする)

配線の理由

では、最初に示した配線について、その理由を説明しましょう

電源系とデータ系をどう割り振るか

QMK では、左右間通信に電源系(VCC, GND)とデータ系(DATASDA, SCL)で3線か4線での接続が必要です
この3線、4線の割り振りを TRRS プラグ / ジャックの構造から考えていきます

一部省略していますが、 TRRS ジャックのピンはこんな風になっています

シンボルのラベルと各ピンの対応は以下です

シンボルのラベル ピンの色
A 黄色
B
C 水色
D マゼンタ

本来は、ピン A は挿入口の入口付近まで端子が伸びていて、プラグの根元の端子と接触します(モデルでは省略)

ここに TRRS プラグを挿入するとこうなります(手前側のピン A は省略)

プラグとジャックの端子が正しく接触しています(省略された手前側で A とプラグの黄色の端子が接触している)

では、間違えて TRS プラグを挿入するとどうなるでしょう

ピン AB が、プラグの同じ端子と接触してショートしてしまいます
つまり、ピン AB にそれぞれ VCC, GND を割り当てていた場合、 MCU を破壊してしまう可能性があります

逆に、左右間通信に3線で行う Serial を使っていた場合、ピン C を通信線にして、 B を未接続にしておけば TRS ケーブルでも使える可能性が生まれます

このことから、電源系は一番端の A, D に接続し、データ系は C, BC を優先)に接続するようにしています

電源系をどう割り振るか

VCCGNDAD のどちらに接続するか」

これは好みのような気がしますが、個人的な見解から、 AGNDDVCC を接続するようにしています

この世に存在するすべての TRRS プラグを確認したわけではありませんが、根元の端子がそのままプラグ全体と一体化しているプラグが見受けられます

図のように、全体が黄色の端子という状態です

この場合、「VCC を露出させるよりも GND が露出している状態の方が好ましいのではないか」という考えで、プラグの根元に接触する AGND としています
電子回路のセオリーとしてどちらであるべきなのかは調べていないので、異論はありそうですが……(場合によるので一概に言えないとかもありそう)

活線挿抜と TR(R)S の問題点

TR(R)S を使用する左右分割キーボードで話題になるのが「活線挿抜」です

活線挿抜とは、「通電している状態でケーブルを抜き挿しすること」です

基本的に、左右分割キーボードで TR(R)S ケーブルの活線挿抜は避けるべき です

TR(R)S は、端子が直列に並んでいるという構造上、「挿入中に容易にショートし得る」という問題点があります
図はプラグ挿入中の例ですが、プラグの紫の端子を通して BC がショートしています(逆に、ジャックの端子によってプラグの端子同士がショートする場合もある)
もしこのピンが VCCGND に繋がっていて、なおかつ通電状態だった場合、 MCU を破壊してしまう可能性があります

私の配線方法であればそのような可能性は低いかもしれませんが、「活線挿抜に絶対的な耐性がある」と言い切る自信はありません

安心して活線挿抜をしたいならば、 USB のように、端子が並列に並んでいるものを採用するべきでしょう

おわりに

以上、 TRRS ジャックの配線について、個人的な考察に基づく根拠とともに説明しました

冒頭でも述べたように、個人的な意見なので、「絶対この配線にしろ」と強弁するつもりはありません

ただ、設計の際に「こういう考え方もあるのか」と参考にしてもらえれば幸いです