XD75をBLE Micro Proで無線化する
いままで自作していた優先のキーボードを無線化するというものです。
こちらのBLE対応ファームウエアからXD75を無線化します。
XD75は格子配列の75キーボードですが、わが家では、真ん中の縦3列を外して実験用PCBになっています。
一方で、keyboradsの中にble_micro_testという一体型キーボード用のプログラムがあり、これをなんとかかんとかして、XD75に適合させようという記事です。
■物理側の準備
XD75裏側の不要な部品を外す(破壊)
縦横の配線と各キーのダイオードは残しておきます。
基盤はこれです
これをこう繋ぐ感じ。
緑はROWSの配線。青色と紫色はCOLS側の配線になります。
この配線をarduinoの対応するピンへつなぎます。
電源側は純正のコイン電池ホルダーをセットして電源とGNDピンへ。
これで物理側の準備は完了
ブレッドボードの意味あるのかと感じられているかと思いますが、ブレッドボードの接触が悪いため、結局はんだづけしましたというあれです。
試作だから、よいのです。
※2024/8/15追記
上記写真ではXD75側のICを剥がしたりしていましたが、その後に作り直したところ、そのままでも問題無く動作しました。
■プログラム側の準備
QMKfirmwareの中身を対応させていきます。
例によって簡単なことだとは思うのですが、右往左往して数時間掛かってしまいました。
というわけで、プログラム素人が引っかかったところを纏めていきます。
ベストな方法かは分かりませんが、とにかく動いています。
1、keymap.cにキーマップを書き込む
まずは、冒頭にレイヤーの記載。
わたしは、_QW、_FN、_TEの3つのレイヤーを使っていたので、こんな風に。いずれは、bluetoothコントロール用にもう一枚追加します。
つぎに日本語キーにしたいので、これを記載。
キーマップを書き込み。お好きなように。レイヤー3枚分を記載。
両親指周りにCTRLやALT、SHIFTだけでなくエンターキーやスペースキーなども集約。便利かつ肩こり解消。
また、右手のところにテンキーレイヤーを入れておくと、コンパクトなキーボードでもテンキーを使えます。これまた便利。
このままmakeしてもエラーが出ます。
縦5行、横12列のレイアウトを書き込んでいないためです。
※2024/8/15追記
その後に作り直したところ、何故かbluetoothドライバーエラーが出てしまいました。
keymap.cから以下の文章を削除するとエラーなく動作するようになりました。
2、ble_micro_test.hにキーレイアウトを書き込む
これを記載します。
LとかRと数字の組み合わせですが、上下が対応するならなんでも良さそう。
60キーあるので、60種類の動物の名前などでもいけるかも。
これでmakeしてもエラー。
config.hに編集が必要です。
3、二つのconfig.hにROWSとCOLSの数を書き込む
どちらも同じ数になるように記載します。
さらに、片方のconfig.hに、それぞれの行や列に対応するPINを割り当てます
ROWSはキーボードの上側、つまり数字キーの行からとなります。5行あるので5行。
COLSは左側から。12列あるので12カ所のピンを指定。
ピンの番号はこちらを見て、しっかり確認しましょう。
4、これから追加すること
bluetoothに関するレイヤーを作成してキーを割り当てる。
端末の切り替えなどができるようにしなければなりません。
端末1台のみで使うなら不要かも。
ともかく、机の上がひろい!
スタバでドヤ顔で使ってみたいですね。
■必要な材料
Gateron mechanical keyboard switch
xd75re xd75am xd75 Custom Mechanical Keyboard 75 keys Underglow RGB PCB