Имеется бук Toshiba Satellite 2450-101 с системой Mint 9 (XFCE) 2.6.32-21. Пытаюсь подружить его с дистанционным управлением. Встроенный IRDA приемник с LIrc подружить не получилось.
Откопал USB пульт и приемник от Twinhan DVB. Определяется в системе как мышь и клавиатура:
Код: Выделить всё
dmesg | grep -i twinhan
[ 17.738985] input: Twinhan Tech Remote Control as /devices/pci0000:00/0000:00:1d.1/usb3/3-1/3-1:1.0/input/input7
[ 17.739140] twinhan 0003:6253:0100.0002: input,hidraw1: USB HID v1.10 Keyboard [Twinhan Tech Remote Control] on usb-0000:00:1d.1-1/input0
[ 17.754970] input: Twinhan Tech Remote Control as /devices/pci0000:00/0000:00:1d.1/usb3/3-1/3-1:1.1/input/input8
[ 17.755145] twinhan 0003:6253:0100.0003: input,hidraw2: USB HID v1.10 Mouse [Twinhan Tech Remote Control] on usb-0000:00:1d.1-1/input1
Код: Выделить всё
~ $ lsusb
Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 002: ID 6253:0100 TwinHan Technology Co., Ltd Ir reciver f. remote control
Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 002 Device 002: ID 0458:003a KYE Systems Corp. (Mouse Systems)
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Код: Выделить всё
~ $ cat /proc/bus/input/devices
I: Bus=0003 Vendor=6253 Product=0100 Version=0110
N: Name="Twinhan Tech Remote Control"
P: Phys=usb-0000:00:1d.1-1/input0
S: Sysfs=/devices/pci0000:00/0000:00:1d.1/usb3/3-1/3-1:1.0/input/input7
U: Uniq=1111111
H: Handlers=kbd event7
B: EV=20013
B: KEY=3ff 0 0 0 10c0810 803410 0 0 0 0 80048000 180 80000001 8e0000 0 0 8000
B: MSC=10
B: LED=1f
I: Bus=0003 Vendor=6253 Product=0100 Version=0110
N: Name="Twinhan Tech Remote Control"
P: Phys=usb-0000:00:1d.1-1/input1
S: Sysfs=/devices/pci0000:00/0000:00:1d.1/usb3/3-1/3-1:1.1/input/input8
U: Uniq=1111111
H: Handlers=mouse2 event8
B: EV=17
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
B: MSC=10
Код: Выделить всё
~ $ ls /dev/input/by-id/
usb-Genius_Optical_Mouse-event-mouse
usb-Genius_Optical_Mouse-mouse
usb-Twinhan_Tech_Remote_Control_1111111-event-if00
usb-Twinhan_Tech_Remote_Control_1111111-event-mouse
usb-Twinhan_Tech_Remote_Control_1111111-mouse
Код: Выделить всё
~ $ ls /dev/input/by-path/
pci-0000:00:1d.0-usb-0:1:1.0-event-mouse pci-0000:00:1d.1-usb-0:1:1.1-mouse
pci-0000:00:1d.0-usb-0:1:1.0-mouse platform-i8042-serio-0-event-kbd
pci-0000:00:1d.1-usb-0:1:1.0-event platform-i8042-serio-1-event-mouse
pci-0000:00:1d.1-usb-0:1:1.1-event-mouse platform-i8042-serio-1-mouse
Все клавиши нормально определяются ?ядром? через showkey из другой консоли . Через xev видны только мультимедийные (Play, Volume и т.д.).
Установил lirc (0.8.6). При установке выбрал модуль приемника "Linux ..что-то там.. (/dev/input)" . предлагается выбрать или из eventX или из /by-path/. Я выбрал "/dev/input/by-path/pci-0000:00:1d.1-usb-0:1:1.0-event" т.к. eventX может потеряться при переключении (Хотя народ пишет можно и на by-id повесить).
------------------------------------------------------------------------------
Вставка:
Т.к. после перезагрузки и перетыкания приемника данные из /dev/input/ меняются делаем по этому рецепту.
Единственное надо проверить чтоб строка
Код: Выделить всё
ATTRS{bInterfaceNumber}=="00",ATTRS{modalias}=="usb:v6253p0100d0100dc00dsc00dp00ic03isc01ip01"
совпадала с нашими данными. Вступит в силу после перезагрузки или рестарта udev.
------------------------------------------------------------------------------
IR Transmitter выбрал None.
Вот какой получился . Я только скопировал /usr/share/lirc/remote/devinput/lircd.conf.devinput в /etc/lirc/lircd.conf чтобы все изменения делать в нем. (после внесения изменений в lircd.conf не забываем перезапускать lirc: sudo /etc/init.d/lirc restart).
Проверяю работу пульта irw - отрабатывают все кнопки кроме цифровых.
Пробую сделать свой конфиг через
Код: Выделить всё
irrecord -H devinput -d /dev/input/by-path/pci-0000:00:1d.1-usb-0:1:1.0-event f1
Программа отрабатывает без ошибок, создает файл а в нем вместо кодов сплошные 0х0.
Ладно. Не очень-то и хотелось. Все кейкоды я записал когда делал showkey изменяю в lircd.conf коды цифровых клавиш на правильные (они у меня 0х0200 - 0х0209) - бестолку. Такое впечатление что что-то в системе блокирует эти кейкоды.
Обидно, уж очень не хватает этих кнопок. Хочу на них "джойстик" повесить чтоб по менюшкам в XBMC лазать.
Кто подскажет куда копать дальше?
Добавлено:
Все работает. Просто нехрен сидеть за компом заполночь Я случайно файлик вместо lircd.conf обозвал lirc.conf и удивлялся почему из него данные не подхватываются.