キーボードを作ってみる
今回は画像ありますよ!
必要は成功の母と言うけれど
あんまり自分でキーボードを設計する必要性を感じていない。多分仕事したら自作のキーボードなんて持っていけないし、旅行にキーボードを持っていくわけにはいかない。そういうことを考えるとどこにでもあって、どこにでも売ってるようなキーボードに慣れるのがいいのではと思う。日本だったら英語配列すらどこにでも売ってるかは怪しいけど。
じゃあなんでキーボードを作ろうと思ったかというと、電子工作がしたかったからというのが大きいと思う。見事に因果が逆転している。
せっかくなら便利なものを作ろう
とはいっても作るからには自分のアイデアを盛り込んだものを作りたい。というわけで普通のキーボードで不満なところを考えてみると
左右対称ではない
ホームポジションを色分けしているページをみればわかるのだが、指の動かし方が左右で対称ではなく右に偏っている。
カーソルを動かせない
カーソル動かすのにマウス使うのめんどくさいという話。
Caps Lockがある
なんでこのキーがまだ存在しているんですかね…
とまあこんなところが思いついたのでこれを解決できる設計をする。ここでの不満点がこれしかないところに僕の順応的な基質が現れていると思う。
というわけでkeyboard layout editorという素晴らしいサイトがあるのでそこでキー配列を考えてみた。
結論からいうとこの配位は不味い。この配列はsymmetric staggeredと呼ばれる配列をリスペクトしているのだが、行のズレが全てキー1/2個分になっている。こんなん使ってたら指がおかしくなるけど、これでもう基板を発注してしまったのでしょうがない。
真ん中にスペースがあるのはここにポインティングデバイスを埋め込むためだ。しかしファームウェアの開発が自分には手に負えないことがすでにわかっているので実質無駄である。
ちなみにCaps Lockはちゃんと右側につけてある。これがないとCaps Lockを解除できないから必要である。あるいはCaps Lockの存在を否定するのはなぜ神がサタンを滅ぼさないのかと疑うようなことだとされているのでCaps Lockは絶対につけよう。
基板を設計してみよう
キーボードの配列ができたのでそれを元にキーボードの基板の図面を起こす。他のほとんどのキーボードと同じようにpro microと呼ばれるArduino互換(?)のマイコンを使うのでkicadを使ってうまく設計しよう。できた!
ところでpro microは信号線として使えるピンは18本である。さて、Nキーロールオーバーのキーボードを作るとしたらこのマイコン一つで何キーのキーボードまで作れるかというと、9x9 = 81キーである。そしてこの場合ポインティングデバイスで2本余計に使うので8x8 = 64キーまでしか載せられない。なのでこの設計では最大まで使えるように8x8のキーマトリックスになっている。symmetric staggeredで64キーなのでsymsym64と命名しよう!
これを使って実際の基板を起こすのだが、まあパーツが多いのでめんどくさい。kicad向けにkeyboard layout editorのデータから自動で配置してくれるスクリプトが公開されているのでありがたく使わせてもらう。できた!
ちなみに先程の配列の画像でキーの左上に数字が振ってあったのは通し番号で、このスクリプトを使うのに必須である。ダイオードが上に配置してあるのが数少ないおしゃれポインツである。
図面をかいて発注までは行ったのだが、コロナウィルスの影響なのかまだ完成していないので、道のりは遠い。
反省点
上下のキーのズレが急すぎるので設計を直したほうがいいのではないか。
ポインティングデバイスいる?
シルクに何も描いていないので印象が薄い。
というわけで絵心をつけようとがんばっている。
この記事が気に入ったらサポートをしてみませんか?