初めての自作キーボード:meishi2のビルドログ

はじめに

動いたときの達成感がすごい。
結城智久(@TomohisaYuuki)です。

電子工作ほぼ素人ですが自作キーボード作ってみました。
自作キーボードに挑戦しようと思ってる方には参考になれば、また自作キーボード玄人の方には「初心者ってこんなところで躓くんだ」と温かい目で見守ってもらえれば幸いです。

先にざっくりまとめると

  • 自作キーボード作成初挑戦、完成まで2時間半かかった
  • 公式ビルドガイドには書かれていなくて詰まったところがあった
  • Mac環境で作っていたことによる問題も発生した
  • 自作キーボード楽しいから迷ってるならまずはmeishi2作ってみよう

という感じです。

なんで自作キーボードに手を出したのか

自作キーボードの存在を知ったのは4ヶ月ほど前。それまではHHKBに憧れていたりniz atom66に手を出したりしていましたが、キーのレイアウトや打鍵感が合わなかったりで、結局MacbookやMacbookProのバタフライキーボードなどを使っていました。

ただ今年に入ってから在宅勤務をするようになり、せっかくならできるだけ仕事環境を良くしたいと思っていろいろ調べてみたところ

  • 左右分離キーボードが肩こり解消にいい*1
  • カニカルキーボードは打鍵感がよくて捗る*2

という情報を見つけました。

そこで実際家電量販店でmajestouchを触ってみたら本当に打鍵感が良くて、「メカニカルキーボードいいじゃん!よし買うか!」と、とても乗り気になりました。が、よくよく調べてみるとmajestouchには左右分離キーボードは無いという…そのためmajestouchは断念。どころかいいキーボードを買うことまで断念しかかりました。

でもここまで高まったキーボード欲は抑えきれず…

さらにいろいろ調べてみた結果、以下の記事を見つけ、ついに自作キーボードとの出会いを果たしたのです。
note.com

そこから自作キーボードを調べ始め、自作キーボードなら形状もレイアウトも軸も、さらにはキーマップまで自由だと知り、ついに自作キーボードに手を出すことを決意したのでした。

meishi2を選んだ理由

現時点での自分の要望は以下の通り。

  • 形状
    • 左右分離
    • 小指の負担を減らして親指を活躍させたい
    • カニカルスイッチ
    • 重め、リニアが好み
  • 機能
    • bluetooth接続
    • 複数の接続先を保存しておいて切替可能
    • 仕事用Windowsとプライベート用Macどちらでも使える

この条件に最も合っていそうなのはclaw44+重めの軸+無線化ではないかと思っていますが、公式ビルドガイド*3を読むと初心者には難しそう。
特に不安だったのが「はんだ付けがちゃんとできるか」ということ。はんだ付け箇所もたくさんあるから大変そうだし、失敗したらリカバリーできるかわからないし、キットはそれなりの値段するから失敗したからといって新しく買うのもためらわれるし…

そうやって悩んでいたのですが、ある時ふと「はんだ付けが不安ならはんだ付けが少ないキットで練習すればいいじゃん」とひらめく。さっそく「自作キーボード 入門 おすすめ」で検索して、そこで見つけたのがmeishi2でした。

  • 4キーしか無い(=はんだ付け箇所が少ない)
  • ビルドガイドに書いてある工程が少ない(=簡単そう)
  • 値段が安い(=失敗したときは最悪新しいものを買えばいい)
  • 遊舎工房さんでにスイッチ&キーキャップつきのセットが売られている(=自分で部品を揃える必要はない)

上記の理由からmeishi2を最初の自作キーボードに選びました。

準備したもの

キット

yushakobo.jp
遊舎工房さんで購入。
スイッチ&キーキャップ付き(入っているものはランダム)を購入しましたが、いろんな軸が試せるし、キャップもカラフルでとてもお得なセットだと思います。おすすめ。

工具

以下のサイトを参考に揃えました。
キーボード自作、特に Helix キーボードキットの製作に最低必要な工具のメモ · GitHub
自作キーボードの組み立てに使っている工具 | yfuku docs

はんだごてセット

はんだごて、交換用こて先5種、こて台、はんだ吸い取り器、はんだ、ピンセット2種が入ったお得なセット。
とりあえず買っておくといいと思います。(バラバラに買うと思いの外高くなるので)
初心者はいいはんだごてを使うことを勧められていますが、このセットのものでもどうにかなりました。

ニッパー

ダイオードの線を切ったりするのに使います。

はんだ

はんだごてセットに入っていますが、別途購入。
鉛入りのほうが融点が低く、初心者には扱いやすいらしいです。
また狭い場所でも作業しやすいように経が細いものを選びました。

