ダイオードや抵抗がPCB+SMT製造サービスによって既に実装されている場合は、このステップをスキップしてください。
- 16 x 1N4148 Diodes (D1-D16)
- 2 x 4.7kΩ 0402 Resistor (R1, R2)
これらのダイオードは方向性があります。カソードが左、アノードが右です。
- Seeed Xiao RP2040 (U1)
PCB上にSeeed Xiaoボードを置き、Seeed Xiaoの端面スルーホールととPCB上の対応するパッドが以下の3D CGのように一致するようにします。
それぞれの端面スルーホールをとパッドをはんだ付けします。
補足:また、プリント基板にはスルーホールが設けられています。これは位置合わせのために使うこともできますし、強度を増すなどの理由があればスルーホールをハンダ付けすることも可能です。
- 1 x TRRS ジャック PJ-320A(または MJ-4PP-9) (TRRS)
TRRS拡張用オプション部品です。不要な場合はこのステップをスキップしてください。
TRRSジャックをPCBに挿入してテープで固定します。フットプリントがぴったり合うように作られているので、きちんと押し込んでください。PCBを裏返します。ピンをはんだ付けします。テープを剥がします。
- 1 x GroveコネクタL型スルーホール (J1)
Grove拡張用オプション部品です。不要な場合はこのステップをスキップしてください。
GroveコネクタをPCBに挿入してテープで固定します。PCBを裏返します。ピンをはんだ付けします。テープを剥がします。
- 16 x Switronic TS-AGGNH-G プッシュボタン (SW1-16)
プッシュボタンをPCBに挿入してテープで固定します。
スルーホールにうまく入らない場合は、プッシュボタンの足をペンチなどでまっすぐにして入りやすくしてください。 下図の左がペンチでまっすぐにした後の足です。
PCBを裏返します。ピンをはんだ付けします。テープを剥がします。
下図のようにして、アクリルパネルをスペーサーとプラネジで固定します。
PCB背面に出ているプッシュボタン Switronic TS-AGGNH-G プッシュボタン (SW1-16) および GroveコネクタL型スルーホール (J1) の足が 2mm 以上出ている場合はニッパーなどで切りそろえます。
なべ小ねじ M3 x 8mm → ボトムプレート → 六角ナット M3 x 2.4mm → PCB → 六角スペーサ → トッププレート → なべ小ねじ M3 x 4mm の順番に重ねます。 両端のねじをドライバーなどでしっかりと締めて固定します。
TRRSジャックを付けている場合にはTRRSジャックもトッププレートが支える実装となります。
サンプルファームウエアは Platform IO (Arduino) と QMK を用意しています。
サンプルファームウェアの Platform IO プロジェクトは /firmware/platformio_arduino にあります。
必要に応じてプログラムを追加・編集してください。 サンプルファームウエアのコード はシンプルなテンキーで、 さらにGroveコネクタにM5stack CardKB UnitをつないだときCardKB Unitの入力をキーボード入力に変換する処理が含まれます。
以下に Windows + Visual Studio Code 環境でのファームウェアのビルド・アップロードの方法を記載します。
- https://zadig.akeo.ie/ から Zadig をダウンロードします
- Zadig を起動します
- PC の USB に Xiaolu KBD をつなぎます
- Seeed Xiao RP2040 の BOOTボタンを押した状態でリセットボタンを押します。すると、USBマスストレージモード(RPI-RP2)でつながります
- すると Zadig のウィンドウで RP2 Boot (Interface X) が選択されます。選択されない場合はセレクトボックスから選択します
- インストール先のドライバとして WinUSB を選択して、 Install Driver ボタンをクリックします
- しばらくすると The driver was installed successfuly というダイアログが表示されドライバがインストールされます。これで Zadig のウィンドウを閉じます
- https://github.com/git-for-windows/git/releases/latest から Git for Windows をダウンロード・インストールします
- 後述の手順16でファイルパスが長いことに起因するエラーを防ぐため、以下の手順でロングパス対応します
- レジストリエディタを開きます
コンピューター\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem
に移動しますLongPathsEnabled
というDWORDの値があることを確認します。ない場合は作成しますLongPathsEnabled
の値を1
に設定します- コマンドプロンプトを開き、
git config --system core.longpaths true
と入力して実行します - Windows を再起動します
- https://code.visualstudio.com/ から Visual Studio Code をダウンロード・インストールします
- Visual Studio Code を起動して PlatformIO IDE 拡張をインストールします。( VS Code Quick Open (Ctrl+P) で表示されるテキストボックスに
ext install platformio.platformio-ide
を入力して Enter でインストール出来ます ) - PlatformIO IDE has been installed successfully installed! Please reload windows と表示されるので Reload Now と書かれたボタンをクリックします
- https://github.com/cat-in-136/xiaolu_kbd を Git で適当なフォルダにクローンするか、 https://codeload.github.com/cat-in-136/xiaolu_kbd/zip/refs/heads/main からダウンロードして適当なフォルダに展開します
- Visual Studio Code の Platformio をクリックして、Pick a folder をクリックし、前項で展開したフォルダの中の firmware\platformio_arduino 相当のフォルダを選択します
- "Do you trust the authors of the files in this folder?" というダイアログが出たら "Yes, I trust the authors" と書かれたボタンをクリックします
- すると依存ライブラリのダウンロードなど (PlatformIO: Configuring project) がされますのでしばらく待ちます
- Visual Studio Code の下の PlatformIO Toolbar から → Upload をクリックします
- 手順 17 でファームウェアのアップロードに失敗するときは、USB がきちんとささっていない他に、 WinUSB がインストールされていない場合があります。
/firmware/qmk/keyboards/cat_in_136/xiaolu_kbd を keyboards/cat_in_136/xiaolu_kbd
にコピーして QMK をビルド・アップロードします。
必要に応じてキーマップを追加・編集してください。 デフォルトキーマップはシンプルなテンキーになっています。
以下に Windows + QMK MSYS 環境でのファームウェアのビルド・アップロードの方法を記載します。
- https://msys.qmk.fm/ から QMK MSYS をダウンロード・インストールします
- QMK MSYS を起動します。
- コンソール画面で下記を実行します。
$ qmk setup
- https://github.com/cat-in-136/xiaolu_kbd を Git で適当なフォルダにクローンするか、 https://codeload.github.com/cat-in-136/xiaolu_kbd/zip/refs/heads/main からダウンロードして適当なフォルダに展開します
- 前項で展開したフォルダから
firmware/qmk
をqmk_firmware/keyboards/cat_in_136/xiaolu_kbd
にコピーします。$ mkdir qmk_firmware/keyboards/cat_in_136 $ cp -r path/to/xiaolu_kbd/firmware/qmk/keyboards/cat_in_136/xiaolu_kbd qmk_firmware/keyboards/cat_in_136/xiaolu_kbd
- qmk をコンパイルします。
$ qmk compile -kb cat_in_136/xiaolu_kbd -km default $ qmk flash -kb cat_in_136/xiaolu_kbd -km default
- qmk をアップロードします。
$ qmk flash -kb cat_in_136/xiaolu_kbd -km default
- 途中で Waiting for drive to deploy... と表示されるので、Seeed Xiao RP2040 の BOOTボタンを押した状態でリセットボタンを押します。するとファームウエアの書き込みが完了します。
- Xiaolu KBD がキーボードとして認識されるまでしばらく待ちます。