ARU icon indicating copy to clipboard operation
ARU copied to clipboard

Решение редкой проблемы с геймпадами

Open Vochatrak-az-ezm opened this issue 2 years ago • 7 comments

Итак, иногда встречается проблема - геймпад просто не работает и начинает работать, только если загрузить Винду и перезагрузиться в Линукс. При отключении и включении геймпада обратно, проблема возвращается.

Для решения этой проблемы существует скрипт https://gist.github.com/dnmodder/de2df973323b7c6acf45f40dc66e8db3 Для работы скрипта необходим пакет pyusb

Что бы не запускать скрипт руками, мною было написано правило udev: SUBSYSTEM=="input", ACTION=="add|change", ENV{ID_SERIAL}=="SHANWAN_Controller", ENV{ID_BUS}=="usb", RUN+="/opt/scripts/fixcontroler.py"

Смотрим ID_SERIAL своего геймпада командой udevadm monitor --environment --udev и вписываем в правило после ENV{ID_SERIAL}==

Качаем скрипт по ссылке выше, сохраняем с расширением .py, делаем исполняемым и кладем в удобную для себя директорию. Пишем путь до скрипта в RUN+=

Теперь кладем правило в /etc/udev/rules.d/ и перезагружаем систему.

Все. Теперь каждый раз при обнаружении конкретного геймпада, будет запускаться скрипт и геймпад будет работать нормально.

Тестировалось на геймпаде SVEN GC-250

Vochatrak-az-ezm avatar Apr 11 '22 22:04 Vochatrak-az-ezm

Похоже это крайне специфичная проблема, которая касается геймпадов не от Microsoft и Sony

dewdpol avatar Apr 12 '22 08:04 dewdpol

@Vochatrak-az-ezm

This script should no longer be necessary thanks to the latest changes made to the master branch of the xpad [https://github.com/paroj/xpad] driver, please give it a try and report any regressions you find.

Уверен, что этот скрипт до сих пор актуален? Все пишут, что лучше использовать новейшую версию xpad драйвера.

ventureoo avatar Apr 12 '22 09:04 ventureoo

dewdpol Sony точно не касается, насчет MS не уверен.

ventureoo Когда последний раз проверял (вначале года), помогал только скрипт. Через пару дней попробую проверить починили ли xpad.

Vochatrak-az-ezm avatar Apr 12 '22 18:04 Vochatrak-az-ezm

@Vochatrak-az-ezm у меня есть геймпады Dualsence и Xbox one gamepad. На них проблем нет, но если подключить по Bluetooth сначала dualsence, то геймпад Xbox не подлючается. Использовал последние драйвера xpadneo-dkms-git

dewdpol avatar Apr 13 '22 02:04 dewdpol

ventureoo Ну, xpad конечно "сбрасывает" геймпад, но только при подключении. Если пад уже был воткнут до загрузки системы, он не срабатывает, пока не вытащишь-воткнешь. Идеально было бы написать правило udev, которое работало бы так же, как "мое" с тем скриптом. Но я не понял как сделать...

Vochatrak-az-ezm avatar Apr 16 '22 20:04 Vochatrak-az-ezm

dewdpol Описанная мной проблема касается в основном Китайских падов, косящих под пад от Xbox 360.

Vochatrak-az-ezm avatar Apr 16 '22 20:04 Vochatrak-az-ezm

В принципе можно обойтись только правилом udev, без дополнительного скрипта: https://gist.github.com/pavel-kirienko/86b9d039151405451130a0fb3896887c

ventureoo avatar Apr 23 '22 20:04 ventureoo