自作キーボード、まずは『ボタン1個でEnter』から始めてみます(計画編)

自作キーボードを、今度はゼロから自分で作ってみることにしました。
普段は Keyball を組み立てて使っています。
分割トラックボール、間にメモがおけて個人的にとても満足しています。
ただ Keyball は「キット」なので、基板もファームウェアも用意されたものを組み立てるのがメイン。
作りながら、だんだん「中で何が起きているのか、自分で一から組んでみたいな」という欲が出てきました。
新しいもの、だいたい在庫切れで買えないしね。

…と言っても、いきなり凝ったものを作るわけではありません。
最初の一台はボタンが1個だけ。押すとEnter が入力されるだけという、
なんとも地味なキーボードです。今回はその基板が届く前の「計画編」をメモしておきます。

どうして「キットから自作」へ進むのか

Keyball の組み立ては本当に楽しかったのですが、終わってみると
「ファームウェアってどう書くんだろう」「基板の配線って結局どうなってるんだ」と、
キットが親切に隠してくれていた部分が気になり始めました。
なので今回のテーマは、その隠れていた部分を 全部自分で握ってみること。

今回のルールはひとつ、「まず自分が便利になるものを作る」
途中で飽きても・誰にも見られなくても、手元に便利な道具が残るなら損はしません。
そのうえで、作った過程はこうしてブログに残していきます。

なぜ「1ボタン」なのか

自作キーボードには、ざっくり3つの要素があります。

  • 基板まわり(配線・スイッチ)
  • ファームウェア(キーを認識させるプログラム)
  • ケース(ガワ。3Dプリンタで作れる)

Keyball のようなキットだと、この3つはだいたい用意してもらえます。
ありがたいのですが、逆に言うと「自分で一から組む経験」はあまり積めません。
そこで今回は、この3つをいちばん小さい規模でひと通り自分でやる

ボタン1個なら、配線もファームウェアもケースも最小限で一周できます。
小さく一周してみると「自分が何を分かっていないか」が見えてくるはず。
それが分かれば、次はもっと本格的な自作配列にも挑めるな、という作戦です。

使うものを決めました

迷うと進まないので、構成はサクッと決めました。

  • マイコン
    • RP2040-Zero
    • 小さくて安い。1ボタンには十分すぎる
  • ファームウェア
    • KMK
    • Python で書ける。保存した瞬間に反映されて楽
  • 配線
    • まずブレッドボード
    • はんだ付けの本番は次のステップに
  • スイッチ
    • MX互換を1個(迷ったら茶軸)
    • 情報が多くて素直。検証はタクトスイッチでもOK
  • ケース
    • 3Dプリンタで制作
    • プリンタは手元にある

ファームウェアは、KMKにしました。
自作キーボードの定番は QMK ですが、こちらはC言語&ビルドが必要です。
KMK は Python(CircuitPython) で書けます。

「小さく試す」という今回の方針ともよく合っていそうです。
ケースについては、すでに 3Dプリンタを使っているのが強みになりそう。
動作確認が済んだら、自分で設計したガワを載せて「ちゃんとした一台」に仕上げたいところです。

次回は「実機編」

基板が届いたら、ブレッドボードに挿して配線して、code.py を書き込みたいと思います。
スイッチが無くても、配線の2か所を一瞬くっつければ Enter が出るか試せるらしいので、そこが最初の関門になりそうです。

コメント

タイトルとURLをコピーしました