トラックボールのスクロール化をしてみた
今回購入したのが meishi Track Module 。
初めての自作キーボードは 7sPro でした。ビルドガイドが丁寧で半田付け初心者でも問題なく構築することができました。7sProはHHKBを分割キーボードにした自作キーボードでそれ自体はとても満足してました。マウス移動はキーに紐づけていたのでマウスがなくてもそこまで不便ではなかったのですがやはり欲が出てきて、マウスで画面スクロールがしたい!と思うようになりました。そこで購入したのが meishi Track Module です。
一応ビルドガイドがあるのですが、中上級者向けなのかところどころが書かれていない部分があります。 githubのissueにも書かれていますね。 購入元の遊舎工房さんに直接行ったところ親切に教えてくれたおかげで直すことはできました。
そんなこんなで動かしてみるとマウスは動かせるのですがマウススクロールができないことに気づきました。
ファームウェアの修正
どうやらREMAPで直接編集できずに、ファームウェアを修正する必要があるようですのでやってみました。
ちなみに私のOS環境はM2のMacOSです。
## ソースの修正
$ git clone git@github.com:aki27kbd/qmk_firmware.git
$ cd qmk_firmware
### 71行目のlayer_state_set_user関数のdefaultをfalseからtrueに変更します
$ vim keyboards/aki27/trackball_module/keymaps/default/keymap.c
default:
cocot_set_scroll_mode(false); // ここをtrueに変更
break;
}
## コンパイル
### 最初python 3.14.4で実行しましたがバージョンが新すぎるのかエラーとなりましたので3.11系を指定します。
$ pyenv install 3.11.15
$ pyenv local 3.11.15
$ python --version
Python 3.11.15
$ pyenv local 3.11.15
$ python -m venv .venv
$ source .venv/bin/activate
### qmkのインストールと設定
$ pip install qmk
### プロンプトで何か聞かれたら全てyesを選択
$ qmk setup
$ qmk list-keymaps -kb aki27/trackball_module
default
### hexファイルを生成
$ qmk compile -kb aki27/trackball_module -km default
### カレントディレクトリにaki27_trackball_module_default.hexファイルが生成される そこまでできたらREMAPの カタログページ を開きます
- 適当なキーボードを選択
- 画面右側に 「Flush Firmware」 というボタンが表示されるので、クリック
- ファームウェアをアップロードで先ほどのhexファイルをアップロード
- Bootloader: 「Caterina」 を選択
- デバイスを選択するモードダルが表示される
- リセットボタンを2回押すとPro Microが認識される
- Pro Microを選択すると書き込みがスタートし、Complateと表示されたら成功
これで7sProと組み合わせて使えるかもしれない!!