"LALA50"は5×13の格子配列で、ロープロファイルキースイッチに対応した自作キーボードです。専用のアルミ削り出しケースでロープロファイルながらコトコトとした心地よい打鍵感を味わうことができます。またQMKファームウェアで動作し、RGBマトリックスの機能を活かして4パターンのキーレイアウトをLEDで教えてくれる仕組みを搭載しています。
本記事はビルドガイド&仕様ガイドとして、前半にLALA50の組み立て手順、後半に仕様を記載しています。LALA50の仕様だけ知りたいという方は、3.仕様をご参照ください。
更新履歴
2024/1/8 初版公開
組み立ての前に
- はんだごてを使用して制作します。はんだごての小手先は高温になり、やけどや火事の原因になりかねませんので取り扱いにはくれぐれもご注意ください。
- 作成の前に、当ビルドガイドに一通り目を通していただき、必要な物が充足しているかや作業順序についてお確かめください。
- 作成には数時間程度かかりますので時間に余裕をもってお取り掛かりください。
1.ご用意いただくもの
ご用意いただく必要があるものは、①BOOTHで頒布しているキット、②別途ご用意いただく部品、③はんだごてなどの組み立て工具です。それぞれBOOTHの販売ページに記載しておりますのでご確認ください。
またBOOTHにも記載しておりますが、別途アルミ削り出しケースを作成(調達)する必要があります。ケースの3Dモデルは、こちらから無料でダウンロードできます。
写真のものは、JLCPCBで以下のとおり調達しました。
- トップケース:Aluminum 6061,Anodizing-Sky Blue-Matte
- ボトムケース:Aluminum 6061,Anodizing-Silver-Matte
- スイッチプレート:Aluminum 6061
- バッジ:Aluminum 6061,Anodizing-Champagne-Matte
参考までに、作者がJLCPCBへ依頼したときはトップケースが$30、ボトムケースが$46、スイッチプレートが$24、バッジは$22くらいでした。正直バッジ小さくてもスイッチプレートと同額くらいの費用でコストパフォーマンスは良くないですね。積極的に作成しなくても良いでしょう。
2.組み立て
以下の手順で組み立てることを推奨いたします。順序を間違えるとリカバリーが難しい場合がありますので、組み立て前に一通り手順をご確認ください。
①ファームウェアの書き込み
Remapへアクセスし、ファームウェア(uf2ファイル)をダウンロードします。
Remapは、Web ブラウザーからQMKファームウェアを操作し、キーボードのキーマップを変更したり、LEDを設定したりできるウェブサイトです。キーボードカタログという機能からファームウェアをダウンロードできる仕組みとなっています。
ファイルをダウンロード後、XIAO RP2040の”BOOT”ボタンを押しながらUSBを接続します。するとブートモードとなりXIAO RP2040のドライブが表示されます。ここへダウンロードしたuf2ファイルをコピー(ドラッグ&ドロップ)します。すると自動的にリブートされ、ファームウェアが書き込まれます。
ファームウェアの書き込みは以上で終了です。
②LEDの取り付け
LALA50は、バックライトLEDとして各キースイッチの位置にLEDを取り付けることができます。
LEDには取り付ける向きがあり、”SK6812MINI-E”は”GND"にナナメの切り込みが入っています。
このナナメがどこに位置しているかによって正しい向きかどうかを判断します。またLEDの接続の仕組みとしてシリアル接続となっています。”4 DIN”(データイン)からLEDの信号を受け取り、"2 DOUT"(データアウト)へ信号を渡しています。
バックライトとして使用しますので、LEDを基板の裏面から取り付けます。基板の裏面からLEDの取り付け箇所を見るとGNDに目印となる白枠があります。LEDの正しい向きは次の写真のとおりです。
LEDを基板に載せて端子4か所をはんだ付けします。LEDは高温に弱いため、260度程度で、1か所ずつはんだ付けしては時間を空ける(その間に他のLEDをはんだ付けする)というのを繰り返すようにします。
※以下のはんだ付け工程のすべてで、溶接・溶着を円滑にしてくれるプリント基板用フラックスなどを使用するとはんだがのりやすいためお勧めです。
52個のLEDがはんだ付けできればこの工程は終了です。
③ダイオードの取り付け
表面実装タイプのダイオードを基板に取り付けます。ダイオードにも向きがあります。以下、違う基板の写真になりますが解説のため引用します。
ダイオードは小さく、ピンセットでつまみながら取り付けることになります。取り付け操作しやすいよう片側に予備はんだを行います。
ダイオードの向きに注意してピンセットでつまみながら、予備はんだをはんだごてで温め、スライドするようにダイオードをはんだづけします。
反対側をはんだ付けしてダイオードの取り付け完了です。
この要領で、すべてのダイオードをはんだ付けします。
⑤ホットスワップソケットの取り付け
ホットスワップソケットの正しい向きは、写真のような白い線が隠れるような向きとなります。
ただし、1か所だけ向きを反対にしたほうが良い箇所があります。中央上段のXIAO RP2040のピンヘッダが来る位置です。ここは向きを反対にしましょう。
ホットスワップソケットも予備はんだをしておく方がはんだ付けしやすいです。ソケットを正しい向きで乗せ、ピンセットで押さえながら、予備はんだを温めます。ソケットがストンと穴にはまるまで行います。
反対側もはんだ付けして完了です。
ソケットははんだのつけ忘れが割と多いので、つけ忘れがないかを全体的に確認しましょう。
④マイコンの取り付け
XIAO RP2040のはんだ付けを行います。ここでも注意があります。LALA50では、XIAO RP2040のピンをすべて使用しません。左右とも上側の6ピンのみを使用します。
6ピンのピンヘッダを準備します。12ピンや13ピンのピンヘッダの場合はニッパーなどで分割しましょう。
基板を裏面にし、ピンヘッダを差し込みます。(※ビルド時の写真を撮り忘れたので新品の基板になっていますが、ソケットやダイオードがはんだ付けされた状態の裏面からです)
XIAO RP2040をピンヘッダに乗せます。BOOTなどのボタンがある面を上にし、上から6つピンが刺さるように画像の向きです。向きとピンの位置を間違えないように注意してください。
この状態でMCUとピンヘッダをはんだ付けします。
続いて反対側(基板表面)をはんだ付けします。
はんだ付けが完了すれば基板は完成です。
⑤動作確認
USBケーブルを差し込み、動作を確認します。
<LEDの確認>
ファームウェアを書き込んだ初期の時点では、LEDは赤色に点灯します。もしLEDが点灯しない場合、下記について順に確認してみてください。
- はんだの量が足りていない、または多すぎて隣と接合している → はんだごてやはんだ吸い取り線を使いはんだの量を調整してください。
- LEDの取り付け向きが誤っている。 → はんだ吸い取り線を使い、慎重にはんだを除去してから向きを正しく取り付け直し、はんだ付けしてください
<キースイッチの確認>
現状はキースイッチを取り付けていないため、ピンセットでホットスワップソケットの両端を導通させて文字が表示されるかを確認します。
反応しない場合、下記について順に確認してみてください。
- ダイオードやホットスワップソケットのはんだづけがうまくできていない → はんだを少し足して(はんだづけして)動作確認してみてください
- ダイオードの向きが反対 → ダイオードのはんだをはんだ吸い取り線で除去し、予備のダイオードを正しい向きに取り付け、はんだ付けしてください
⑥スポンジの取り付け
ガスケットマウント用スポンジを取り付けます。
台紙からスポンジをはがします。
基板の上下に凸があるので貼り付けます。基板の表、裏の両方に貼り付けてください。
⑦ケースへの取り付け
スイッチプレートにキースイッチを取り付けつつ、PCBにスイッチから出ている2本のピンを挿入します。初めに4隅に取り付けてから他のキースイッチを埋めるようにします。
すべてのスイッチの取り付け後、ボトムケースに乗せます。
トップケースを取り付け、上下からネジ留めします。
最後にキーキャップを取り付けて完成です。
3.仕様
①デフォルトキーマップ
LALA50では格子配列によるキーマップの自由度の高さに着目し、「4つのキーマップを簡単に切り替え」というコンセプトでキーマップを作成してみました。
(1) モディファイアと中央に4キー
(2) 右にテンキー
(3) 中央にテンキー
(4) 左にテンキー
REMAPに登録されているキーマップは上記から若干変更しています。デフォルトキーマップはこちらからご覧ください。
この4つの基本形に対し、2つずつサブレイヤーを用意していますので、4×3で12レイヤーあります。加えて、共通的なキーコード(RGB マトリックス操作など)を配置するためのレイヤーが1つありますので、13レイヤーを使用することができます。
これらのレイアウトの切り替えは、次のキーコードにより行うことができます。
- F24:(1) モディファイアと中央に4キー
- F23:(2) 右にテンキー
- F22:(3) 中央にテンキー
- F21:(4) 左にテンキー
これらのキーを押すことでキーマップとRGBマトリックスのエフェクトが変わり、EEPROMにデフォルトキーマップとしてが保存されます。これによりキーボードの電源をオフにしてもデフォルトキーマップが変更された状態が維持されます。ただし、(4) 左にテンキーだけはうまくEEPROMに保存されない不具合があります(set_single_persistent_default_layerが動作しない)
ファームウェアも少々作り込んで、あらかじめ設定した4パターンのレイアウトをデフォルトレイヤーを変更しつつLEDをキーマップに合わせて点灯させるようにしてみました🌈
— Cerbekos↲ケルベコス (@Cerbekos00) 2023年11月24日
なぜかLeyer(7)以上はset_single_persistent_default_layerが失敗してしまうのが残念#LALA50 pic.twitter.com/GIh9NzCepR
もちろん、REMAPで自由にキーマップを変更することができます。
②TapDance
タップダンスは、一定時間内のタップ(キー押下)数により出力するキーコードを変える機能です。物理的な1つのキーに対し複数のキーを割り当てることができます。
LALA50では下の表のタップダンスを登録しています。REMAPではキーマップを自由に変えることができますが、タップダンスに戻す場合はカスタムキーコードを設定する必要があります。
キーコード | 1回タップ | 1回長押し | 2回タップ | 2回長押し | 2回タップして別のキーをタップ |
0x5700 | KC_Q | KC_LCTL | KC_ESC | caps_word_on | KC_Q×2 |
0x5701 | KC_COMM | KC_RCTL | KC_SCLN | KC_SCLN | KC_COMM×2 |
0x5702 | KC_DOT | KC_RSFT | KC_SCLN | KC_SCLN | KC_DOT×2 |
タップダンスについてのより詳細な挙動や仕様については、QMKドキュメントをご参照ください。
③CAPS_WORD
起動すると特定の文字が入力されるまでCAPSLOCKを働かせる機能です。左右シフトキーの同時押しで起動させることができます。スペースやEnterを押すか、何も押さないで10秒経過すると解除されます。
④レイヤーインジケータ
レイヤーオン、CapsLock状態のとき、一部のキーバックライトがカッコの中の色に変わります。
- Layer1(赤)
- Layer2(青)
- Layer3(緑)
- CapsLock/CapsWord(黄)
⑤RGB マトリックス
RGB MatrixはLEDを使った様々なエフェクトを点灯させる機能です。LEDの物理的な位置とキーマトリックスを紐づけて管理することで、LEDの物理的な位置によりグラデーションやウェーブ、キープレス・リリースされたキーに位置するLEDを判定して点灯させたりすることができます。
とにかくたくさん種類があるのでここでは紹介しませんが、エフェクト操作のキーコードについて記載します。
- RGB_TOG:エフェクトをオン/オフ
- RGB_MOD/RMOD:エフェクトを次へ/ひとつ前へ
- RGB_HUI/HUD:色相を増加/減少
- RGB_SPI/SPD:エフェクトの速度を増加/減少
これらのキーは、デフォルトキーマップではレイヤー12にアサインしています。
⑥ソース
ソースコードはこちらで公開しています。タップダンスを自分好みに創作したい場合などにご活用ください。
おわりに
やっぱりアルミケースいいですよね。心地よい打鍵音と打鍵感は病みつきになります。最近は仕事でもこればっかり使い続けているせいでロウスタッガードが使えない(指が忘れた)状況にまでなってしまいました。ただ、その心地よさの最大の要因は「Lofree X Kailh Customized Low Profile Switches」によるものかなと感じています。これは現時点で最高クラスの打鍵感を味わえるロープロファイルスイッチだと思います。私はMechkeysで買いましたが、最近はAmazonでも買えるようになっていますし、お勧めなのでぜひお試しあれ。
LALA50に話を戻すと、その設計に関して「Lofree Flow」の影響を強く受けています。そもそも本当は「Lofree Flow」で良かったのです。実は「Lofree Flow」を購入する気満々であと1クリックで購入完了というところまで進めましたが「本機は自由にキーマップが変えられないんよなぁ…」「(いつも思うけど)長いスペースバーはもう使えない体になってるんだよなぁ…」という2つの理由から購入を断念し、ならば自分で作ろう思い立ったことが設計を始めたきっかけでした。(この理由のお陰でいくつ高級キーボードを買わずにやり過ごすことができたか数えきれないので感謝している)
かくしてに出来上がったLALA50は「アルミ削り出し」「格子配列」「RGBマトリックス」「ガスケットマウント」そして「ロープロファイル」と、作者にとって初物づくしのキーボードでした。アルミの重量感がありつつ、持ち運びしやすいところや、自由度が高く入力しやすい配列がとてもお気に入りの1台となりました。みなさんもぜひ自由なキーマップとオリジナルRGBマトリックスエフェクトをつくったりして楽しんでいただければ幸いです。
最後に、気が向いた方は完成した"LALA50"をTwiiterで見せていただけると、作者として大変うれしく思います。(ハッシュタグは#LALA50でお願いします!)
それでは、良いキーボードライフを。