問題点
Keychron launcherでキーボードマッピングを設定したいのですが、「接続 +」ボタンを押すと「HID Device Connected」と表示されて、マッピング画面に遷移されませんでした。
原因
LinuxではブラウザのWebUSBまたはWebHID経由でキーボードにアクセスしますが、通常ユーザーには /dev/hidraw* デバイスへの読み書き権限がありません。その結果、接続ができず設定画面に進めません(ただし「HID Device Connected」とだけ表示される)。
対策
udevルールを設定してアクセス権を付与します。
1. キーボードのidVendor / idProduct を調べます
lsusb出力例:
Bus 003 Device 012: ID 3434:0713 Keychron Keychron B1 Pro
この場合、idVendor=3434、idProduct=0713 になります。
2. /etc/udev/rules.d/99-keychron-launcher.rules を作成
以下の内容をルールファイルに書き込みます。
# Keychron 通常接続
KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="3434", ATTRS{idProduct}=="0713", MODE="0666", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
# Bootloaderモード用(ファームウェア更新時)
SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="0666", GROUP="users", TAG+="uaccess", TAG+="udev-acl"
# 2.4GHzドングル接続用
SUBSYSTEM=="usb", ATTRS{idVendor}=="3434", ATTRS{idProduct}=="d030", MODE="0666", GROUP="users", TAG+="uaccess", TAG+="udev-acl"idProductはご自身のデバイスに合わせて変更してください(例:K3 Maxなら 0a31) (rojtberg.net)。
3. udevルールを再読み込みして反映
sudo udevadm control --reload-rules
sudo udevadm trigger必要ならキーボードを再接続するか、PCを再起動。 その後、ブラウザで確認してください。