海月玲二
2020-06-03(水)

無題

というわけで自作キーボードだ.Setta21と同じひとが作っている,Naked48LEDというキットを組みたててみた.

俺のPCスペースは狭いので,コンパクトなキーボードがほしかったのである.ただこの手の40%キーボードはふつうの市販品もないことはないので,せっかく自作キーボードに手を出すのだから市販品にはない直交配列を試してみることにした.あとこのキットを選んだ理由としては,「自作キーボードはどうも左右分離型が多くて,一体型はそもそも選択肢がせまい」というのがわりと大きい.できれば持ち運び用にも使えたらいいなと思い,薄型スイッチで一体型を探してみたら,片手で数えられるぐらいしか見当たらなかったのだ.

それからやっぱり自作キット系は,ファームウェアで機能を好きにいじれるのがグッドだと思う.ついに「もともとdvorak配列」というキーボードを手に入れることができたのだ.dvorakを使い始めて10年近く経ってるな.OSがわでキーマップをいじる必要がないので,スマートフォンにつないだときなんかもそのまま使えてよい.そういや,最近「親指シフトキーボードがついに生産中止」というニュースを見たけど,自作すればなんとでもなりそうだ.……調べてみたら実際そういうの作ってる人もいるようだな.

ところでLEDには予想通り苦労させられた.まず 物理的に半田付けがたいへんなので,何個か失敗してやりなおしだ.しばらく失敗したことに気付かず,「なんかファームウェアをどう書いてもLEDの色とか光りかたがおかしいな〜」と悩んだパターンまであった.

さらにファームウェアの設定もなんだかよくわからない.LEDを制御する
APIが"RGB LIGHT"系と"RGB MATRIX"系とふたつあり,どっちを使うべきなのかわからない.どうも「本来LEDは一次元的に通し番号で指定するのだが,MATRIX系のAPIを使うと縦横の位置で指定できる」ということのようだが,この認識で正しいんだろうか.

よくわからないが,とりあえず「MATRIX系のほうにはレイヤー変更に応じて光らせるような機能がなさそう」という理由でLIGHT系を使っている.まあこのLIGHT系のほうにある機能も,なんか「事前に決めておいたLEDを決めておいた色にまとめて光らせる」みたいなのを自前で発動する感じなので,いうほど便利ではないかもしれない.最初はもっと便利に使えるのかと思ってたので,無駄に悩んでしまった.しょせんC言語にそんなインテリジェントな仕組みなど求めるほうがアレか.