FDkeeb V2 ビルドガイド(組立手順説明書)

自作キーボードキット「FDkeeb V2」のビルドガイド(組立手順説明書)です。

目次


0. はじめに

自作キーボードキット「FDkeeb V2」をお買い上げいただいた皆様、ありがとうございます。
組み立て前に、このビルドガイドに一通り目を通していただくようお願いします。
不明な点がありましたら、ぜひお知らせください。お知らせいただく際は、当記事最下部にあるDISQUSにコメントしていただくか、Twitter(現X)で @alg0002 にメンションを飛ばしてください。

基本的に、数字の順序どおりに読み作業を進めてください。

例1:
4-1. Pi PicoにPRK Firmware書き込み
4-2. Pi Picoにテスト用keymap.rb書き込み
→4-1.の次に4-2.を行ってください

ただし、数字ではなく英字が出てくることがあります。その場合、いずれかの作業を選んで行ってください。

例2:
4-A. ダイオード(スルーホールタイプ)のはんだ付け
4-B. ダイオード(表面実装タイプ)のはんだ付け
→4-A.と4-B.のいずれかのみを行ってください


1. 必要な部品を確認する

1-1. キットに含まれる部品

キットに含まれる部品です。この表の通りの部品が揃っているかどうか確認してください。
もし欠品があった場合、お早めに購入ショップまでご連絡ください。

名称 数量 当記事での略称 備考
トッププレート 1 「Top」または「Top(T)」と書いてあります
ミドルプレート 2 「Middle」または「Middle(T)」と書いてあり、厚みの異なるものが2枚あります
実装基板 1 「Assemble」または「Assemble(T)」と書いてあります
ボトムプレート 2 「Bottom」と書いてあり、同じものが2枚あります
ボトムカバープレート 1 「Bottom_cover」と書いてあります
タクトスイッチ 1 秋月電子のTVAF06-A020B-Rです
低頭ねじ 8 ねじ 長さ3mmのM2低頭ねじです
スペーサー 4 長さ5mmのM2両メネジスペーサーです
ゴム足 4 直径8mm高さ2mmのゴム足です

※一部の部品は予備として余分に入っていることがあります

1-2. キットに含まれない必須部品

キットに含まれませんが、完成に必要な部品の一覧です。
これらの部品がないとキーボードとして機能しませんので、別途お買い求めください。
代表的な購入先のURLも載せましたので、参考にしてください。

名称 数量 購入先 当記事での略称 備考
Waveshare RP2040-Zero 1 スイッチサイエンス
千石電商
RP2040-Zero ピンソケットがはんだ付けされていないものを使用してください
A to C USBケーブル 1 遊舎工房
Daily Craft Keyboard
USBケーブル 充電専用ではなく通信ができるものを使用してください

1-3. キットに含まれないオプション部品

キットに含まれず、完成に必須というわけでもない部品の一覧です。
必須ではありませんが、あると楽しいかもしれません。

名称 数量 購入先 当記事での略称 備考
マスキングテープ 6mm黒 1 ヨドバシ・ドット・コム マステ黒6mm

2. 必要な器具や消耗品を調達する

組み立てに必要となるであろう器具や消耗品を確認し、調達します。
代表的な購入先のURL(Amazon.co.jpのものはアフィリエイトリンクです)も載せましたので、参考にしてください。
※すべてが必須というわけではありませんので、当ガイドを見て必要と判断したものを用意してください

名称 購入先 当記事での略称 備考
はんだこて Amazon.co.jp 温度が調節できるものがお勧め
こて台 Amazon.co.jp
はんだ Amazon.co.jp
はんだ吸い取り線 Amazon.co.jp はんだ付けに失敗したときに使用します
はんだ付け作業用マット Amazon.co.jp
ピンセット Amazon.co.jp 小さい部品をつまむのに使いますが、なくてもいいかも
マスキングテープ Amazon.co.jp マステ 一般的なマスキングテープでOKです
ドライバー Amazon.co.jp
パソコン Amazon.co.jp ファームウェアの書き込みに使用します
テスター 遊舎工房 キーボードがうまく動作しない場合の原因調査に使用します
油性ペン(黒) Amazon.co.jp 改めて購入しなくても、ご家庭にあるもので十分です

3. 組み立てる(1)

3-1. プレート側面を黒く塗る


