Matrix
キーマトリクスの基本
キーボードは、すべてのキーを個別のGPIOに直結するのではなく、行と列の交点として読む構成が一般的です。QMKの手配線ガイドでも、片側のスイッチ端子を行方向、もう片側を列方向につなぐ考え方が説明されています。 この作品でも、キー入力は行と列の組み合わせとして扱います。配線図、QMKの MATRIX_ROWS / MATRIX_COLS、keymap.c のレイアウトは同じ座標でそろえる必要があります。
Wiring
内部手配線で迷いやすい、行列、ダイオード、I/Oエキスパンダー、左右接続をまとめます。実際の最終割り当ては配線図とファームウェア設定を必ずセットで確認します。
Matrix
キーボードは、すべてのキーを個別のGPIOに直結するのではなく、行と列の交点として読む構成が一般的です。QMKの手配線ガイドでも、片側のスイッチ端子を行方向、もう片側を列方向につなぐ考え方が説明されています。 この作品でも、キー入力は行と列の組み合わせとして扱います。配線図、QMKの MATRIX_ROWS / MATRIX_COLS、keymap.c のレイアウトは同じ座標でそろえる必要があります。
Diode
マトリクスでは、複数キー同時押し時の回り込みを抑えるためにダイオードを入れます。向きは配線図とQMKの DIODE_DIRECTION を一致させます。 QMK公式ドキュメントでは COL2ROW / ROW2COL の指定があり、COL2ROW は黒い印が行側を向く説明になっています。この作品の実装方向を確認するときも、部品上の印、配線図、QMK設定を同時に見るのが安全です。
MCP23017
Seeed XIAO RP2040は小型で使いやすい一方、キーボードの行列をそのまま全部つなぐにはGPIO数に余裕が少なくなります。そこで、I2C接続のI/OエキスパンダーであるMCP23017を使い、キーマトリクス用の入出力を増やします。 Microchipの製品情報では、MCP23017は16-bit I2C I/O Expanderとして扱われています。GPAとGPBは8bitずつのポートとして見えるため、行・列のどちらに割り当てるかを配線図とmatrix.cでそろえます。
XIAO RP2040
Seeed公式のXIAO RP2040ピン表では、D4がSDA(GPIO6)、D5がSCL(GPIO7)です。この作品では、XIAO RP2040とMCP23017をI2Cで接続する前提で、VCC/GND/SDA/SCL/RESETを確認します。 電源電圧、プルアップ、RESETの扱いは実装条件で変わるため、使う部品のデータシートと実測で確認します。
Split
分割キーボードでは、左右ユニット間に電源、GND、通信線などが通ります。TRRSなどのケーブルを使う場合、端子配列とケーブルの実配線を必ず導通確認します。 特に電源が入った状態での抜き差しは、端子が一瞬ショートする可能性があるため避けます。抜き差しはUSBを外した状態で行う運用にします。
Checklist
Links
このページは一般的な考え方と、この作品での設計方針を分けて書いています。作品固有の最終配線は、実物の配線図とQMK設定を正としてください。