当初は、この記事は実質Rubyのキーボード(PRK Firmware)で書いて、
「実質Rubyのキーボードは最高だよ。みんなも作ろうぜ!」的なことを書く予定だった…
そして、ブログ に掲載する予定だったけど、当日push したらbuild failureで移動までに解決できなかった…
(12/28追記 解決しました)
この記事は、PRK Firmware Advent Calendar 2021 18日目の記事です。
昨日は、 @e3w2q さんの「PRK Firmwareのドキュメントを充実させる方法」でし た。ドキュメントが充実されると嬉しいです!!!
RubyKaigi Takeout 2021 で、日本酒をRubyで醸せるようにした @hasumikin さんが、今度はRubyでキーボードも動かせるようにしたという発表があったの で、さっそくmeishi2 を組み立てたところ、動かすことができました。 (自分でコンパイルしようとして詰まったけど、バイナリそのままおいたら簡単にできました)
meishiの次は普段使うキーボードをRubyにしてみようということで、Zinc(家用)とNomu30(旅行用)を作ってみるこ>とにしました。
ビルドガイドを見ながら、組み立てます。 初めて組み立てる時は、他の人が組み立てた時のブログも参考になると思います。(記録大事!)
ここまでできれば、keymap.rb
の作成して、LEDがつくかの確認をしていきます。
@takkanm さんがZinc rev1のkeymap.rbを公開してくれています。
でも、今回は参考程度にして、自分で keymap.rb
を書いてみたいっ!!!
他のキーボードのkeymap.rbや、@takkanm さんの prk_keymap_generator 、3日目の @e3w2q さんのPRK Firmwareでの設計メモを参考にゴ>ニョゴニョしたものがこちらです。
keymap.rb
でLEDが設定できて光った時は嬉しかった!!!
のですが、最初の1個しかつかなかった…
2個めのLEDのはんだが、きちんとついてなかったのが原因でした。
LEDが全て光ったら、LEDの確認は完了です。
ケーブル繋いで動作確認して、ケースを組み立てれば!!!! というところで、スペーサーを入れ忘れていることに気 づいたので、キースイッチを一度全部外さねばならない…
後編に続く!!!
Nomu30もビルドガイドを見ながら、組み立てます。
QMK Firmware の設定をもとに、まずはdefalt layerだけでも…と作り始めたところ、
MATRIX_ROW_PINS の値の B0
の変換値がわからない…
自分なりに色々調べたり、試したりしてみたけど、動く気配がありません。
ひとまず、QMK Firmwareで作っておいて、島根に来て @hasumikin さんに相談してみたところ、 設定をみている keymap.cが違っていた…(と @takkanm さんが教えてくれた。ありがとうございます)
「正しい keymap.rb できたぞ〜」と思っても、やっぱり動かない… @hasumikin さんが見てくれたら、「これ、Pro Microの向き逆じゃ…」
!!!!
後編に続く!!!
keymap.rb
を書いている時に、QMK Firmware keymap.c のように、
キー配列をコメントで記載していたのですが、何度やっても書き込みでエラーになってしまいました。
ファイルサイズが大きくなってしまったのが原因のようでした。keymap.rb
を自分で書くことで、
「何の設定が必要なのか」が見えやすいなぁ…と感じています。
このあたり、後編にもう少し詳しく書けたらいいなぁ…明日は、 @takkanm さんです。
キーボード、いくつ持ってるんだろう。