大抵のエンジニアにとってキーボードは、触らない日はないというほど身近なインターフェースだと思う。いままでHHKBやErgoDoxなど自分に合う鞍*1を探してきたわけだけれど、自分で作ってみるというのもアリなのではないか、とふと思い至った。
しかし、電子工作の経験もそんなにない自分がいきなり設計から始めてひとつのキーボードを完成させるのは途方もなく壮大な計画に思えたので、まずはキット的なものを探して自分で組み立ててみることにした。そうして調べた結果、Let's Splitというキーボードを組み立てることになった。
Let's Split
5時間くらいかけて #レツプリ 完成した pic.twitter.com/47xiwNFY3R
— Masayoshi Wada (@masawada) 2017年8月26日
普段生活しているとなかなかお目にかかることはないけれど、世の中には40%キーボードといって、キーが48個しかついていないキーボードがある。レイヤーを切り替えて1つのキーに複数の役割をアサインして使う。
Let's Splitはredditの/r/MechanicalKeyboards/のユーザWootpatoot氏によって作られた左右分離型40%キーボードで、PCBが市販されており、ダイオードやらスイッチやらを実装して組み立てることができる。
材料を購入する
ここを参考にして揃えるとよい。
Part | Cost | Shop |
---|---|---|
PCB | $10 | switchTop |
TRRS Jack *2 | $3 | switchTop |
Switches *60 | $15 | switchTop |
Keycaps | $49.06(送料込) | pimpmykeyboard |
Diodes 1N4148 *500 | \500 | 秋月 |
Tact Switch *2 | \10 | 秋月 |
Pro Micro *2 | \1,200 (送料込) | Amazon |
Plates | $65.17 (送料込) | Ponoko |
M3 Standoffs & Screws | $5.36 (送料込) | AliExpress 1 2 |
- 秋月の送料は500円
- switchTopの送料は$8.50
かかった費用の合計としては、このときのレートで19,919円(送料込)であった。このほか、はんだごてやら何やらと機材を揃えたので、3万程度にはなっていると思う。
タクトスイッチはPro MicroのRSTとGNDに実装して、ファームウェア焼き込み時のリセットボタンとして使う。
ケースはこの部分を参考に、Ponokoで注文した。letssplitv2.svg
はどこにも見当たらないのだが、QMK Firmwareのリポジトリの古いコミットに存在する(大分無理やりっぽい)。他、どこかにある感じだったら教えてください:bow:
$ git clone git@github.com:qmk/qmk_firmware.git $ cd qmk_firmware $ git checkout ca01d94005f67ec4fa9528353481faa622d949ae $ ls keyboards/lets_split/imgs/ left.stl 'lets split rev2 case.iges' letssplitv2.svg plate.stl right.stl split-keyboard-i2c-schematic.png split-keyboard-serial-schematic.png
ネジとスペーサは良いやつを買った方が良いと思う。今回買ったやつは使えないこともないのだけど、質が悪くて、ミリネジとインチネジがあっていない時みたいな舐め方をする。また、スペーサが10mm指定だけど、高くて良いのであればもう少し長めにしてネジも長いやつにしたほうが良いと思う。ネジが短すぎて留めるのに苦労した。
キーキャップは、単体で買うよりもTKL Base Setで買う方がお得だった。無刻印で良い場合は、とにかくx1のキーが48個以上あれば良い。
これとは別に、TRRSケーブルも購入した。
エスエスエーサービス [ 3.5mm4極ステレオミニケーブル ] オス - オス [10cm] ST35-AM01R4
- 出版社/メーカー: SSA Service
- 発売日: 2016/03/03
- メディア: エレクトロニクス
- この商品を含むブログを見る
また、ネジが若干出っ張っており安定感に欠けていたので、ゴム足も購入した。
3M しっかりつくクッションゴム 7.9x2.2mm 丸形 22粒 CS-01
- 出版社/メーカー: 3M(スリーエム)
- 発売日: 2015/04/20
- メディア: Tools & Hardware
- この商品を含むブログを見る
組み立てる
以下の順序で実装した。
- ダイオード
- TRRSジャック
- ピンヘッダ
- キースイッチ
- Pro Micro
インターネットにたくさん情報があるので、そっちを参考にすると良いと思う。気をつける点としては以下くらい?
- ダイオードの導通試験できればやりたい
- Prime Nowでテスター買った
- ダイオードは黒線(カソード)が四角い方(GND)になるように実装する
Double check your work. Black lines should be facing the square pad.
とのこと
- Pro Microを実装する前にキースイッチをはんだ付けして足を切る
- Pro Microの向き(上下)
あと、ネジ留めをする際に、Pro Micro横に設置するスペーサが基板の一部と干渉してうまく入らないことがあった。当該部分は結構ギリギリまで穴が合いていて脆い感じだったので、ニッパーで切り落としてスペーサを設置した。
ファームウェアを焼く
焼き込みにあたって、AVRの環境が必要。
$ brew tap osx-cross/avr $ brew install avr-gcc $ brew install avrdude
avr-gccは入れるのに30分弱くらいかかる。インストールを終えたら、QMK Firmwareを手元にcloneしてきて、自分のキーマップのディレクトリを切っておく。あとでカスタムするとして、とりあえずはdefaultからコピーする。
$ git clone git@github.com:qmk/qmk_firmware.git $ cd qmk_firmware/keyboards/lets_split $ cp -r keymaps/default keymaps/USER_NAME
avr-gccでhexファイルを生成してから、PCとPro MicroをmicroUSBケーブルで繋いでPro Microに焼き込む
$ make rev2-USER_NAME $ make rev2-USER_NAME-avrdude
という具合。make rev2-USER_NAME-avrdude
を実行するときに、Pro MicroのRSTとGNDをショートさせる必要がある。今回はタクトスイッチを実装していて、押すだけでショートできるようにしていた。モノによって素早く2回ショートだったり、長押しだったりするっぽい。自分のは長押しだった。
これでうまく動けば完成。動作確認はkeycode.infoで正しいkeycodeが取れているかどうかを見た。
参考
- 格子配列で左右分離型の超コンパクトなキーボード "Let's Split" を組み立てたよ - Voxel Highway
- Let's Splitを組み立てるきっかけになりました
- Let's Split を組み立てた話 | 遊舎工房
- この記事を読んでリセットボタン実装しました