たのしい人生

meishi2 keyboard ビルドガイド

meishi2 - The updated micro macro keyboard をご購入、もしくはリポジトリから製造いただきありがとうございます。この記事では、meishi2 keyboard の組み立て方を簡単に紹介します。

必要なパーツ

項目 数量
meishi2 PCB 1
Pro Micro 1
ダイオード(1N4148) 4
リセット用タクトスイッチ(5 mm ピッチ 2 本足) 1
クッションラバーシール 4
キースイッチ (Cherry MX 互換 / Kailh Choc) 4
キーキャップ 4

※キースイッチとキーキャップは別売りです

(オプション) 組み立てに必要・あると便利な道具

温度調節機能が便利(ない安物は温度が高すぎてはんだづけが難しいし基板焼いちゃいやすい)。加温も早くてよいです。

コテ台も安いのもあるんだけど、熱いものを扱うのでちゃんと固定できる・保護できるものがおすすめ。これはコテ先クリーナーもついていて、スポンジに水をつけるタイプと比べてもめちゃめちゃ扱いやすいので総合的にお得だと思います。

はんだ吸取り器があったほうがよい場合も多いんだけれど、自作キーボード、多分そんなにはんだをミスったりするような複雑な部分もないし、とりあえずはこれだけあれば十分。

バイスの余った脚を切るのに必要。

これぐらいあればこのキーボードを作る分には十分だと思います。

はんだづけ

はんだづけは、合金であるはんだ線を高温で溶かして、2 つの金属接点を電気的に接続して固定する方法です。はんだは接着剤ではなく、きちんと加熱して接点同士を合金として接合しないと正しく動作しないです。 というと難しそうですが、 はんだは温度が高い方に流れる という基本ルールさえ押さえれば基本は大丈夫です。

はんだづけする際は、上記の はんだは温度が高い方に流れる の原則に沿って、まずは繋ぎたいパッド (写真の丸い輪っか状の銀色の部分) と端子 (写真のコンスルーの金色の棒) をはんだごてのコテ先で加熱します。このとき、母材 (繋ぎたいパッドと端子) を温めるのが目的なので、まだはんだ線は 溶かしません 。3 ~ 5 秒程度、十分に母材を温めてから、はんだ線をコテ先につけてはんだを溶かして流します。この時、母材が十分に温まっていれば、自然とはんだが母材に吸い付くように流れます。富士山型になる程度、軽くはんだを流し込んだら、はんだ線を離し、その後にはんだごてを離します。

1. まず母材を温める

2. はんだ線をつけてはんだを流す

組み立て

基本的には、すべてのパーツを正しく配置して、はんだづけしてキーキャップ・脚シールをつけるだけです。はんだづけの基本は背の低いパーツから、なのでその順番で付けていきます。パーツはロゴマークがついている側につけていきます。

完成図

ダイオード

ダイオードの向き

ダイオードという部品は基本的には一方向にだけ電流を流す整流用に使われます。なので、どちらに電流を流すかという 向き の概念があります。この向きを間違えると正しく動作しません。

写真のダイオードの右側、黒い線が入っている側が カソード、逆に入っていない側が アノード といい、アノード側からカソード側に向けて電流が流れます。

キーボードに固定する際には、この黒線の入ったカソード側を、基板の白線のある側、四角いパッド側に向けてセットしてください。

ダイオードを差し込むときは、ダイオードの根元付近でリード (銀色の線の部分) を折り曲げて、スルーホール (銀色の穴) に通してください。通した後、軽くハの字型にリードを広げると固定されてはんだづけがしやすくなります。

タクトスイッチ

続いて、タクトスイッチをはんだづけします。タクトスイッチには向きがないので、スルーホールに通してはんだづけをするだけでオッケーです。

Pro Micro

Pro Micro の固定方向

上記写真のように、ロゴマークが入っている面を上にして、Pro Micro の USB 端子が基板の外に向くように設置します。

ピンヘッダの接続

通常のピンヘッダを用いてはんだづけで基板と接続する方法と、コンスルーと呼ばれる抜き差し可能なピンヘッダを用いて基板と接続する方法の 2 種類があります。付属するピンヘッダによってそれぞれ以下の章を参照してください。

通常のピンヘッダ

写真のように Pro Micro の部品実装面が上になるようにピンヘッダをはんだづけします。ピンヘッダをはんだづけする際は、基板にピンヘッダをテープ等で仮止めして作業すると Pro Micro に対してピンヘッダが斜めにならずに固定しやすいです。