各種プレート(トッププレート、ミドルプレート、実装基板、ボトムプレート、ボトムカバープレート)の側面を黒いペンで塗ります。
これをやらなくてもキーボードとしては機能しますが、見映えが良くなるので塗ることをおすすめします。
細かいところがあるので、太いペンと細いペンが両方あると塗りやすいです。

3-2. タクトスイッチをはんだ付けする


実装基板にタクトスイッチをはんだ付けします。
最初に実装基板上のパッド(銀色のところ)の片側に予備はんだ(少量のはんだを溶かして乗せておく)をします。
その後、タクトスイッチをのせます。
予備はんだをした方のパッドにはんだごてを当て、はんだを溶かして固定します。
予備はんだしなかった方のパッドもはんだ付けします。

はんだ付けがおわったら、タクトスイッチの上にマステを小さく切って何枚か重ねてください。

3-3. RP2040-Zeroをはんだ付けする


実装基板にRP2040-Zeroをはんだ付けします。
はんだ付けが必要なのは以下のパッドです。

  • GND
  • GP29

この2か所だけはんだ付けすれば動作はしますが、他のパッドもいくつかはんだ付けすることをお勧めします。その方がしっかり固定されます。

(写真ではさらにGP0、GP8、GP14の3か所をはんだ付けしています)


4. ファームウェアを書き込む

FDkeebはファームウェアとしてPRK FirmwareとKermiteをサポートしています。
どちらかお好みの方を利用してください。

4-A. PRK Firmware

PRK Firmwareは、キー割り当てなどをRubyでカスタマイズすることができるファームウェアです。

PRK Firmwareのファームウェアファイルをダウンロードします。


基本的に最新版を使うのが良いですが、もし最新版で不具合が出た場合は少し古いバージョンも試してみてください。

USBケーブルをRP2040-ZeroのUSBコネクタに差し込みます。


ブートローダーモードにするため、RP2040-ZeroのBOOTボタン(「BOOT」と書かれた表面左下の小さいボタン)を押しながらUSBケーブルをパソコンに接続します。
「RPI-RP2」というUSBマスストレージが認識されるはずです。

先ほどダウンロードしたPRK Firmwareの圧縮ファイルの中には拡張子が「uf2」というファイルがありますので、そのuf2ファイルをUSBマスストレージにコピーします。
少し待つと「RPI-RP2」というUSBマスストレージが認識されなくなり、かわりに「PRK DRIVE」または「PRK Firmware」というUSBマスストレージが認識されます。この状態になったらファームウェアの書き込みは成功です。
上手くいかなかった場合、RP2040-ZeroのBOOTボタンを押しながらパソコンに接続しなおしてみてください。

FDkeeb用の設定ファイルkeymap.rbをダウンロードします。
↓のリンクを右クリックして「名前を付けてリンクを保存」などでパソコンにファイルを保存します。

保存したkeymap.rbファイルを、「PRK DRIVE」または「PRK Firmware」USBマスストレージにコピーします。
コピーが終わったらリセットボタン(BOOTボタンの右側にある「RESET」と書かれたボタン)を押してリセットします。

タクトスイッチを押したときに正しく動作するかを確認してください。
Ctrl+SがPCに送信されるはずです。
正しく動作しなかった場合は、ここまでの組み立て過程で行ったはんだ付けを見直してみてください。
それでも解決しなかった場合は、下のDISQUSフォームまたはTwitterからお問い合わせください。

4-B. Kermite

Kermiteは、Webブラウザでキー割り当ての変更などができるファームウェア(およびエコシステムの総称)です。

使い方については公式ドキュメントもご覧ください。

KermiteのWebアプリを開きます。


「スタート」で「プロファイル作成ウィザード」をクリックします。


キーボード定義の一覧から「FDkeeb」を選択し、「次へ」をクリックします。

USBケーブルをRP2040-ZeroのUSBコネクタに差し込みます。


ブートローダーモードにするため、RP2040-ZeroのBOOTボタン(表面左下の小さいボタン)を押しながらUSBケーブルをパソコンに接続します。
「RPI-RP2」というUSBマスストレージが認識されるはずです。


「uf2ファイルダウンロード」ボタンを押します。
拡張子がuf2のファイルがダウンロードされます。

ダウンロードされたuf2ファイルを、USBマスストレージにコピーします。


