✅ この記事でわかること
・31キー自作キーボード「Nomu30」の組み立て方
・コンスルー実装でマイコンを交換可能にする方法
・ホットスワップ化でスイッチを後から交換できる仕組み
・QMKを使ったキーマップのカスタマイズ方法
・ファームウェアの書き込み手順
音声入力の精度が上がっていて、主流になりつつある。にもかかわらず、オフィスや電車内での発声には社会的コストが伴う。隣の席で「メールを開いて」と話しかけるのは、まだ我々の文化には早い。
ならば、沈黙下での入力デバイスとしてキーボードの優位性はしばらく崩れない。だとすれば、自分の手に最適化された一台を持つ意味はあるだろうか。私の答えはYesだった。
着手したのはNomu30。31キー、ISOエンター採用のコンパクト基板だ。キー数の少なさはレイヤー操作の習得コストとのトレードオフになる。初期コストを払って長期の入力効率を取りに行く構造。投資判断と本質的に同じである。
設計判断:標準のピンヘッダではなくコンスルーを採用する
キット標準は通称「ゲジゲジ」と呼ばれる固定ピンヘッダだ。ProMicroを基板に直付けする方式である。
問題はMTBF(平均故障間隔)が、ProMicroのUSBコネクタ寿命に律速される点だ。USB Micro-Bは構造上もげやすい。ケーブルの抜き差しで剥離する事例は枚挙にいとまがない。直付けすれば、コネクタが死んだ時点でキーボード全体が死ぬ。
対策はコンスルー(スプリングピンヘッダ)の介在。これでマイコン交換コストはほぼゼロになる。さらに将来NRF52840に差し替えて無線化する経路も同時に確保できる。冗長性を設計段階で組み込めば、後悔は減る。
工程の記録
1. PCB側面の塗装
油性マジックで基板の側面を黒く塗る。エッジの白が消え、視覚的なノイズが落ちる。コストはほぼゼロ、効果は明瞭。やらない理由がない。
2. ダイオードの実装
向きを取り違えれば回路は機能しない。基板上の白線と、ダイオード本体の黒帯を一致させる。確認は複数回。
足が長く作業性は悪い。先に切断してからハンダ付けする手順もありえる。私は今回、実装後にカットしたが、次回は順序を入れ替えるかもしれない。最適化の余地は残る。
3. リセットスイッチ
裏面から差し、表面でハンダ付け。足がやや外側に開いているため、穴に通した時点で物理的にロックされる。位置決め不要。
4. スタビライザーの調整
Krytox GPL 205 G0(フッ素系グリス)を発注したが、組み立て当日に物流が間に合わなかった。
組み上げ後、隙間からグリスを注入して対応した。摩擦係数は十分下がったが、本来は事前塗布の方が均一性が高い。これは納期管理の失敗である。次回は「部材到着確認」を着工の完了基準に組み込む。
5. スペーサーの固定
長ネジ+中間スペーサーで上下プレートを締結する。
6. キースイッチ ― ホットスワップ化
ハンダ付け前に、各スイッチの2本足にHot Swap Socketを装着する。これで後からスイッチを引き抜いて交換できる構造になる。
ただし、ProMicro直下のスイッチはホットスワップ化できない。USBコネクタとの物理干渉が原因だ。スペースを上方向に逃がせば回避できるが、キーボードの全高が上がる。打鍵感は手の角度に直結する。高さは妥協できない。トレードオフの結果、一部スイッチは固定で許容する。
ProMicroと干渉する箇所のスイッチピンは、事前にニッパーで切断しておく。これで物理的余裕が生まれる。

7. スイッチのハンダ付け(31箇所)
注意点はハンダの量。多すぎると毛細管現象でホットスワップソケット内部に流入し、スイッチが固着する。ホットスワップ化した意味が消える。物理現象を理解した上で作業すれば、失敗確率は下がる。少量で確実に。
8. ProMicroの実装
スイッチと接触しうる箇所には絶縁テープを貼る。短絡防止のため。
そのままコンスルーに乗せると、テープ厚の分だけProMicroが傾く。少し浮かせて水平を出してからハンダ付けした。コンスルーを使う場合、基板側のハンダは不要である。

9. ケース組み立てとキーキャップ
ボトムプレートをネジで固定し、底面に滑り止めのクッションゴムを貼る。重量と摩擦係数で打鍵時の横ズレを抑える設計だ。
キーキャップはAliExpressで調達した。ISOエンター対応のセットは流通量が少なく、互換性の確認は購入前の必須工程である。バラ買いするか、対応セットを探すか。私は対応セットを選択した。
ファームウェア書き込み
ハードウェアが完成しても、ファームウェアがなければこれはただの基板の集合体だ。
ビルドはQMK Configurator(ブラウザ)、書き込みはQMK Toolboxを使う。
QMK Configuratorの手順
https://config.qmk.fm を開く
キーボード検索で「nomu30」、rev1を選択
キーマップ名を入力(例:tomumu)
画面上のキーをクリックして割り当てを変更
右上の「Compile」を押下
ビルド後、「Firmware」から.hexをダウンロード
QMK Toolboxの手順
QMK Toolboxを起動
.hexファイルを読み込む
MCUが「ATmega32U4」になっているか確認
「Auto-Flash」にチェック
本体のリセットボタンを押下
自動でフラッシュ完了
各キーの動作確認をして終了。
評価:制約は工夫を強制する
31キーは確かに制約だ。だが制約は工夫を強制する。
指の移動距離が短い。ホームポジションからの離脱が少ない。これは長時間入力時の前腕の筋疲労を低減するはずだ。腱鞘炎の発症リスクも理論上は下がる。身体の使い方には敏感な方だが、入力姿勢は職業病に直結する領域である。
レイヤー設定の習得は確かに発生する。ただし一度習得すれば、入力効率は通常配列を上回ると考えます。学習コストは初期投資、効率は配当。回収には時間がかかるが、資産性のあるスキルの習得だ。
下記に私のキー配列を載せておきます。まだ改善の余地があると思われますが、その都度変えて行かうと考えている。

残された選択肢
キーマップを使用実態に合わせて最適化していく
スイッチの重さに違和感が出ればホットスワップで交換
NRF52840へ差し替えてワイヤレス化
コンスルー実装にしたことで、これらの選択肢はすべて開いたままだ。設計段階で冗長性を確保したことの配当である。
組み立て自体は数時間で終わる工程に過ぎない。しかし手を動かして物理的に組む経験そのものは、AIには代替されない。少なくとも、今のところは。

コメント