マスキングテープ

はんだ付けの際に部品がズレないように固定するために使用。
まとめて買っちゃいましたがこんなに量いらないです…

作業マット

絶縁・断熱なので安心して作業できます。
色がはっきりしているので部品の視認性も上がります。
あと作業途中の写真がいい感じに撮れるというメリットも。

買ったけど使わなかったもの
はんだ吸い取り線

今回は使いませんでした。
はんだごてセットに吸い取り器がついているので、それを使うのでも大丈夫かもしれません。

あったらよかったもの
こて台

白光(HAKKO) こて台 633-01

白光(HAKKO) こて台 633-01

  • メディア: Tools & Hardware
はんだごてセットについているものの作りがあまり良くないので…
余裕があるなら買っておくと作業しやすくなるかもしれません。

作業の経過

基本は公式ビルドガイドに従って作成しました。
biacco42.hatenablog.com

手順は以下の通りです。

  1. ハードウェア組み立て
    1. パーツが全部揃ってるか確認する
    2. ダイオードを取り付ける
    3. タクトスイッチを取り付ける
    4. Pro Microを取り付ける
    5. キースイッチを取り付ける
    6. キーキャップを取り付ける
  2. ファームウェア書き込み
    1. ビルド環境構築
    2. ファームウェアのビルドと書き込み(※ビルドログとの差異あり)
    3. 動作の確認(※ビルドログとの差異あり)

パーツが全部揃ってるか確認する


キットの中に入っているパーツをすべて並べて、ビルドガイドの画像と見比べます。
この時点でわくわく感がすごい。

ダイオードを取り付ける


最初の関門。
ダイオードのリードを変に折り曲げてしまわないか、はんだ付けこれであってるのか不安になりながらはんだ付けしました。
ひとつつけちゃえばあとは簡単なんですが、最初はとても緊張した…あとリード切るのもほんとにやって大丈夫か心配になりましたが、気にせずバシッと切っちゃって大丈夫。

あとになって気づいたはんだ付けのコツは

  • 公式ビルドガイドに書いてあるようにはんだ付けする箇所の金属端子を5秒ぐらいしっかり温める
  • はんだは怖がらずにケチらずに多めに使うように心がける

かなと思います。
途中はんだが少なすぎたのかはんだごての離し方が悪かったのか、はたまた温度が低かったのか、端子の先にはんだでトゲトゲを何度も作ってしまいました…

タクトスイッチを取り付ける


これで合ってました。
部品の名前だけだと分からなかった…公式ビルドガイドにもこの作業の画像はなかったのでヒヤヒヤしながらはんだ付け。



タクトスイッチの裏面の画像手前側、はんだ付けが悪かったのか断面がすごく太くなった…
見た目も良くないし失敗したかな…と思ったけど結局大丈夫でした。

Pro Microを取り付ける


はんだ付けを怖がっている…

ビルドガイドだとコンスルーを固定する向きを示した画像以外はピンヘッダを使用した画像(=はんだ付けしている/されている画像)になっているので少し混乱。
コンスルーなのではんだ付けいらない!と自分に言い聞かせて、向きに注意しながらPro Microにコンスルーを挿し、続けて基盤に差し込みました。
本当にこれで固定できるのか?と半信半疑でしたが、ちゃんとはまるし、少し引っ張ったぐらいでは抜けませんでした。

キースイッチを取り付ける


ハードウェア組み立ての最後の関門。
でもキースイッチをつけると一気にキーボードらしくなるので一番テンション上がる作業でもあります。
基盤を裏返してキースイッチを支えにすると、キースイッチの位置がずれてしまうかもしれないのでマスキングテープで仮止めしながら作業するといいと思います。
結構足の長さがあるので切るべきか迷いましたが、切らないでおきました。今のところ問題なし。

キーキャップを取り付ける


感動の瞬間その1。
やっとここまできた…ここまで1時間10分ほど。

キーキャップは少し強めに押し込む必要があるので注意。

あと基盤裏の四隅にラバーシールの貼り付けもしています。
ちなみに、ラバーシールよりもキースイッチやコンスルーの足のほうが長くて机に接しているようにも見えました。今のところ問題ないけど
これでいいんだろうか…?

ビルド環境構築

続けてファームウェアの書き込み作業に進みます。

実施した環境は以下のとおりです。
OS : MacOS Catalina 10.15.7
git : 2.24.3

まずはターミナルを開いて任意のディレクトリに移動して以下のコマンドを実行。