裏面も同様にはんだづけします。

コンスル

コンスルーの固定方向

遊舎工房で販売されている meishi2 キットには、コンスルーという基板にはんだづけしなくても抜き差しが可能になるパーツが付属しています。 (Update) 2022 年現在コンスルーの入手が非常に困難になっており、コンスルーは付属しなくなっています。 コンスルーがある場合は Pro Micro にコンスルーをはんだづけします。コンスルーを Pro Micro の部品実装面と逆側になるようにはんだづけします。

コンスルーには向きがあり、金色の軸が側面から見える側 (窓側) が同じ向きになるように、また窓が端子に近い側を Pro Micro 側になるように揃えます。

キースイッチの固定

この基板は Cherry MX / Kailh Low Profile 両対応仕様です。3 pin 仕様のキースイッチ (固定用の脚が出ていないもの) だと多少の遊びがあり斜めにキーを固定できてしまいます。そのため、5 pin 仕様のキースイッチ、もしくは、はんだづけする際に、セロハンテープ等でスイッチの向きを固定してはんだづけすることをおすすめします。

5 pin 仕様のキースイッチ

完成状態

表面

裏面

ファームウェア書き込み

組み立てが完了したらファームウェアをビルドして書き込みます。meishi2 keyboard では QMK Firmware が利用できます。

QMK Firmware

ここでは詳細は省きつつ、ファームウェアをビルドしてインストールする手順と、キーマップの変更方法を「黒い画面」を使わない方法と、CUI で行う方法の 2 つで簡単に紹介します。

従来のファームウェアビルド・書き込み方法は後半の章に移動しました

2021/11/18 Remap のファームウェア書き込み機能とキーマップ書き換え機能に対応しました! Google Chrome 等の対応ブラウザでファームウェアの書き込み・キーマップの変更が可能です!🎉

Remap meishi2 カタログページ

meishi2 を PC に接続した状態で、Remap カタログページの FIRMWARE タブ → FLASHファームウェアを書き込むことが出来ます。

FLASH ボタンを押したあと書き込み方法のダイアログが表示されるので、Firmwaremeishi2_via for meishi2、Bootloader が caterina になっているのを確認して FLASH を押します。

FLASH を押すと Google Chrome 上で serial port を選ぶダイアログが表示されます。

そうしたら meishi2 のリセットボタンを押してください。

リセットボタンを押してブートローダーが書き込みモードになると Google Chrome の serial port ダイアログに Arduino Micro (やそれに類する名前) があるはずなのでそれを選択し Connect を押します。

書き込みが正常に完了したら、USB を抜き差しすると PC に meishi2 キーボードとして認識されます。

(2023 9/11 追記) Remap が QMK 0.22 系に対応し、0.18 系のキーマップ書き換え対応は https://qmk018.remap-keys.app になりました。現在 Remap にホストされている Ergo42 / meishi2 のファームウェアは 0.18 系なので、キーマップの書き換えは https://qmk018.remap-keys.app を利用してください。

近いうちに 0.22 系のファームウェアを Remap にアップロード予定です。

お疲れ様でした

ここまで来たらあなたも立派な自作キーボーダーです。おそらくここまでたどり着けたなら、他のより高度な自作キーボードについてももう自分で作ることができるようになっていると思います。

しかしここで触れた内容は自作キーボードのほんの一部に過ぎません。キーキャップやキースイッチにこだわるのも楽しいですし、QMK firmware にはここでは紹介しきれなかったたくさんの機能があります。ぜひ、このキーボードをそういった次のキーボード道の道標として利用していただければ幸いです。

ようこそ自作キーボード沼へ!

Help

組み立ての際に困ることやトラブル等あるかと思います。その際には Twitter@Biacco42 にリプライを飛ばしていただくか、Self Made Keyboard in Japan Discord server で相談していただければ対応します。特に Self Made Keyboard in Japan Discord server には私以外にも自作キーボードを製作している方がたくさんいるので、より多くのアドバイスを得られるかと思います。大変気楽なコミュニティですので、ぜひこちらの利用も検討してください。

おわり

従来のファームウェアビルド方法と書き換え方法は以下の章を参照してください。

従来のファームウェアビルド・書き込み方法

「黒い画面」を使わずにビルド・書き込み

なんと 2019 年にもなると、黒い画面を使わなくてもファームウェアをビルド・書き込みできるようになりました🎉

