自作キーボードXD75reでハマった話
調子に乗って自作キーボードを購入。
本来であれば、自作キーボードの素晴らしさを書き連ねる予定であったが、QMK Firmwareでの設定に予想以上に手間取った。再設定するときに備忘録が必須になると感じたため記載する。
目次
- 概要
- MSYS2のインストール&アップデート
- githubのソース入手
- keymap.cの編集
- makeコマンド実行
- makeコマンドでハマった集
概要
MSYS2というCUIのソフトウェアで設定する。
MSYS2は、githubのソースコードを勝手に読み込んだりしてキーのマッピングをしてくれる。
自分が編集するものは、「keymap.c」のみ。
キーマッピング実行コマンドは make~
MSYS2のインストール&アップデート
公式サイトから最新版をダウンロード
latest version ↓(赤枠の部分)
ダウンロードしたインストーラーを起動して、インストールする。
インストール先フォルダからQMK MSYS.exeを起動するので、インストール先は覚えておく。
QMK MSYS.exeを起動する。
以下のコマンドを実行する。
qmk setup
以下のメッセージが表示されるまで待つ。(それなりにかかる。)
QMK is ready to go
githubのソース入手
以下のコマンドを実行する。
git clone https://github.com/qmk/qmk_firmware.git
おそらくカレントディレクトリ(コンソール上の現在地)にソースコードが保存されているので、
以下のコマンドを入力して、カレントディレクトリを確認しておく。
githubのソースの場所に以下のコマンドで移動する。
cd qmk_firmware
今後、QMK MSYS.exeで何かをするときは、とりあえずここをカレントディレクトリにしておく感じ。(cdで移動したので、pwdコマンドでもう一度確認しておこう。)
以下のコマンドでソースをインストールする。
util/msys2_install.sh
そんなパス見つからないよ。って感じのエラーがでたら以下のコマンドを実行してみる。
util/qmk_install.sh
何故かはわからないが、ここで躓いた。
もういちど最初からやると上手くいったので、cdする場所を間違えていただけかもしれない。
keymap.cの編集
テキストエディタで自分の製品のキーボードのkeymap.cを編集する。
XD75reの場合は、以下のもの。(編集する前にバックアップを取るべし。)
qmk_firmware\keyboards\xiudi\xd75\keymaps\default\keymap.c
keymapの編集は頑張る。
kc_q とかを入れ替えるだけなので、簡単。
defaultではなく、自分で編集したkeymapを適用したいので、以下のフォルダを作成する。
qmk_firmware\keyboards\xiudi\xd75\keymaps\任意の半角英数
作成したフォルダに編集したkeymap.cを移動させる。
以下のファイルも作成したフォルダにコピーしておく。
qmk_firmware\keyboards\xiudi\xd75\config.h
qmk_firmware\keyboards\xiudi\xd75\readme.md
qmk_firmware\keyboards\xiudi\xd75\rules.mk
日本語配列にしたい場合
qmk_firmware\quantum\keymap_extras\keymap_jp.h
の中身を、編集するkeymap.cの1行目から追記する。
もしかすると#include "keymap.h"を追記するだけでもいけるかも。
kc_qをjp_qとかに入れ替える。
日本語配列にしかないキーはkeymap_jp.hから探す。
makeコマンド実行
以下のコマンドを実行する。
(defaultの部分は、自分が作成したkeymap.cのあるフォルダ名)
make xiudi/xd75:default:flash
終わり。
makeコマンドでハマった集
Bootloader not found. Trying again every 0.5s
ブートローダーが見つからないとか言われて自作キーボードを諦めかけた。
ググりまくった結果、解決方法を見つけた。
https://www.reddit.com/r/olkb/comments/7dslu8/need_help_flashing_qmk_to_xd75re/
やることは以下
- 下から1番目右から4番目のキーと、上から3番目右から4番目のキーを同時押し(defaultのリセットキー。)
- 以下のサイトにアクセス。https://web.archive.org/web/20171002202230/http://www.atmel.com/tools/flip.aspx
- FLIP 3.4.7 for Windowsをダウンロードして実行。
- デバイスマネージャーから「ATm32u4MCU」を探して(無い場合は似たようなやつ)、[プロパティ]に移動し、[ドライバを更新]を選択する。
- [ドライバ ソフトウェアを参照] をクリックし、[コンピュータで利用可能なドライバの一覧から選択する] をクリックし、[ディスクを使用する] をクリックして、Atmel FLIP がインストールされているドライバを見つける。(C:\プログラム ファイル (x86)\Atmel\Flip 3.4.7\usb
- 「次へ」をクリックすると、適切なドライバがインストールされる。
make xiudi/xd75:default:flash
を実行する。
上記URLの人は、一回デバイスをアンインストールしろと言っているので、翻訳してその通りにやったほうがいいかもしれない。
以下が原文。
-
Uninstall ALL atmel drivers by going: Device Manager, then right-clicking on your atmel device (it should be named "ATm32u4MCU" or something similar, not "HID Keyboard"), go to "Properties", and "Uninstall Drivers".
-
Unplug and plug your device back in, so Windows recognises it, and installs the default drivers.
-
Install
Atmel FLIP. Edit: Atmel FLIP via Wayback Machine edit2: looks like there's a new webpage for the driver! -
Go back to Device Manager, right-click on your device, go to "Properties", then "Update Driver".
-
Click "Browse my computer for driver software", then click "Let me pick from a list of available drivers on my computer", then "Have disk", and then locate the driver where Atmel FLIP is installed (it was at C:\Program Files (x86)\Atmel\Flip 3.4.7\usb for me).
-
Click "Next", and the proper drivers should be installed! After this, I was able to successfully flash my XD75RE :D
以下も参照
https://qiita.com/hokita222/items/a5567d955923125b93ed