Удалил модуль xpad
Ну и здесь. Я не предлагал удалять модуль - я лишь предложил выполнить отвязку от него устройства. Выполняем
ls /sys/module/xpad/drivers/usb\:xpad
В выводе видим символьную ссылку - наш геймпад (привожу пример вывода, символьная ссылка выделена жирным):
1-2:1.0 bind module new_id remove_id uevent unbind
Чтобы выполнить отвязку устройства 1-2:1.0 от модуля xpad следует выполнить:
sudo su
cd /sys/module/xpad/drivers/usb\:xpad
echo 1-2:1.0 > unbind
exit
Где 1-2:1.0 - выявленная ранее по тексту символьная ссылка (в Вашем случае будет своя; их может быть больше одной - надо в этом случае смотреть что за устройство за ссылкой скрывается). После этого в выводе
ls /sys/module/xpad/drivers/usb\:xpad
символьной ссылки, которая ведет к нашему геймпаду не будет, а в выводе usb-devices будем видеть заветное
Driver=(none). По поводу выяснения что за устройство скрывается за ссылкой... Ранее мы с Вами определяли VID и PID геймпада. Допустим, имеем символьную ссылку 1-2:1.0. Проверяем вывод команды:
cat /sys/module/xpad/drivers/usb\:xpad/1-2\:1.0/modalias
В выхлопе видим длинную строку, в которой, если приглядеться, есть вхождения вида pXXXXvYYYY, так вот вместо XXXX в Вашем случае будет написано 045e, а вместо YYYY будет написано 028e (что-то типа "usb:v045ep028e...")
а теперь меня терзают сомнения
Вне зависимости от Ваших действий в данный момент времени - перезагрузка вернет все на свои места. Как только перезагрузитесь - применятся те модули ядра, которые система применяет автоматически, и будто ничего не делали. Так что экспериментировать можно смело.
по существу я уже сказал, что используется драйвер usbhid
Это-то понятно. Я лишь хотел убедиться, что все прочие фрагменты вывода usb-devices в обоих случаях идентичны, тем более что Vendor=20bc ProdID=5500 под debian (то есть устройство определилось иначе). Если это не так - могут быть подводные камни.
В любом случае, начал бы я с такого набора действий (>>> означает ввод команды, прочее - фрагменты ответов терминала):
#загрузились в lubuntu, вставили геймпад в порт usb
#Проверяем используемый модуль ядра:
>>> usb-devices
...
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=5d Prot=01 Driver=xpad
#Выполняем отвязку используемого модуля ядра:
>>> cd /sys/module/xpad/drivers/usb\:xpad
>>> ls
1-2:1.0 1-2:1.1 bind module new_id remove_id uevent unbind
>>> sudo su
>>> echo 1-2:1.0 > unbind #команда отвязки оборудования от модуля ядра xpad
>>> exit
>>> ls
bind module new_id remove_id uevent unbind
>>> sudo modprobe usbhid #если уже был подгружен - ничего не произойдет, если не подгружался - подгрузится
>>> cd /sys/bus/usb/drivers/usbhid/
>>> ls
bind module new_id remove_id uevent unbind
>>> sudo su
#С этого места, исходя из разных устройств, которые в разных системах, навскидку вырисовывается два варианта
#вариант 1:
>>> echo 045e 028e > new_id
>>> exit
>>> ls
1-2:1.0 1-2:1.1 bind module new_id remove_id uevent unbind
>>> usb-devices
...
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=5d Prot=01 Driver=usbhid
#вариант 2:
>>> echo 20bc 5500 > new_id
>>> exit
>>> ls
1-2:1.0 1-2:1.1 bind module new_id remove_id uevent unbind
>>> usb-devices
...
I: If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=5d Prot=01 Driver=usbhid
Теоретически допускаю как работоспособность обоих вариантов, так и неработоспособность обоих вариантов; чтобы попробовать оба варианта следует после выявления неработоспособности первого выполнить перезагрузку, и далее, выполняя все команды по цепочке с самого начала, минуя "вариант 1" перейти к "вариант 2". Для понимания полноты картины вообще хочется видеть в lubuntu:
1. без вставленного геймпада
lsusb2. со вставленным геймпадом
lsusb3. после вставки геймпада
dmesg | tail -n 204. после выполнения команды отвязки оборудования от модуля ядра xpad
lsusb,
dmesg | tail -n 205. после выполнения команды привязки оборудования (с обеими употребленными VID и PID): соответствующий сегмент
usb-devices,
ls /sys/bus/usb/drivers/usbhid/
Еще вариант: попробовать засунуть в blacklist драйвер xpad, перезагрузиться, подключить геймпад и посмотреть что происходит (определяется ли, как себя ведет, что написано в dmesg и в usb-devices).
еще вариант: создать правило для udev, которое вынудило бы ядро жестко и однозначно привязывать устройство с vid и pid к модулю ядра usbhid, после чего перезагрузиться и проверить реакцию на подключение геймпада.
Последние два варианта не исправляются перезагрузкой - поэтому про них пока пишу только вскользь.
Пользователь добавил сообщение 06 Октября 2018, 15:16:53:
Еще один момент: какая версия ядра в обеих рассматриваемых системах, и что происходит в debian после вставки геймпада:
1. в debian
uname -r
вставить геймпад и выполнить:
dmesg | tail -n 20
2. в lubuntu
uname -r
Выводы прошу показать.