だいぶ前に買った自作キーボードキット「Attack25」をようやく完成させた。
- 買ったときの記事
- 自作キーボードほどわかりやすい沼はない(https://ima.hatenablog.jp/entry/2019/01/09/233000)
ビルドガイドと、「VIA」というキーマップを簡単に変更できるファームウェアの記事はこちら。
- Attack25 キット内容&ビルドガイド | 25KEYS(http://www.sho-k.co.uk/tech/821.html)
- Attack25 VIA対応ファーム | 25KEYS(http://www.sho-k.co.uk/tech/2048.html)
組み立て終わってみると、下のような順序で進めるのがいいような気がした。
- Pro Microのもげ対策
- ビルドガイド4.「Pro Microにファームウェアを書き込む」
- ビルドガイド3-2.「コンスルーの実装」
- ビルドガイド1.「RGB LEDの実装」
- LEDのチェック(随時)
- ビルドガイド2.「ダイオードの実装」
- ビルドガイド7.「テスト」
- ビルドガイド6.「リセットスイッチの実装」
- ビルドガイド8.「スペーサーの取り付け」
- (ビルドガイド9.「スタビライザーの取り付け」)
- ビルドガイド10.「スイッチの実装」
- ビルドガイド11.「テスト」
- ビルドガイド12.「ボトムプレートの取り付け」
この手順で組み立てながら、追加情報を書いていきます。
部品の取り付けの完了イメージ
基板のどちら側に各種の部品を取り付ければいいかの参考にどうぞ。
- 2枚の基板を表向きにするとこう
- 2枚の基板を裏向きにするとこう
Pro Microのもげ対策
ダイソーの2液エポキシ接着剤を購入。
コネクタ(レセプタクルという)を後ろから囲むように盛り付ける。接着剤がレセプタクルの内部に入り込まないように注意。
これが固まるとレセプタクルの「もげ」を防いでくれる。
その上でマグネット式のUSBケーブルを使う。Amazonではたとえばこれ。
買ったのはAliExpressにあったこれ。「Silver 1m for micro」というのがいま381円。
- ショップ: PZOZ Official Store
- 価格: 381円(送料込)※記事掲載時の価格です
Attack25側はこうなる。
USBポートに小さなコネクタを差し込んでおき、USBケーブルはそこに磁石でパチンとくっつく。強く引っ張ると外れるようになっている。MacのMagSafeみたいな感じ。
ファームウェアの書き込み(ビルドガイド4.「Pro Microにファームウェアを書き込む」)
Pro Microにファームウェアを入れれば、LEDのチェックなどができるようになる。
VIA対応のhexファイル(→ファイルへの直接リンク)が下のページの「ビルド環境を入れるのが面倒くさい人のためにhexを置いておきます」にある。
- Attack25 VIA対応ファーム | 25KEYS(http://www.sho-k.co.uk/tech/2048.html)
これをQMK Toolboxから書き込めばよい。
- QMK Toolboxの解説記事:(初心者編)自作キーボードにファームウェアを書き込む - 自作キーボード温泉街の歩き方(https://salicylic-acid3.hatenablog.com/entry/qmk-toolbox)
もしファームウェアを自分でビルドする環境を構築するなら、MSYS2をインストールする。
- MSYS2(https://www.msys2.org/)
そこからは下のドキュメントに書かれている。
- qmk_firmware/QMK 環境の構築 - GitHub(https://github.com/qmk/qmk_firmware/blob/master/docs/ja/newbs_getting_started.md)
なのだけど自分の場合、Windows用とされているコマンドを入れてもエラーが出てしまった。
入れるコマンドはこれ。
pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip python3 -m pip install qmk
エラーメッセージはこう。
$ python3 -m pip install qmk bash: python3: コマンドが見つかりません
Pythonがインストールされていないみたい。解決までにいろいろ試したのでこれが正しいか確証がないが、たぶん以下のコマンドを入れてから上のコマンドを再度実行したらうまくいった気がする。
pacman -S mingw-w64-x86_64-python3
- 参考にした別のページ(こちらは情報が古いかも)
- プログラマーではない人向けのQMK Firmware入門 - Qiita(https://qiita.com/cactusman/items/ac41993d1682c6d8a12e)
さてではファームウェアをビルドしましょう、とやったら今度は別のエラーが出た。
$ make attack25:via:flash Making attack25/attack25/rev1 with keymap via and target flash tmk_core/protocol/lufa.mk:14: lib/lufa/LUFA/makefile: No such file or directory make[1]: *** ターゲット 'lib/lufa/LUFA/makefile' を make するルールがありません. 中止. Make finished with errors make: *** [Makefile:584: attack25:via:flash] エラー 1
「qmk_firmware\lib\lufa」ディレクトリを見たら空っぽだった。なんで? 以下のページを参考に、そこにlufaを入れたらビルドが通るようになった。
- 【DZ60】ファームウェアをmakeできない - 蟹好きのメモ(https://r7cancer.hatenablog.com/entry/2019/10/18/153458)
lufaのダウンロード元は以下。
- qmk/lufa: LUFA - the Lightweight USB Framework for AVRs.(https://github.com/qmk/lufa)
コンスルーのはんだ付け(ビルドガイド3-2.「コンスルーの実装」)
ここからははんだ付けをしていく。はんだの煙をなるべく吸わずにすむように、吸煙器を用意した。HAKKOの吸煙器はいまAmazonで8,244円。
- [HAKKO] | 吸煙器 | HAKKO FA-400(http://www.hakko.com/japan/products/hakko_fa400_set.html)
フィルターとUSBファンを調達してお手軽な吸煙器を作る記事を読んだ。
- はんだ吸煙器を安価に作るの巻 | 25KEYS(http://www.sho-k.co.uk/tech/646.html)
これを参考に、120ミリのUSBファンとHAKKOのフィルタを調達した。
ファンはGROOVYの「BIG-FAN120U for Men」を買った。メーカー名が違うけどこれがたぶん同じ商品だと思う。いまAmazonで859円。
フィルターはHAKKOの5枚組を買った。いまAmazonで1,743円。
フィルターを輪ゴムでUSBファンに取り付ければはんだ吸煙器になる。ちゃんとはんだの煙を吸ってくれた。
コンスルーはこの向きで基板に押し込む。(コンスルーは基板にははんだ付けしない)
詳しくは以下。
小さい窓がPro Micro寄りになります。 また、実装時には二本ともに小さい窓が同じ方向を向くようにしてください。
Helixベータ ビルドガイド
そこにPro Microを裏返しに置き、コンスルーをPro Microにはんだ付けする。(コンスルーは基板にははんだ付けしない)
はんだ付け前。
はんだ付け後。
で、Pro Microはいったん基板から取り外す。
LEDのはんだ付け(ビルドガイド1.「RGB LEDの実装」)
※このキットは旧型の基板(rev.1b)で、現在はLEDをはんだ付けしやすい「TAB版」に改良されています。そのほかの変更点は「ATTACK25 True25新基板完成です | 25KEYS」と「ATTACK25 True25 TAB付LED対応版 | 25KEYS」をご覧ください
LEDをバックライトとして使うなら、LEDの発光面が基板上の「ATTACK25」のロゴ側に来るようにはんだ付けする。
LEDは熱に弱く、はんだごての温度を220度~250度と低めにするように書いてある。はんだ付けに使ったはんだごて(gootのPX201)は一番低い温度設定が250度なのでLEDが大丈夫かどうか心配だった。C型のこて先(円柱を斜めにカットした形状)にはんだを溶かして、手早く広げるようにはんだ付けした。はんだ付けの前にはんだ付けするところにフラックスを塗っておくと、基板上の金属部分にだけはんだが乗るようになって時間をかけずにはんだ付けできる。はんだ付けが終わったら無水アルコールやフラックスリムーバーを綿棒につけてフラックスを除去する。
- PX-201 | 太洋電機産業株式会社(http://www.goot.jp/handakote/px-201/)
(いまAmazonで2個セットでない商品は「送料900円」だった。危ない)
- H-722 / H-728 フラックス 【HOZAN】 ホーザン株式会社(https://www.hozan.co.jp/catalog/Soldering_Tools/H-722_728.html)
LEDを点灯させてチェック
ファームウェア入りのPro Microを基板に取り付けてUSBにつなぐとLEDが全部点灯する(はず。自分はダイオードを取り付けたあとに点灯するか試した)。点灯しないLEDがあったらはんだ付けの不良がないかなどをチェックする。
点灯の不良はなくてホッ。
以下は点灯しないLEDがある場合に参考になるかもしれないページ。
- [自作キーボード]LEDがつかない/光らないときに見るページ - Qiita(https://qiita.com/tez/items/03c2daec5d3aed8dd558)
- コルネキーボードを作りました ~LED取り付けに四苦八苦記~ | キオクノロンダリング(https://marksard.github.io/2018/08/04/make-the-crkbd/)
- 自作キーボードでLEDが点灯しない時のテスト方法と対処方法 | 閑古鳥ブログ(https://kankodori-blog.com/?p=589)
ダイオードのはんだ付け(ビルドガイド2.「ダイオードの実装」)
ダイオードの足を曲げてスルーホールに通し、余分な足をニッパーで切ってからはんだ付けした。はんだ付けしてから足を切ると、そのときの衝撃でのちのちはんだ付け部分にクラック(ひび)が入りやすいと聞いたことがある。
ダイオードの足の折り曲げには適当な厚みの本が便利。自分の蔵書の中ではブルボン小林の『ぐっとくる題名』がちょうどよかった。本の厚さは実測で9ミリ。
ダイオードを基板に通したら裏返してマスキングテープで固定する。こうすれば足を切っても基板からポロリと落ちることはない。
25個のダイオードを取り付け終わった様子。
USBケーブルをつないでチェック(ビルドガイド7.「テスト」)
各キーがきちんと入力されるかどうか確認するには、VIAの「KEY TESTER」を使うのが便利。VIAはあとでキーマップの編集にも使うのでインストールしておくとよい。
- VIAのダウンロードはこちらから:Releases · the-via/releases(https://github.com/the-via/releases/releases)
- VIAの解説:(初心者編)VIAを使ってキーマップを書き換えよう - 自作キーボード温泉街の歩き方(https://salicylic-acid3.hatenablog.com/entry/via-manual)
VIAを起動したら[File]-[Import Keymap]でAttack25のjsonファイルを読み込む。Attack25のjsonファイルはファームウェアと同じ以下のページにある。
- Attack25 VIA対応ファーム | 25KEYS(http://www.sho-k.co.uk/tech/2048.html)
「KEY TESTER」をクリックしたときフルキーボードが表示されたら、画面下の「Test Matrix」をオンにすると上のような25キーだけになる。
「KEY TESTER」では上のように、押されたキーの色が変わる。上の画像は0~9のキーを押したときの様子。KEY TESTERの状態でほかのアプリケーションに切り替えてもVIAのKEY TESTERは機能する。
Attack25のデフォルトのキーマップは以下。
[ScrollLock][PrintScreen][Delete]はそれぞれ、レイヤー2~4の入力のためのキーを兼ねている。これらのキーを押しながらほかのキーを押すと、対応するレイヤーのキーが入力される。たとえば[ScrollLock]を押しながら[1]を押すと[F1]が入力されるといった具合。
リセットスイッチのはんだ付け(ビルドガイド6.「リセットスイッチの実装」)
リセットスイッチはどちら向きではんだ付けしてもよい。
キースイッチのはんだ付け(ビルドガイド10.「スイッチの実装」)
ここで秘密兵器が登場する。プラモ材料の通販サイト「G PARTS」で売られている「ゴールドシンプルモールド(S)」。ジオン驚異のメカニズムである。
- ゴールドシンプルモールド 20個入(各種) - G PARTS [ジーパーツ] * 模型工具・ツール・プラモデル改造パーツ・メタルパーツ・ガンプラ改造パーツ他模型材料専門通販ショップ~(https://shop-gparts.com/?pid=9838574)
これがベリリウムの代わりになるという話を読んで、お手軽にキースイッチを交換できるようにしたくて買ってみたのだった。
@GPARTS_Masterさんからキースイッチに履かせられるシンプルモールドが届きました!模型やさんのパーツなんですがこれは使える…!(325個で(内、5個オマケ)送料込3,716円でした)これでホットスワップ非対応積みPCBの工作が捗る🤗 pic.twitter.com/pFYe4oHWqp
— みにまるⰊ (@raidzero) April 15, 2019
ひとつ前の記事「はんだ吸い取り器があれば自作キーボードのソケット化にはこだわらなくていいかも」ではベリリウムでのソケット化にあまり積極的でない書き方をしている。でも結局Attack25はソケット化した。上の記事ではんだ吸い取り器を使ってキースイッチを取り外してみたら案外大変でないしきれいに取れるとわかったが、ゴールドシンプルモールドを買ったのはそれよりだいぶ前だったので、せっかくだから使おうと思ったのだった。
それに「ゴールドシンプルモールド」はベリリウムよりだいぶお安くて、20個(キースイッチ10個分)で200円。普通のソケットが遊舎工房で10個150円だからそう変わらない。
一方で、Attack25に使おうと思っていたキースイッチがゴールドシンプルモールドに適合しないこともわかった。
Attack25用に買ったキースイッチはKailh Box Royalである。
- Kailh Box Royal(10個入り) | 遊舎工房(https://yushakobo.jp/shop/kailh-box-royal/)Kailh Box Royal(10個入り)
このキースイッチのピンにゴールドシンプルモールドをつけたとき、中央に近いほうのピン(下の写真では手前側)がスカスカだなーとは思っていた。この状態でひっくり返すと、そちらのゴールドシンプルモールドだけピンから外れる程度のゆるさである。
でもまあ大丈夫でしょうとやってみた。トッププレートにキースイッチをはめ込み、裏返してすべてのキースイッチのピンにゴールドシンプルモールドを差し込む。
その上に基板をそっと置いて、すべてのピン(とゴールドシンプルモールド)が基板の穴から出ていることを確認する。(ここでキーを押してちゃんと入力されるかチェックしておけばよかった)
ゴールドシンプルモールドの中にはんだが入らないよう注意しながらはんだ付けした。
最終テスト(ビルドガイド11.「テスト」)
ところがです。これでキーボードとしては完成~とうきうきしながらUSBケーブルをつないでみると多くのキーが反応しない。導通が安定せず、1回だけ押したつもりでも連続して入力されてしまう(=チャタリングが起きる)キーもある。テスターで導通をチェックしながら、入力に不安があるキーを取り外していったらこうなった。
全然だめじゃん! じゃあどうしよう。スカスカなほうのピンにちょっとだけはんだを盛る? あるいは、スカスカするほうのゴールドシンプルモールドだけ取り外して、そこはキースイッチを直接はんだ付けする?
とここで、別のキースイッチならどうだろうと思いついた。前の記事で取り外したCherry MXの黒軸がある。これに交換してみたところすべてのキーが安定して導通した。やったー。
- キースイッチの調達元:Majestouch Linear「マジェスタッチリニア」 日本語108キーボード・かななし・黒 黒軸モデル - DIATEC|ダイヤテック株式会社 製品情報(http://www.diatec.co.jp/products/det.php?prod_c=442)
これで使われているキースイッチは遊舎工房だとこれですね。
- CHERRY MX BLACK キースイッチ(黒軸/3ピン/61.2g/リニア/10個) | ...(https://talpkeyboard.net/items/5fab5e95df51591d0fa83950)
ゴールドシンプルモールドはキースイッチを選ぶみたい
先ほどのツイートには続きがある。
手持ちのいけるスイッチ
— みにまるⰊ (@raidzero) April 15, 2019
純正MX赤、銀、Kailh CreamSwitch。
加工が必要なのはGATERON系。足が若干太い。
同じKailhのキースイッチでもCreamSwitchは問題がないみたい。こちらで使おうとしたBox Royalとはピン部分のパーツが違うのだろうか。それからGateronのキースイッチはピンが太いのね。遊舎工房のMill-Max ソケットの商品説明でも「Gateron製スイッチは入りにくいことがありますのでご了承ください」と書かれている。
ボトムプレートを取り付ける(ビルドガイド12.「ボトムプレートの取り付け」)
ボトムプレートを取り付けてよく見ると、少したわんでいるようだ。(下の写真はキースイッチをCherry MXに交換する前のもの)
Pro Microのピンがボトムプレートに当たっている。ビルドガイドの「3-2.コンスルーの実装」にこう書かれていた。
アクリルボトムプレートとProMicroからはみ出たコンスルーの足部分が干渉することがあります。この場合は、はみ出したコンスルーをニッパーなどでカットして対処してください。
Attack25 キット内容&ビルドガイド | 25KEYS
このあと付属のゴム足をつければ、ボトムプレートがたわんでいてもグラグラすることはない。ピンはカットしなかった。
これで完成だ! 当初予定していたキースイッチを使えなかったのは残念だが、モノが完成する喜びが上回った。
キーキャップはおもにキースイッチと同じくMajestouchから。紺色のキーキャップはイベントでもらったもの、赤いキーキャップは遊舎工房で買ったDSAプロファイル。
- 同等品はこちら:【通販限定】Majestouch 交換用カラーキーキャップセット 日本語108キー・かななし・ダークグレー - DIATEC|ダイヤテック株式会社 オンラインショップ(https://www.diatec.co.jp/shop/det.php?prod_c=3716)
ところでAttack25はおもにテンキーとして使うので電卓を内蔵させたい。OLEDの画面をつけて、ちょっとした計算をできるようにしたい。Pro MicroのI²Cピンが空いていて、OLEDをつなげられることはわかっている。そして計算結果をパソコンに入力できるとなおよい。しかしファームウェアをどうプログラミングするかはまったく知らないので、そこから勉強しないと。
この記事はAttack25で書きました…ということはなくて、おもにTK-FBP044(普通の市販のキーボード)を使い、Attack25は数字の入力などで補助的に、かつちょっとむりやり使いました。
- TK-FBP044を買ったときの記事:新しいキーボードを買う(https://ima.hatenablog.jp/entry/20141224/TKFBP044)
次はTK-FBP044を置き換えるキーボードを作りたい。分割式にして中央にAttack25を置くつもり。