--- title: "電子工作初心者が Lily58 Pro を買ってから作って持ち運ぶまで" date: "2019-04-27T12:41:43+09:00" tags: ["keyboard"] isCJKLanguage: true draft: false --- [前回の記事](https://chroju.github.io/blog/2019/04/25/how_i_learned_to_stop_worrying_and_love_the_original_keyboards/) を Twitter に載せたところ予想外に RT と fav をちょいちょいいただきまして、もしその流れで「製作編」を楽しみにしていた方がいたらとても申し訳ないなと思っていて、何分前回書いた通り私は電子工作ビギナーもいいところで、今回もだいぶ危なっかしい手順踏みつつもなぜか完成してしまったぐらいの感覚でいるので、これから書くことは参考にはならないかと思います。というか参考にせず別のもっときちんとした方の教えを乞うてください、と予防線を張った上で、初心者が見よう見真似こんな感じでやってみたよ、という体験談として読んでいただければと。 前提を再度書いておきますが、中学校の授業以外でハンダ付けしたことがない超ビギナーが Lily58 Pro という自作キーボードを組み立てたお話です。このエントリーも Lily58 Pro で書きました。 ## 買ったもの お買い物ですが、キーボードキットは遊舎工房さんの実店舗、はんだ付け関連の工具は Amazon とダイソー(?!)を使いました。 ### キーボードキット Lily58 Pro は必要なものがキットになった状態で売られていますので、それを買います。私はロープロファイルである Choc 用のものを買いましたが、 Cherry MX 軸用のバージョンもあります。基盤は共通で、キーソケットを変更することでどちらにも対応するようなキットになっています(一度キーソケットをはんだ付けしたら変更はできないです)。 * [Lily58 Pro | 遊舎工房](https://yushakobo.jp/shop/lily58-pro/) 他に必要なものはキースイッチ、キーキャップ、左右のキーボードを結ぶ [TRRSケーブル](https://yushakobo.jp/shop/trrs_cable/) 、パソコンと接続するための micro USB ケーブルです。いずれも遊舎工房さんに置いていて、店員さんが必要なものをピックアップしてくれたので助かりました。 キースイッチは、現在遊舎工房さんに取り扱いがあるのは赤軸(リニア)、茶軸(タクタイル)、白軸(クリッキー)の3種類で、私が行ったときには赤軸が在庫切れになっており、白軸はオフィスで使うには適さないため茶軸としました。結果的に快適に使えているので、他の軸に替える必要もなさそうです。荷重はいずれも 50g ですが、もっと重いものが欲しい場合には海外通販になりますが、 NovelKeys などで購入できます。 https://novelkeys.xyz/products/novelkeys-x-kailh-low-profile-heavys ## 工具 Amazon で以下のものを購入しました。はんだごては温度調節機能があったほうがよいという話だったので、それを満たす上で高すぎないものとしています。作業マットは正直よくわからなかったものの、難燃性っぽいものを買っています。少しゴムの匂いが強くてしんどかったです。ボンドガン(グルーガン)については後述します。
またこれ以外に、ピンセットとプラスドライバーは家にあるもの(何年か前にミニ四駆やったときに買った)を使っています。 Lily58 Pro はリード線を切るような機会はないため、ニッパーは不要です。
## はんだ付け
ぶっつけ本番はさすがに嫌だったので、はんだ付け練習キットのようなものがあればと思い Amazon で探したのですが、そこまで親切に(例えば説明用冊子が付いているとか)なっているものは見つけられず、コンデンサーや抵抗器がじゃらじゃら突っ込んであるセットがいくつかあったので、その中から適当なものを選びました。
あとは「ジャンパ」という単語の意味がわからなかったり(はんだで複数の端子を繋げることみたいです)。 OLED 取り付けの手順はオプション故か端折られていたので、以下の記事を参考にさせてもらいました。
* [電子工作初心者がおくる自作キーボード制作ガイド【Helix】 前編](http://learningoctopus.com/helix_keybord_buildguide1)
### Pro Micro の固定
1つビルドガイドにない手順として、先の Qiita 記事に言及がある、 Pro Micro の micro USB 端子固定作業を追加で行いました。固定は記事をそのまんま参考にしてグルーガンを使いましたが、普通の強力接着剤でも良いような気がしています。不安だからと盛りすぎると、他のパーツに干渉して組み立てが難しくなるので注意です。自分は少しだけやすりで削る羽目になりました。
同じパーツをいくつもはんだ付けしていくので途中集中力も切れかけましたが、休憩を入れながら5〜6時間ほどで組み立てはおわりました。
## ファームウェアの書き込み
組み上がったらファームウェアを自分で書き込む必要があります。多くの自作キーボードでは [qmk/qmk_firmware: keyboard controller firmware for Atmel AVR and ARM USB families](https://github.com/qmk/qmk_firmware) というものを使っているようで、 Lily58 Pro の場合もこれを使います。コマンドとしてはレポジトリを `git clone` してきて `cd` し、以下を打つだけです(前提として必要になるライブラリを `brew install` しておかなくてはならないので、それについては qmk_firmware のマニュアルを参照してください)。
```bash
$ make lily58/rev1:default
$ make lily58/rev1:default:avrdude
```
最初のコマンドでファームウェアをビルドし、2つ目のコマンドで書き込みます。従って2つ目のコマンドを打つ際にはキーボードを接続してある必要があります。2つ目のコマンドを打つと、以下のように reset 待ちになるので、キーボードのリセットボタンを押せばファームウェアが書き込まれます。左右それぞれで書き込み作業を行う必要があります。
### キーマップ
qmk_firmware の中にキーマップを定義しているファイルがあるので、これを書き換えることでキーマップを変更できます。ファイルは `keyboards/lily58/keymaps/default` の中にあるので、これをコピーします。
```bash
$ cp -R keyboards/lily58/keymaps/{default,chroju}
```
中に `keymaps.c` があるので、これを書き換えれば OK です。ソフトウェアエンジニアであれば、中を覗けば察しはつくと思います。指定できるキーコードは [Keycodes - QMK Firmware](https://docs.qmk.fm/#/keycodes) を参考にします。私が大きく変更した点としては、 `Delete` をフルキーボードのように右上に配置したのと、 Lower のときに 1 を F1 、 2 を F2 という形でわかりやすいように割り当てたあたりでしょうか。記号キーについてはまだ模索しています。
ビルドと書き込みについては、先のコマンドの `default` をコピー後のディレクトリ名に替えるだけです。
```bash
$ make lily58/rev1:chroju
$ make lily58/rev1:chroju:avrdude
```
### OLED
OLED ですが、デフォルトだと入力したキーがそのまま表示されるようになっており、パスワード入力中など困りそうだったので、少し表示する内容を変更しました。 [Lily58 Proのディスプレイ表示(OLED)を改造してみる - エンジニアの醤油漬け](http://ubansi.hatenablog.com/entry/2019/03/21/223613) を大いに参考にさせていただき、1分あたりのタイプ数をタイプスピードとして表示するようにしています。C言語は初めて書いたんですが、 Pro Micro というか Pro Micro が互換性を持つ [Arduino が sprintf で float の表示に対応していないこと](https://stackoverflow.com/questions/27651012/arduino-sprintf-float-not-formatting) を知らず、1時間ぐらいハマったりしました。
```c
#include
## 完成
ちゃんと動かない可能性は多少覚悟していたんですが、思ったよりあっさりと動いてほっとしました。何日か使って仕事にも使ってみましたが、いまのところ特に問題はないです。というか打ち心地もよくて素晴らしいです。めちゃくちゃ気に入ってます。キー数が減ったのでタイポはまだ多く、慣れが必要だと感じています。
Barocco MD600 と比べるとだいぶ薄くなりました。ところで左の親指のところにまさかの Caps Lock がハマっていますが、 2U の無刻印キーキャップを持っていないだけで、実際はスペースキーです。
持ち運びには[無印良品のナイロンブック型ポーチ](https://www.muji.net/store/cmdty/detail/4549738743835)を使っています。コードを収納できるポケットもあり、メッシュポケットに片側を入れられるので、2つのキーボードが擦れあってアクリルが傷つく心配もなく、 Lily58 のために作られたのではないかと思うぐらいピッタリでびっくりしました。
以上、ビルドログでした。なかなか作業は大変でしたが、仕上がったとき、実際動いたときの満足感は最高に気持ちよかったですし、出来上がりにもとても満足しています。もう1個、2個と作りたいかと言うとどうだろうなーという感じではあるんですけど。