「デバイスを追加」ボタンを押します。一覧に「FDkeeb #xxxx」のような表示があれば、それを選択して「接続」ボタンを押して接続します。
一覧に表示されなかった場合、RP2040-Zeroをブートローダーモードにしてもう一度uf2ファイルをコピーしてみてください。


画面左半分に「接続されています」と表示されたら、「次へ」を押します。


「完了」を押します。


メイン画面が表示されます。
「プリセット」をクリックします。


プリセットから「(userProfile)FDkeeb-default (by alg)」を選択し、「プロファイルを作成」をクリックします。


メイン画面に戻りますので、「書き込み」をクリックします。
「write succeeded.」と表示されれば書き込み成功です。


「保存」をクリックし、適当なプロファイル名を付けて「OK」ボタンを押します。
※この「保存」をやっておかないと、後で自分好みのキー割り当てに変更するときにちょっと面倒になるので、必ず「保存」してください

タクトスイッチを押したときに正しく動作するかを確認してください。
Ctrl+SがPCに送信されるはずです。
正しく動作しなかった場合は、ここまでの組み立て過程で行ったはんだ付けを見直してみてください。
それでも解決しなかった場合は、下のDISQUSフォームまたはTwitterからお問い合わせください。


5. 組み立てる(2)

5-1. 部品をネジ留めする

RP2040-ZeroをPCから取り外します。


ボトムカバープレートの「Bottom_cover」と書かれた面の四隅にスペーサーを置き、裏からネジ留めします。

その上に、以下の順番でプレート類を重ねます。
重ねる際は各プレートの形が合うように重ねてください。

  1. ボトムプレート
  2. ボトムプレート
  3. 実装基板
  4. ミドルプレート
  5. ミドルプレート
  6. トッププレート

重ねたら、トッププレートの四隅をネジ留めします。

ネジ留めしたら、トッププレート(裏にタクトスイッチがあるあたり)を押してみて、タクトスイッチが押される感触があるかどうか確認してください。
押される感触がなかった場合、タクトスイッチの上に貼るマステの枚数を調整してください。
(トッププレートがタクトスイッチに届いていない場合はさらにマステを何枚か重ねる、重ねすぎて常時押された状態になっている場合はマステを減らす)

5-2. ゴム足を貼る


裏側の四隅の適当な場所にゴム足を貼ります。
ゴム足はネジを避ける位置に貼るとよいです(分解する可能性があるので)。


6. キー割り当てを変更する

書き込んだファームウェアによって、やり方が異なります。

6-A. PRK Firmwareの場合

FDkeebをUSBケーブルでパソコンに接続します。

「PRK DRIVE」または「PRK Firmware」というUSBマスストレージが認識されます
その中にあるファイル「keymap.rb」を適当な場所にコピーし、適宜編集してください。
編集が終わったら、「PRK DRIVE」または「PRK Firmware」USBマスストレージに上書きコピーすると反映されます。

keymap.rbの書き方について詳しくはPRK FirmwareのWikiを参照してください。

6-B. Kermiteの場合

FDkeebをUSBケーブルでパソコンに接続します。

KermiteのWebアプリを開きます。


「デバイス」をクリックします。
「FDkeeb #xxxx」がすでに表示されて選択されていれば、そのままでOKです。


もし表示されていなかったら、「add device」ボタンを押します。
一覧に「FDkeeb #xxxx」のような表示があるはずなので、それを選択して「接続」ボタンを押して接続します。


「メイン」をクリックします。
キー割り当てを変更したいキーを画面でクリックし、下半分の候補から割り当てたいキーを選んでクリックします。
お好きなようにキー割り当てを変更してください。


終わったら、「書き込み」を押すとfdkeebにキー割り当てが反映されます。


変更した割り当てを後から再利用するかもしれない場合は、メニューから「別名で保存」をクリックし、適当な名前をつけて保存してください。


7. 完成度を上げる

側面にマステ黒6mmを貼ると完成度が上がります。
フロッピーディスクラベルみたいなものを自作するのもいいと思います。


8. 自慢する

お疲れさまでした!これが最後にしてもっとも重要な手順です。
できあがったFDkeeb V2を、SNSなどで自慢してください。
写真をアップしたり、楽しめた点や苦労した点などをつぶやいたり、思い思いの方法で共有してください。
Twitterで私 @alg0002 宛にメンションを飛ばしていただけるとなお嬉しいです。