2026/09/06

AIと協働して、6キーとつまみ付きのキーボードを作った

AIと協働して、小さなキーボードを作ってみました。キーは6つ。左上につまみ、右上に小型ディスプレイを載せています。

2行×3列のキー、左上のつまみ、右上のディスプレイを載せた基板。
2行×3列のキー、左上のつまみ、右上のディスプレイを載せた基板。

6つのキーと、ロータリーエンコーダー

キーは2行×3列に並べました。画面にはK1〜K6の割り当てを表示しています。つまみのほうは音量操作の表示です。

ボタンを押す操作と、つまみを回す操作を一台へまとめられるので、特定の機能を呼び出すものはキーへ、値を増減するものはつまみへ、という使い分けができます。

ロータリーエンコーダーは、可変抵抗のように「今この角度だから、この電圧」という読み方をする部品とは違います。一般的なものは位相のずれた2つの信号から、どちらへ回ったかを読み取ります。回転方向に応じて音量を上げ下げする、といった操作に使えます。

キーボードでの実装例はQMKのエンコーダー資料にもあります。使用するファームウェアによって設定方法は変わりますが、回した動作へキーや機能を対応付ける考え方は共通です。

画面に割り当てを出す

ディスプレイのフットプリントには「0.96" 80×160(RGB)SPI」と記載しています。小さい画面ですが、6キー分の割り当てとつまみの状態を表示するには収まっています。

キー数の少ないキーボードは、どのキーに何を入れたかを忘れると使いにくくなります。画面へ出しておけば、キーキャップの文字と実際の設定が違っても確認できます。

SPIの画面を扱う場合、キーを読む処理に加えて、表示を更新する処理も必要です。毎回すべてを描き直すのか、変化した部分を更新するのかで、処理量も変わります。キー入力への反応を保ちながら表示する、という点も考えることになります。

基板上の配置

手前にキー、奥に表示器を置き、つまみは左へ寄せました。指で操作する部分と、見る部分を分けた配置です。USBの接続口は上側に出しています。

部品同士がぶつからずに載ることと、指を掛けて操作しやすいことは別です。とくにつまみは、周囲に指を入れる余裕が必要になります。こういうところは、基板を眺めているときより実物のほうが分かりやすいです。

0 件のコメント:

コメントを投稿