3Dプリンターで出力したK/Bプレートを使った空中配線の自作キーボードを作る(1個目)

今回は、3Dプリンター(Ender-3x)で出力したキーボードケースを使い、空中配線で自作キーボードを作りました!
空中配線での自作キーボードに興味のある方はどうぞ♪

3Dプリンターで出力したキーボードケースを使った自作キーボード(空中配線)

◎このページの内容
1 空中配線の自作キーボードに必要なもの
2 自作キーボードを作る手順【空中配線】
3
自作キーボードを作る手順【ProMicroへの配線】
4 自作キーボードを作る手順【ファームウェア】
5 キーマトリクスに関すること
6 QMKファームウェアの環境構築
7 空中配線の自作キーボードを作るのに使った工具類

※この記事内の写真はクリックすると、別ウィンドウで大きい画像を表示します。
※空中配線の自作キーボードを作るのに使った道具類は最後に載せています。

空中配線の自作キーボードに必要なもの

ブログで紹介済みのEnder-3xでキーボードケースを出力しています。
キーボードケースのデータ(Thingiverse)
これは、PLAで出しました。

キーキャップ以外はだいたい秋月電子遊舎工房で買い揃えてますが、Amazonで買えるものはリンクを置いておきます。

✓ ブレッドボード秋月電子
✓ ジャンパーワイヤー各種
事前に想像してたより長さが必要で後から買い足してつなげたりしているので、正確には分かりませんが、オス-オスとオス-メスは30本ずつくらいだと思います。
それと、写真にはありませんが1本ずつがくっついてて10ピンまとまってるジャンパー線を買って、後からつなげ直しました。そっちの方がまとまります。
✓ ProMicro遊舎工房
✓ コンスルー(スプリングピンヘッダ)2.54mm、12ピン
✓ キースイッチ(Blue Zilent v2-62g)(40個)
✓ キースイッチ用ソケット(MX用40個、Kailh Choc ロープロファイル用2個)
✓ Kailhロープロファイルスイッチ(4個)
✓ 記号のみのキーキャップ(monolegends)
pimpmykeyboard.comページで「mono legends」で探すと他にも記号だけのキーキャップがあります。
✓ 矢印などのその他キーキャップ(DSA “Beyond”)
✓ ダイオード(1N4148)秋月電子
✓ ポリウレタン銅線

キー配列のテスト用に使ったもの
大きいブレッドボード
タクトスイッチ

自作キーボードを作る手順【空中配線】

自作キーボードの作業手順を解説します。
まずは、空中配線のところから。

① キーボードケースを3Dプリンターで出力する
3Dプリンターがあれば、好みのキーボードケースを作ることができます。
でも1からデザインするのは無理なので、誰かが上げてくれてるデータで出力しました。

夫が気に入ったのは親指が横に来るタイプの立体型のキーボードケースです。
⇨ キーボードケースのデータ(Thingiverse)

② キーボードケースにキースイッチとキーソケットをはめる
キースイッチを使いまわしたいので、ハンダの直付けはしません。
キースイッチ用のソケットをはめてます。

③ ROWとCOLの空中配線をする
ダイオードでROWを、ポリウレタン銅線でCOLのラインを空中配線します。
ROWとCOLのつながりは、下の画像のようになっています。

▼キーマトリクス(ROWとCOL)
keymatrix(rowとcol)

上の画像は、右手→左手です。
(下段の5つが親指用のキー)

ダイオード(1N4148)には向きがあり、黒い方がカソードです。
赤の方をキースイッチにはんだ付け、黒から出る線を次のキーへつなげます。

▼COLとROWを空中配線したところ
COLとROWを空中配線したところ

ここではCOLのラインにポリウレタン銅線を使いましたが、ふつうはジャンパ線のがいいです。

ポリウレタン銅線を使う場合は、はんだ付けする部分の皮膜を溶かしておく必要があります。
はんだごてで500度近くにして溶かすので熱いし面倒ですね。
被膜が溶けてるか分かりにくいので、毎回テスターで導通チェックしてました。

最初にジャンパー線でやろうとしたのですが、キーソケットの両端が窮屈で2本分のジャンパーワイヤーをはんだするのがしんどいなと思ってポリウレタン銅線に変えました。
(中途半端な長さのポリウレタン銅線がいっぱい余ってた)

この写真だと分かりにくいですが、立体型のキーボードケースなので最深部で6cmくらいあります。
COL6のラインとか、すごくハンダしにくかったです。

④ ブレッドボードにつなぐためのジャンパーワイヤーをつなぐ
左右それぞれのROW1〜5、COL1〜10のラインから各1本ずつ、全部で20本のジャンパーワイヤーをはんだ付けします。
この20本はブレッドボードにつなぐためのものです。

▼ブレッドボードにつなぐジャンパー線
ブレッドボードにつなぐジャンパー線

ROW1=紫色のジャンパー線
ROW2=赤いジャンパー線
ROW3=オレンジ色のジャンパー線
ROW4=茶色のジャンパー線
ROW5=黄色のジャンパー線
これは左右各1本つけます。
どこでもはんだしやすいところでいいと夫に言われたので、その通りにしました。

