YAMAGUCHI::weblog

海水パンツとゴーグルで、巨万の富を築きました。カリブの怪物、フリーアルバイター瞳です。

foobarのアンダーグローLEDの実装を左右対称に行ってみた

はじめに

こんにちは、Google Cloud Operations担当者です。Stackdriverという名前がドキュメントや変数名として出てきたら、歴史的経緯によるものだと理解してください。

最近このブログではキーボードの話しか書いてないので、仕事をしてないんじゃないかと思われていないか心配です。ちゃんとやってますよ。

さて先日foobarを作った後にアンダーグロー化しました。

ymotongpoo.hatenablog.com

このときは本家の実装にならって、メインのProMicroですべてのLEDを制御し、反対側はTRRSケーブルを通じてLEDの制御信号を送るように左右非対称の実装をしていました。(下の写真は本家より転載)

f:id:ymotongpoo:20200906213913j:plain

それにともなって、QMKの設定も RGBLIGHT_SPLITRGBLED_SPLIT といったマクロの定義をしないなど、左右非対称であるがゆえの注意などもありました。しかし他のキーボード(たとえばHelix)では左右対称にLEDを実装していて、LEDの左右での同期はQMKで行っていたので、同じ理屈でfoobarも左右対称に実装してQMKで制御するようにしたらいいのではないか、と思ったのでやってみました。

実装した

というわけで、ちょうど積みキーボードになっていたもう1組のfoobarがあったのでそちらであらたに左右対称にLEDテープを実装しました。*1

f:id:ymotongpoo:20200906222111j:plain

前回作成したfoobarでの実装も比較のために貼っておきます。

f:id:ymotongpoo:20200829112245j:plain

前回の実装は左手側はProMicroからGND、VCC、DINの3本に加えてDOUTからTRRSへの1本の計4本の配線と、右手側がProMicroからGNDとVCCの2本に加えてTRRSからDINへの1本の計3本という配線であるのに対して、今回の実装は左右ともにProMicroからGND、VCC、DINの3本の配線となっています。TRRSジャックにつながる配線はありません。

QMKの変更

上の実装の場合は前回使わなかった左右分離式キーボードでのLEDの制御に関する RGBLED_SPLITRGBLIGHT_SPLIT のそれぞれのマクロを定義してビルドします。といっても前回からの差分は config.h

#define RGBLED_SPLIT {5, 5}
#define RGBLIGHT_SPLIT

としただけです。

動かしてみた

www.youtube.com

ちゃんと期待通り動きました。これで左右対称に実装した場合にもQMKで対応できることが確認できました。

参考

ymotongpoo.hatenablog.com

www.40percent.club

*1:正確には左右対称ではないけれど、両方同様にProMicroから3本配線したという意味でそう書いています