# QMKfirmwareをクローン
$ git clone https://github.com/qmk/qmk_firmware.git

# ビルドに必要な依存の解決
$ cd qmk_firmware #以下すべて~/qmk_firmware配下で実行
$ ./util/qmk_install.sh

自分の環境では一つエラーが出力されたため以下の通り対応しました。

# 以下のエラーが出力されたため、pipをupgrade
# WARNING: You are using pip version 19.2.3, however version 20.2.3 is available.
# You should consider upgrading via the 'pip install --upgrade pip' command.
$ pip install --upgrade pip

ファームウェアのビルドと書き込み(※ビルドログとの差異あり)

いよいよファームウェアの書き込みをします。
まずmeishi2をUSBでPCと接続します。


Macの場合ここで「キーボード設定アシスタント」が表示されるかもしれませんが、無視しました。

その後、以下のコマンドを実行。

$ make meishi2:default:avrdude

これでファームウェアのビルドと書き込みがまとめて実行される!
…はずだったのですが、以下のエラーが発生。

QMK Firmware 0.10.33
WARNING: Some git submodules are out of date or modified.
 Please consider running make git-submodule.

Making meishi2 with keymap default and target avrdude

tmk_core/protocol/lufa.mk:14: lib/lufa/LUFA/makefile: No such file or directory
make[1]: *** No rule to make target `lib/lufa/LUFA/makefile'.  Stop.
make: *** [meishi2:default:avrdude] Error 1
Make finished with errors

よくわからないけど「Please consider runnning make git-submodule」とあるので実行。

$ make git-submodule

その後もう一度[make meishi2:default:avrdude]を実行することで処理が進みました。
以下の表示になったらmeishi2のタクトスイッチを押します。

[avrdude done. Thank you.]と表示されたら書き込み完了!



動作の確認(※ビルドログとの差異あり)

書き込みが完了したらちゃんと動作するか確認します。
meishi2のデフォルトのキーマップは左から順に(今回作ったものの場合キーキャップがピンクから黄色に向かって)「ctrl+z」「ctrl+x」「ctrl+c」「ctrl+v」が割り当てられています。
適当にメモ帳などを開いてテキストのコピペがうまくいくか試してみましょう。

感動の瞬間その2!
…かと思いきや。

原因を考える

正直がっくり来ました…が、落ち込んでいてもしょうがないので原因を考えます。
ファームウェアの書き込みはうまく行っている(はず)なので、別の原因を考えます。

最初はキースイッチのはんだ付けがうまく行ってなくてキーをクリックしても認識されないのかと思いました。が、よく考えてみると、左3つは認識されているようなので、これは違いそう。(一番右側だけははんだ付け失敗している可能性が残っている)
とすると、スイッチを押したときにMacが受け取れない命令が出ているのではないか?だとすると…

そこで調べてみるとQMKfirmwareのキーコードは次のようになっていることがわかりました。

Keycode 意味 備考
LCTL(kc) 左Ctrl+kc デフォルトのキーマップで使用(=Windows向け)
LGUI(kc) GUI(Cmd/Win)+kc Mac向け

ここまで分かったので、キーマップを変更して再ビルド&書き込み。

これでやっと完成!
緊張しながら調べながら詰まりながらでしたが、2時間半かけてmeishi2を完成させることができました。



感想

自分で作ったものが動くのはとても嬉しい体験ですね。作るのに苦労したのならなおさら。meishi2にはとても愛着が湧きそうです。
初めての自作キーボードにmeishi2を選んで正解でした。はんだ付けの練習にもなるし、ファームウェアのビルド・書き込みもしっかり勉強できます。なによりあまり時間をかけずに完成までを一通り経験できるので、一気に経験値が稼げます。
初めての自作キーボードにmeishi2おすすめです。
たのしい人生様、とても素敵なキットを作成いただきありがとうございます!

これから始めようか迷ってる方に向けて。

  1. 電子工作初心者でも大丈夫
    • 僕は中学生の頃に授業でテスターを作って以来、約20年ぶりのはんだ付けでした
  2. ファームウェアの書き込みはそんなに難しくない
    • 黒い画面を使わない方法もあるそうです*4
  3. 作るのは楽しい、動いたときはすごく嬉しい、使っていて愛着が湧く
    • 自作キーボードはとても楽しいのでまずはmeishi2を作ってみましょう!!

おわりに

以上、長々書きましたが初めての自作キーボードのビルドログでした。
次はいよいよclaw44に挑戦!…と思っていましたが、その前にもう少しオーソドックスなキーボードを作るところからやっていこうかと思います。
こうしてキーボード沼にハマっていくんだなぁ…