A TRRS Cable w/ A OLED Display

最近はわりと快調に使えている、自作キーボード付きトラックボール EdoBall KB-I なんですが、面倒なのでLED等の表示機構を全く付けなかったところ、やはり、レイヤ等の状態の確認に少々不便を感じていました。

f:id:EdoBall:20210920132104j:plain

A TRRS Cable w/ A OLED Display

そんな折、遊舎工房で販売しているOLED DisplayI2Cで制御できると聞き、それなら元々、I2CでPro Micro間の通信をしている自作のKB-I には簡単に追加できるなと思い、このディスプレイ付きケーブルを作ってみました。やってみたら、I2C接続の分離型キーボードなら大概のものに応用できるし、わりと実用的なようなので、作り方を含めて紹介します。ちょっとコツが必要なところもありますが、自作キーボード(キット)を作成し、keymap.cをカスタマイズしたことがある方なら作成できると思います。費用も以下だと千数百円といったところで、手頃です。

 

材料

OLEDディスプレイモジュール(遊舎工房で販売)

https://shop.yushakobo.jp/products/oled

型番等はよく分かりません。コントローラにSSD1306を用いたものなら、Amazonなど、他から入手可能なものでも使えるかも?(自己責任でお願いします。)

 

TRRS(4極)ケーブルな百均イヤホン*2

(私はDAISOのこども用イヤホンを使用しました。TRRSプラグとリッツ線を別に買うより安価で作業が楽です。

f:id:EdoBall:20210920130005j:plain

こども用イヤホン



なお、間違って、最初こっちを買ったのですが、

f:id:EdoBall:20210920130114j:plain

スマートフォンイヤホンマイク

使えなかったので注意!)

 

筐体

私は3Dプリンタでプリントしましたが、アクリル板やプラ板、なんなら厚紙でもOKだと思います。

 

細いハンダ

リッツ線のハンダ付けのハンダは細い方がやりやすいです。

 

必要な工具

自作キーボード組み立てに必要な工具(ニッパー、ハンダゴテなど。)

テスター(クリップがあると楽です。)

 

あった方が良い工具

ワイヤストリッパ

(ニッパーでもいいんですが、こちらを使った方がイヤホンの被覆剥きの失敗が少なくなります。)

 

自動温度調節機能付きのハンダゴテ

(イヤホンに使われているリッツ線のハンダ付けに便利です。)

ホットボンド

 

作業

・まず、イヤホンのケーブルを端子から15〜30cm(お好みの長さ)に切ります。

・ワイヤストリッパを使って、切断端から10-12mmの長さで被覆を除去します。

リッツ線を傷つけないように気をつけてください。

リッツ線の先端部をハンダ付け(予備ハンダ)します。

私は370°Cの高めの温度で作業しました。(リッツ線の皮膜を溶かさないとハンダがのらなため、温度は高め、作業は素早く、の方が良いようです。)

・結線を調べる。

下準備

ここが超重要なところ、間違えやすいところでもあります。

まず、ご自身の分離型キーボードがシリアル接続ではなく、I2C接続されていることをマニュアルやビルドガイド等を参照の上、実機で確認してください。

I2C接続の場合、

https://docs.qmk.fm/#/feature_split_keyboard

にある、下図のように配線されているので、適宜テスター等を使って確認して下さい。

https://user-images.githubusercontent.com/2170248/92297182-92b98580-ef77-11ea-9d7d-d6033914af43.JPG

ケーブルの確認

次に、予備ハンダをしたTRRSケーブルをキーボード本体に繋ぎ、Pro MicroのSDA/(2/PD1), SCL(3/PD0), GND, VCCがそれぞれどの線に接続されているかテスターを使って確認します。

ちなみに、KB-Iのキーボード部はkeebio/Nyquistなので、Nyquistこども用イヤホンの場合は、

赤:GND、銅:VCC、青:SDA、緑:SCL

でした。プラグの端子との関係では、先端からSCL(3、緑)、SDL(2、青)、VCC(銅)、GND(赤)、でした。

このあたり、デファクトスタンダードな結線とかあるんですかね?あれば汎用品が作れるんですが。

f:id:EdoBall:20210920130327j:plain

こども用イヤホンのリッツ線

・調べた結線のとおり、ディスプレイの端子にリッツ線をハンダ付けする。

この時、1組のケーブルのリッツ線は、ディスプレイ側から基板の裏側にとおし、裏側でハンダ付けすると、ディスプレイ面を傷つける可能性が減ります。

温度は高め(私は370°Cにしました。)で、基板とリッツ線を温めて、手早くハンダをあて、リッツ線をなぞるようにハンダゴテを外すと(私は)うまくいきました。

とはいえ、リッツ線のハンダ付けというのは慣れるまでなかなか大変です。初めての方は、別な基板等で練習してからの本番に望むのが良いかも知れません。

もう1組のケーブルは、基板の裏側のハンダ付けした上にさらにハンダ付けします。

・筐体の組み込みと補強。

私は、3Dプリンタで、犬の形をテキトーに作って、ホットボンドで無理やり固定しました(全体的にテキトーで雑w)。この時、ハンダ付け部が断線しやすいので、ホットボンドで補強します。

f:id:EdoBall:20210920130042j:plain

裏側

・ソフトウェアの準備

ソフトウェアは、QMK Firmwareを使っている場合、ドキュメント (https://docs.qmk.fm/#/feature_oled_driver )のサンプルコードを適宜御自身の使っているレイヤーに合わせて変更すれば動くと思います。ただし、QMK Firmwareのバージョンがちょっと古い場合は、

Rules.mk や keymap.c で

OLED_ENABLE

ではなく、

OLED_DRIVER_ENABLE

として下さい。

・完成!

最後にテスターで結線が繋がれているか、ショートしていないかを確認して、TRRSケーブルとして接続します。

f:id:EdoBall:20210920130447j:plain

A TRRS Cable w/ A OLED Display

簡単、とまでは言いませんが、わりと気軽に作れるし、そんなに費用も掛からないので、皆さんもぜひ作ってみて下さい!