手順が、以下の動画で紹介されているので参考にしてみてください。動画中で Ergo42 としているところを meishi2 に読み替えるだけでオッケー (なはず) です。

また、サリチル酸さんの入門記事もまとまっていておすすめ です。


基礎からわかる!自キ入門講座 第12回「ファームウェアのカスタマイズ」

CUI でビルド・書き込み

QMK firmware documentation でデフォルトで紹介されている方法はこちらになります。CUI に慣れている人は、マクロ機能等自由な拡張ができる他、内部で何が起こっているかわかりやすくなるので、やってみるのも一興です。

ファームウェアの実装とビルドの詳細については QMK firmware documentation のドキュメントを参照してください。

環境構築

Git

まず Git が必要です。Windows / Mac / Linux 環境でそれぞれにインストール方法が異なるため、それぞれのプラットフォームの Git をインストールしてください。

Mac でかつ brew がインストールされていれば (brew についてはここでは説明しません)

$ brew install git

DebianLinux であれば

$ sudo apt install git

等でインストールできます。とりあえずファームウェアのビルドの目的だけであればこれで大丈夫です。

Git が準備できたら、ソースをダウンロードします。

ソースコードをダウンロードしたいディレクトリに移動して

$ git clone https://github.com/qmk/qmk_firmware.git

ソースコードを取得できます。

Build 環境

Mac / Linux の場合

QMK のプロジェクトルート配下の util/qmk_install.sh を実行することで、ビルドに必要な依存が解決されます。

$ ./util/qmk_install.sh

Linux の場合だと特権を要求されるので、

$ sudo ./util/qmk_install.sh

としてください。

Windows の場合

こちらの QMK-MSYSを使ってWindows上に最速でqmk環境を構築する を参照して環境構築をしてください。

ファームウェアのビルドと書き込み

組み立てた meishi2 キーボードを USB ケーブルで PC に接続しておいてください。

ビルド環境が構築できたら、ファームウェアをビルドします。

$ make biacco42/meishi2:default:avrdude

でビルドとインストールをいっぺんにできます。途中リセットしろよという旨のメッセージが出るので、そこでリセットボタンを 1 回または 2 回連続で押します(ブートローダーによって挙動が異なるようです)。リセットを検出すると自動的に書き込みが始まります。

Linux 環境の場合は書き込みに特権が必要かもしれないので、権限不足で書き込めなかった場合は

$ sudo make biacco42/meishi2:default:avrdude

としてください。

動作の確認

正常にファームウェアが書き込めたら、キーボードとして認識されて動作するはずです。default キーマップでは左から順に Ctrl-z Ctrl-x Ctrl-c Ctrl-v の配置になっています。動作が確認できたら meishi2 キーボードの完成です!お疲れ様でした。コピペがはかどりますね。

ファームウェアの改造

以上の工程でキーボードは完成しましたが、せっかくの自作キーボードですからコピペ以外にも使えるようにしたくなります。そのためにはファームウェアの改造が必要になります。その方法を簡単に紹介します。

meishi2 キーボードのキーマップを変更するには、キーマップが記述されている <QMK firmware root>/keyboards/biacco42/meishi2/keymaps/default/keymap.c を編集します。また、新たに名前をつけてキーマップを作成したい場合は default ディレクトリをコピーして適当に名前を変えて keymap.c を編集してください。その際ビルドコマンドは

$ make biacco42/meishi2:<your keymap directory name>

になります。

keymap.c で実際にキーマップが定義されているのは

const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[0] = KEYMAP( /* Base */
  LCTL(KC_Z),  LCTL(KC_X),  LCTL(KC_C), LCTL(KC_V) \
),
};

の部分、特に LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V) の部分になります。これが左から順番にキーの割当を表しています。簡単ですね。

このキーマップに指定するキーの一覧については QMK firmware documentation の Keycodes Overview に一覧があります。初期状態だと、LCTL(KC_Z) のような形で、Ctrl と Z の同時押しを表現しています。 LCTL を外せば単なる Z キーになりますし、MEH(kc) とすれば Ctrl+Alt+Shift+kc が一発で入力できます。その他にもメディアキー(音量操作等)や電源キー(KC_SYSTEM_POWER)等の便利キー系もあるので、いろいろ試してみてください。

また、ここでは説明しませんが、マクロ機能もあり、あるキーが押されたら一定の複雑なキーコードや文字列を送信することもできます。5000 兆円欲しい!キーボードとか。

Amazon.co.jpアソシエイト