Вопрос или проблема
У меня есть сборка USB-кнопки Delcom, предназначенная для аркадных приложений в качестве устройства ввода HID.
Она распознается и корректно работает на FreeBSD 14 и CentOS 7, но не на Mint 21.
На CentOS и Mint устройство вызывает записи в dmesg:
CentOS (3.10.0-327.28.3.el7.x86_64):
[ 730.949881] usb 2-1.2: новое полношумовое USB-устройство номер 5 с использованием ehci-pci
[ 731.038185] usb 2-1.2: Найдено новое USB-устройство, idVendor=0fc5, idProduct=b080
[ 731.038192] usb 2-1.2: Новые строки USB-устройства: Mfr=1, Product=2, SerialNumber=0
[ 731.038196] usb 2-1.2: Продукт: USB FS IO
[ 731.038200] usb 2-1.2: Производитель: Delcom Products Inc.
[ 731.045382] input: Delcom Products Inc. USB FS IO как /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.2/2-1.2:1.0/input/input19
[ 731.096612] hid-generic 0003:0FC5:B080.0002: input,hiddev0,hidraw0: USB HID v1.11 Клавиатура [Delcom Products Inc. USB FS IO] на usb-0000:00:1d.0-1.2/input0
Mint (5.15.0-91-generic):
[ 2.289804] usb 1-5: новое полношумовое USB-устройство номер 5 с использованием xhci_hcd
[ 2.440808] usb 1-5: Найдено новое USB-устройство, idVendor=0fc5, idProduct=b080, bcdDevice= 0.08
[ 2.440833] usb 1-5: Новые строки USB-устройства: Mfr=1, Product=2, SerialNumber=0
[ 2.440845] usb 1-5: Продукт: USB FS IO
[ 2.440855] usb 1-5: Производитель: Delcom Products Inc.
...
[ 3.248504] input: Delcom Products Inc. USB FS IO Клавиатура как /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/0003:0FC5:B080.0002/input/input5
[ 3.306486] input: Delcom Products Inc. USB FS IO Мышь как /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/0003:0FC5:B080.0002/input/input6
[ 3.307123] input: Delcom Products Inc. USB FS IO как /devices/pci0000:00/0000:00:14.0/usb1/1-5/1-5:1.0/0003:0FC5:B080.0002/input/input7
[ 3.307767] hid-generic 0003:0FC5:B080.0002: input,hiddev0,hidraw1: USB HID v1.11 Клавиатура [Delcom Products Inc. USB FS IO] на usb-0000:00:14.0-5/input0
...
[ 524.320773] usb 1-5: USB отключено, устройство номер 5
[ 532.181496] usb 1-5: новое полношумовое USB-устройство номер 9 с использованием xhci_hcd
[ 532.332805] usb 1-5: Найдено новое USB-устройство, idVendor=0fc5, idProduct=b080, bcdDevice= 0.08
[ 532.332834] usb 1-5: Новые строки USB-устройства: Mfr=1, Product=2, SerialNumber=0
[ 532.332848] usb 1-5: Продукт: USB FS IO
[ 532.332859] usb 1-5: Производитель: Delcom Products Inc.
lsusb
на Mint показывает его:
Bus 001 Device 010: ID 0fc5:b080 Delcom Engineering USB FS IO
Что мне нужно сказать Mint, чтобы он распознал это как устройство ввода?
Ответ или решение
Проблема с USB HID устройством в Linux Mint
Проблема, с которой вы столкнулись, заключается в том, что ваше USB устройство HID, изготовленное Delcom, успешно распознается и функционирует на FreeBSD 14 и CentOS 7, но не работает на Linux Mint 21. Давайте разберемся в причинах и возможных решениях этой проблемы.
1. Общее понимание ситуации
Анализ сообщений из dmesg
показывает, что устройство корректно распознается на всех трех системах, однако в Mint оно идентифицируется и как клавиатура, и как мышь. Это значит, что проблем с физическим подключением устройства быть не должно. Однако, проблема может заключаться в программной части системы, конфигурации или в драйверах.
2. Сравнение систем
На CentOS и FreeBSD устройство является полноценным HID устройством и принимает ввод с него. В случае Linux Mint, устройство также распознается, но возможное отсутствие корректной обработки событий или конфликты с другими драйверами могут мешать его нормальной работе.
- CentOS: Устройство определено как HID v1.11 Keyboard, правильно обрабатывает ввод.
- Mint: Устройство определяется как Keyboard и Mouse. Это может вызывать конфликты или неправильную маршрутизацию событий ввода.
3. Варианты решения проблемы
Для исправления ситуации можно рассмотреть следующие шаги:
А. Проверка настроек системы
-
Убедитесь, что все обновления установлены. Установка всех доступных обновлений для Mint может решить проблемы с драйверами и совместимостью.
sudo apt update sudo apt upgrade
-
Проверьте наличие необходимых пакетов. Убедитесь, что у вас установлены
xserver-xorg-input-all
и другие пакеты, связанные с вводом.sudo apt install xserver-xorg-input-all
Б. Проверка правил udev
Убедитесь, что для вашего устройства правильно настроены правила udev. Создайте файл, если его нет, и укажите правильные параметры:
sudo nano /etc/udev/rules.d/99-delcom.rules
Добавьте следующие строки:
ACTION=="add", SUBSYSTEM=="input", ATTR{idVendor}=="0fc5", ATTR{idProduct}=="b080", MODE="0666", ENV{ID_INPUT}="1"
Примените изменения:
sudo udevadm control --reload-rules
sudo udevadm trigger
В. Проверьте конфликты устройств
Иногда конфликты устройств могут мешать корректному распознаванию HID. Вы можете использовать команду xinput
для просмотра всех подключённых устройств и их состояния:
xinput list
Г. Тестирование с Live CD/USB
Если ни одно из вышеперечисленных решений не помогло, попытайтесь загрузиться с Live CD или USB, чтобы проверить, правильно ли устройство работает на более свежей или другой версии Linux Mint.
Заключение
USB HID устройства должны работать на всех современных дистрибутивах Linux, включая Mint. Чаще всего проблемы такого рода можно решить путем обновления системы, настройки udev или устранения конфликтов устройства. Если после выполнения всех вышеуказанных шагов проблема сохраняется, вам стоит обратиться на форумы поддержки Mint, предоставив им всю информацию о вашем устройстве и действиях, которые вы уже предприняли.
Надеюсь, эти рекомендации помогут вам решить вашу проблему. Удачи!