COLのラインは左右それぞれで内側から外側へ、白・グレイ・黒・の5色のジャンパー線をつなげています。
これは出口になるべく近いところがいいと夫に言われたので、最上段のキースイッチとCOLがつながってるところにはんだ付けしました。
(出口は最上部)

左右のジャンパー線は、それぞれ最上部の出口からまとめて外へ出して、ブレッドボードに接続します。

▼ROWとCOLをまとめて上から出す
ROWとCOLをまとめて上から出す

ここまでの空中配線が私の担当です。
ここからは、夫の担当です。

自作キーボードを作る手順【ProMicroへの配線】

ProMicroへの配線は、以下のピン配置図を参考にします。

▼ピン配置図(外部リンク)
ピン配置図

ROW 1 ↔ PD7
ROW 2 ↔ PC6
ROW 3 ↔ PD4
ROW 4 ↔ PD0
ROW 5 ↔ PD1
COL 1 ↔ PB4
COL 2 ↔ PB5
COL 3 ↔ PB3
COL 4 ↔ PB2
COL 5 ↔ PB6
COL 6 ↔ PB1
COL 7 ↔ PF7
COL 8 ↔ PF6
COL 9 ↔ PF5
COL10 ↔ PF4
上記のように、接続します。

ジャンパー線は20本つないだのに、ROWが5個でCOLが10個では数が合わないと思いますね。
実際のブレッドボードは下の写真のようになっています。

▼ブレッドボード上でのProMicroへの接続
ブレッドボード上でのProMicroへの接続

COLは10本とも、直接ProMicroに接続しています。
ROWはいったんブレッドボード上で1本にまとめてからProMicroにつないでます。

写真の緑色の線を見てみて下さい。
ブレッドボードの【c】と【e】に挿した分を【a】でひとまとめにしてから、ProMicroへ接続しています。

最初に載せた写真「キーマトリクス(ROWとCOL)」を見ると、ROWは横1列でつながっています。
COLは1から10までありますが、ROWは1から5までです。

自作キーボードを作る手順【ファームウェア】

次に、ファームウェアの準備をします。

ブラウザ上でキーボードのレイアウトを操作できる便利なページがあります。
keyboard-layout-editor.com
このページでキーボードのレイアウトを作ります。
作成したら、《Raw data》をコピーします。

▼キーボードのレイアウトを作成
キーボードのレイアウトを作成

ブラウザ上でファームウェアを作成できるページもあるので、こちらを使うと便利です。
Keyboard Firmware Builder

Keyboard Firmware Builderの使い方
1) Raw data をペーストする
2) importボタンを押す
3) PINSタブで配線したピンに合わせる
4) KEYMAPタブで適当にキーを設定
5) COMPILEタブでDownload.hexをクリックしファームウェアをダウンロード
6) Download.zipもついでにダウンロード
7) QMK Toolboxでファームウェアをpro microに書き込む
8) 動作確認する

▼ファームウェアの作成画面(3枚)
ファームウェアの作成画面-1
ファームウェアの作成画面2
ファームウェアの作成画面−3

Download.zipにソースコードも入ってるので、今後カスタマイズしたい場合はこれをいじります。

今回の自作キーボードで夫が使っているデータはこちらからダウンロードできます。
 mykeyboard.zip

キーマトリクスに関すること

Pro MicroはIOピンが少ないので、1ピン1キーで接続してしまうと18キーまでしか対応できません。
キーマトリクスを使うことで、最大9Row×9Colの81キーまで増やせます。

ただし、キーマトリクスを使用する場合は、同時押しの際の電気の流れを気にする必要があります。

ちゃんと理解しているわけではないので詳しく説明はできませんが…
意図しない方向に電気を流さないよう、ダイオードを使って電気の流れを一方通行にする必要がある、ということです。

ダイオードは電気をカソードからアソードにしか流さない特性があります。
で、今回のキーボードはColからRowに対して電気を流して、どこが押されたかを判断するので、キースイッチの外側に向かってカソードを配置しました。
こうすることによってRowからColに対して電気は流れなくなるので、他のキーに迷惑をかけなくなります。

詳しく知りたい方は『オリジナルキーボードを作ってみる その7「キーマトリックス」』を読むと良いかも?

QMKファームウェアの環境構築

miniaxeの記事を参考にQMKファームウェアの環境構築をします。

「mykeyboard.zip」を解凍してqmk_firmware/keyboardsの下に置きます。

make mykeyboards/mymap:avrdude

上記のコマンドを実行しpromicroをリセットすると書き込まれます。

▼空中配線の自作キーボード出来上がり♪
空中配線の自作キーボード出来上がり♪

手作り感満載ですが、メインキーボードとして使える仕上がりです。
とても立体的で他にはないキーボードですね!
夫はとても満足して愛用しています。
これに慣れてしまい、もうふつうのキーボードには戻れないらしいです。

空中配線の自作キーボードを作るのに使った工具類

最後に、自作キーボードの製作で役立つ工具類を紹介します。