Форум Beholder http://beholder.ru/bb/ | |
Работа пульта ДУ в разных программах - ПЕРЕЗАГРУЗКА http://beholder.ru/bb/viewtopic.php?f=11&t=13217 |
Страница 1 из 1 |
Автор: | technocrat [ 27 июл 2012, 19:21 ] |
Заголовок сообщения: | Работа пульта ДУ в разных программах - ПЕРЕЗАГРУЗКА |
Доброго времени суток всем! На дворе июль 2012 года! Отцы, спецы и иже с ними, я задолбался разбираться как заставить работать пульт ДУ от Behold TV H7. Точнее, мануалы приведённые здесь мне не помогают. Для начала представлюсь: Ubuntu 10.04.04 Ядро 3.0.0-15-generic Тюнер разумеется Behold TV H7 Пульт ДУ - родной, из комплекта Программа для просмотра ТВ - Tvtime. ПРОБЛЕМА: не работают кнопки переключения каналов на пульте CH-UP и CH-DOWN Цифры, регулировка звука, питание и др. - в пределах нормы. Код: technocrat@deskuntu:~$ dmesg | grep BeholdTV [ 19.330586] saa7133[0]: subsystem: 5ace:7190, board: Beholder BeholdTV H7 [card=178,autodetected] [ 44.472253] input: i2c IR (BeholdTV) as /devices/virtual/rc/rc0/input5 [ 44.472362] rc0: i2c IR (BeholdTV) as /devices/virtual/rc/rc0 [ 44.472365] ir-kbd-i2c: i2c IR (BeholdTV) detected at i2c-1/1-002d/ir0 [saa7133[0]] technocrat@deskuntu:~$ dmesg | grep saa [ 19.330381] saa7130/34: v4l2 driver version 0.2.16 loaded [ 19.330570] saa7134 0000:03:06.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 [ 19.330577] saa7133[0]: found at 0000:03:06.0, rev: 209, irq: 20, latency: 32, mmio: 0xfdcff000 [ 19.330586] saa7133[0]: subsystem: 5ace:7190, board: Beholder BeholdTV H7 [card=178,autodetected] [ 19.330619] saa7133[0]: board init: gpio is 0 [ 19.484089] saa7133[0]: i2c eeprom 00: ce 5a 90 71 54 20 00 00 00 00 00 00 00 00 00 01 [ 19.484097] saa7133[0]: i2c eeprom 10: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484102] saa7133[0]: i2c eeprom 20: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484108] saa7133[0]: i2c eeprom 30: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484113] saa7133[0]: i2c eeprom 40: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484118] saa7133[0]: i2c eeprom 50: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484123] saa7133[0]: i2c eeprom 60: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484128] saa7133[0]: i2c eeprom 70: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484133] saa7133[0]: i2c eeprom 80: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484138] saa7133[0]: i2c eeprom 90: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484142] saa7133[0]: i2c eeprom a0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484147] saa7133[0]: i2c eeprom b0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484152] saa7133[0]: i2c eeprom c0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484157] saa7133[0]: i2c eeprom d0: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484162] saa7133[0]: i2c eeprom e0: 97 db 00 00 ff ff ff ff ff ff ff ff ff ff ff ff [ 19.484167] saa7133[0]: i2c eeprom f0: 42 54 56 30 30 30 30 ff ff ff ff ff ff ff ff ff [ 19.492095] saa7133[0]: i2c scan: found device @ 0x1e [???] [ 19.504090] saa7133[0]: i2c scan: found device @ 0x5a [remote control] [ 19.516090] saa7133[0]: i2c scan: found device @ 0xa0 [eeprom] [ 19.526871] saa7133[0]: i2c scan: found device @ 0xc2 [???] [ 44.472365] ir-kbd-i2c: i2c IR (BeholdTV) detected at i2c-1/1-002d/ir0 [saa7133[0]] [ 44.472941] saa7133[0]: registered device video0 [v4l2] [ 44.472963] saa7133[0]: registered device vbi0 [ 44.472983] saa7133[0]: registered device radio1 [ 44.485281] saa7134 ALSA driver for DMA sound loaded [ 44.485342] saa7133[0]/alsa: saa7133[0] at 0xfdcff000 irq 20 registered as card -1 [ 44.573289] DVB: registering new adapter (saa7133[0]) technocrat@deskuntu:~$ dmesg | grep IR ............................................................................... [ 19.330570] saa7134 0000:03:06.0: PCI INT A -> GSI 20 (level, low) -> IRQ 20 ............................................................................... [ 19.511051] IR NEC protocol handler initialized [ 19.531267] IR RC5(x) protocol handler initialized [ 19.554977] IR RC6 protocol handler initialized [ 20.007954] IR JVC protocol handler initialized [ 20.106209] IR Sony protocol handler initialized ............................................................................... [ 20.202191] lirc_dev: IR Remote Control driver registered, major 249 [ 20.203191] IR LIRC bridge handler initialized ............................................................................... [ 44.472100] Registered IR keymap rc-behold [ 44.472253] input: i2c IR (BeholdTV) as /devices/virtual/rc/rc0/input5 [ 44.472362] rc0: i2c IR (BeholdTV) as /devices/virtual/rc/rc0 [ 44.472365] ir-kbd-i2c: i2c IR (BeholdTV) detected at i2c-1/1-002d/ir0 [saa7133[0]] ............................................................................... technocrat@deskuntu:~$ dmesg | grep i2c ............................................................................... [ 19.892597] i2c-core: driver [tuner] using legacy suspend method [ 19.892601] i2c-core: driver [tuner] using legacy resume method ............................................................................... technocrat@deskuntu:~$ dmesg | grep xc5000 [ 20.117306] xc5000 1-0061: creating new instance [ 20.124085] xc5000: Successfully identified at address 0x61 [ 20.124089] xc5000: Firmware has not been loaded previously [ 44.556094] xc5000: waiting for firmware upload (dvb-fe-xc5000-1.6.114.fw)... [ 44.572154] xc5000 1-0061: attaching existing instance [ 44.573270] xc5000: I2C read failed [ 44.573282] xc5000: I2C read failed [ 44.604941] xc5000: firmware read 12401 bytes. [ 44.604945] xc5000: firmware uploading... [ 48.744088] xc5000: firmware upload complete... [ 57.029242] xc5000: I2C write failed (len=4) [ 57.029508] xc5000: I2C read failed [ 57.043906] xc5000: I2C read failed technocrat@deskuntu:~$ lsmod Module Size Used by zl10353 13753 1 saa7134_dvb 34414 0 videobuf_dvb 14147 1 saa7134_dvb dvb_core 110178 1 videobuf_dvb saa7134_alsa 18546 1 rc_behold 12499 0 ir_kbd_i2c 13142 0 binfmt_misc 17498 1 ppdev 17180 0 pci_stub 12622 1 vboxpci 23112 0 vboxnetadp 25670 0 vboxnetflt 23506 0 vboxdrv 287233 3 vboxpci,vboxnetadp,vboxnetflt reiserfs 247394 1 xfs 820455 1 snd_hda_codec_hdmi 31787 1 snd_hda_codec_realtek 329829 1 ir_lirc_codec 12940 0 lirc_dev 19204 1 ir_lirc_codec snd_hda_intel 32995 2 snd_hda_codec 104241 3 snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel xc5000 18668 1 snd_hwdep 13652 1 snd_hda_codec ir_sony_decoder 12549 0 snd_pcm 96468 4 saa7134_alsa,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec snd_seq_midi 13324 0 ir_jvc_decoder 12546 0 snd_rawmidi 30385 1 snd_seq_midi tuner 27377 1 snd_seq_midi_event 14899 1 snd_seq_midi snd_seq 61538 2 snd_seq_midi,snd_seq_midi_event ir_rc6_decoder 12546 0 ir_rc5_decoder 12546 0 ir_nec_decoder 12546 0 fglrx 3264005 47 saa7134 181314 2 saa7134_dvb,saa7134_alsa joydev 17597 0 snd_timer 29708 2 snd_pcm,snd_seq snd_seq_device 14490 3 snd_seq_midi,snd_rawmidi,snd_seq snd 68011 17 saa7134_alsa,snd_hda_codec_hdmi,snd_hda_codec_realtek,snd_hda_intel,snd_hda_codec,snd_hwdep,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device rc_core 26919 10 rc_behold,ir_kbd_i2c,ir_lirc_codec,ir_sony_decoder,ir_jvc_decoder,ir_rc6_decoder,ir_rc5_decoder,ir_nec_decoder,saa7134 videobuf_dma_sg 19307 3 saa7134_dvb,saa7134_alsa,saa7134 videobuf_core 26138 3 videobuf_dvb,saa7134,videobuf_dma_sg v4l2_common 16494 2 tuner,saa7134 videodev 88394 3 tuner,saa7134,v4l2_common v4l2_compat_ioctl32 17160 1 videodev tveeprom 21250 1 saa7134 edac_core 53411 0 edac_mce_amd 23540 0 wmi 19141 0 k10temp 13119 0 soundcore 12680 1 snd snd_page_alloc 18484 2 snd_hda_intel,snd_pcm shpchp 37252 0 serio_raw 13208 0 i2c_piix4 13287 0 lp 17789 0 parport 46360 2 ppdev,lp usb_storage 57484 1 usbhid 46754 0 hid 95075 1 usbhid uas 17891 0 r8169 52130 0 pata_atiixp 13157 0 ahci 26002 7 libahci 30767 1 ahci Нанём с первой страницы ветки форума "Работа пульта ДУ в разных программах": igk72 сообщает, что существует два способа решения проблемы с разнобоем hardware-кодов клавиш и кодов клавиатурных событий: Цитата: 1) применять пакет lirc с настройкой на драйвер dev/input и соответсвуюшим lircd-конфигом. Как настроить lirc читайте сами (или ниже, я дописал для новичков), тем более это легко и везде описано. Готовый файл lircd.conf 2) с помощью программы input--kbd (из пакета input-utils) на старте динамически изменять "расскладку" пульта, так чтобы не было многобайтных клавиатурных событий от пульта. примерно вот так input-kbd -f /etc/input-kbd/beholder `cat /proc/bus/input/devices | grep -2 "i2c-.*/.*/ir0" | grep "H:" | awk '{ sub(/event/, "", $3); print $3}'` >/dev/null 2>&1 расположить можно в /etc/rc.d/rc.local или где еще в зависимости от дистрибутива. Файлы - файл beholder для input-kbd - пакет input-utils Надо ли упоминать, что файлы недоступны для загрузки? А должен ли пост в сязи с этим быть отредактированным? Про логику поста уже кто-то писал, присоединяюсь к оценке - логики мало. Понятно, что писалось при дифиците времени и человеком, который сам себя понимает на 100%. То, что igk72 соображает в Linux у меня сомнений нет никаких, СНИМАЮ ШЛЯПУ! Но, уважаемые знатоки, нам, не знатокам очень трудно, и вся надежда на вас. Если уж берётесь помогать, то будьте снисходительнее, пожалуйста. Поймите правильно, кто-то давно прожевал проблему, переварил, и выбросил, а кто-то только что пришёл на форум за информацией и за помощью, и оказывается в бурлящем океане разнокалиберной информации. Форум ведь не мануал, прочитал - сделал. Попробуйте, к примеру, представить себя на фондовой или валютной бирже, в чём вы ничего не понимаете, где кричат и машут руками много людей, и попробуйте представить, как вы что нибудь продаёте-покупаете в этом гаме. :-) Простите! Просто наболело, измучился из-за непоняток. Итак, я выбираю второй способ из рекомендованных igk72. Мотивы: - не хочу трогать lirc, т.к. задача - управлять тюнером а не всем рабочим столом; - хочу просто заставить пульт ДУ и тюнер работать нативно, т.к. вижу, что модули для этого грузятся и похоже, что работать должны; - хочу понять как всё это работает, ибо не обезъяна - "нажми на кнопку, получишь результат"; - к стыду своему, слаб в английском, man'ы читать тяжело (но пытаюсь), но как только пульт заработает, обещаю, начну повышать свой уровень в английском. Итак, файла beholder для input-kbd у меня нет. Иду дальше. Встречаю предположение: Цитата: Возможно надо так же четко указать чтобы программы не захватывали устройство пульта как еще одну клавиатуру. Думаю касается ли это меня, я же не знаю что делать, и где искать проблему. Но иду по ссылке (т.е. начинаю растекаться мозгом по форуму): http://www.beholder.ru/bb/viewtopic.php?p=48076#48076 Не зря, наткнулся на интересную подсказку, увидел крокозябры (нечитаемые символы) на экране при нажати кнопок пульта на выходе команды: Код: cat /dev/input/event5 видимо пульт дышит. Дале читаю малопонятное, то про lirc и его конфиги, который мне не нужен, то ещё про что-то. Но на всякий случай набил следующим содержимым указанный файл: /etc/hal/fdi/preprobe/lirc.fdi Код: <?xml version="1.0" encoding="UTF-8"?> <deviceinfo version="0.2"> <device> <match key="info.product" contains_ncase="Behold"> <merge key="info.ignore" type="bool">true</merge> </match> </device> </deviceinfo> Далее узнаю, что Х-сервер имеет свою таблицу соответствия кодов... голова начинает пухнуть. Далее igk72 стругает несчастного Otto и объясняет ему что, как и где надо читать внимательнее. Но тем не менее, даёт ему советы. Одним из них я пользуюсь, но получаю следующее при команде: Код: sudo input-events $(lsinput |grep -B 5 "BeholdTV" | grep "event" | sed 's#.*event##') open /dev/input/event0: Permission denied usage: input-events [ -g ] [ -t <sec> ] devnr Но я понимаю что хочет igk72, подставляю в команду то, что подразумевается и получаю: Код: sudo input-events 5 /dev/input/event5 protocol version mismatch (expected 65536, got 65537) К слову надо сказать: Код: technocrat@deskuntu:~$ sudo lsinput [sudo] password for technocrat: /dev/input/event0 protocol version mismatch (expected 65536, got 65537) Далее отцы продолжают разговаривать про lirc, потом появляется паскалист, для идеи которого место в отдельной теме. А pupkin кого-то победил, но где он взял файл behold по прежнему не ясно. 8 страниц заканчиваются гласом о помощи MikeB: Цитата: Можно поподробнее, ir-kbd-i2c rc-behold /etc/rc_keymaps/behold это команда или это нужно дописать в /etc/rc_map.cfg? То есть, я пришёл к финишу ни с чем, прочитав 8 страниц. Тема не раскрыта. Жду помощи и подсказок. Кто возьмётся помочь? |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |