Я прохожу курс “от 0 до Linux админа” на Yodo и столкнулся с проблемой.
Как сделать так, чтобы Bluetooth-геймпад отображался в /dev/input/js*, помимо /dev/input/event*?
Я использую Ubuntu Cinnamon 24.04 и у меня есть Bluetooth-геймпад Gioteck WX5, который эмулирует контроллер Nintendo Switch 2 Pro. Я могу подключить его к своему ноутбуку, и он появляется как пара устройств в /dev/input (в частности, “Pro Controller” в /dev/input/event18, который реагирует на нажатия кнопок и движения стиков, и “Pro Controller (IMU)” в /dev/input/event19, который, как мне кажется, отвечает за акселерометр / управление движением).
Я подтвердил, что геймпад работает, используя evtest, который отображает нажатия кнопок. Я также добавил себя в группу input в /etc/group, чтобы получить разрешения на чтение из /dev/input.
Однако геймпад не отображается в /dev/input/js*, из-за чего некоторые программы (например, jstest-gtk) не могут его обнаружить. Я особенно заинтересован в использовании геймпада в браузерах, таких как Firefox или Chromium, но они его тоже не видят, и я думаю, что это связано с тем фактом, что он не отображается в /dev/input/js*.
Я проверил существующие вопросы, но ни один из них не оказался достаточно близким к моей ситуации: в большинстве случаев контроллер отображался в /dev/input/js*, и проблема была где-то в другом месте.
Ниже приведены выводы команд udevadm для статуса устройств. У меня в выводе lsmod присутствует joydev, но никаких пользователей не отображается, независимо от того, подключен ли геймпад. Версия ядра: 6.17.0-20-generic #20~24.04.1-Ubuntu SMP PREEMPT_DYNAMIC.
Есть ли способ настроить Bluetooth-геймпад так, чтобы он отображался в /dev/input/js* и/или чтобы Chromium мог видеть его напрямую из /dev/input/event*?