Nepoužívat radši (zatím) instalaci z balíčku rpm (já se potrápil s balíčkem lirc-0.6.5-fr1.i386.rpm)
Problém byl v tom, že balíček dělal člověk s infra přijímačem na sériovém portu a já mám
televizní kartu Avermedia TV Phone. Po instalaci to nechodilo a tak jsem se vrátil zpátky ke
klasickému balíčku tar.gz a trojici příkazů configure, make a make install.
Jenže jsem zapoměl, že instalace pro sériový port vytvoří taky v adresáři /dev zařízení /dev/lirc,
/dev/lircd a /dev/lircm. A ty je lepší před instalací, pokud existují, smazat, protože se liší podle
typu přijímače. Do doby než jsem je smazal nic nechodilo.
Z nainstalovaného zdrojového balíčku (rpm -U lirc-0_6_5-fr1_src.rpm) jsem použil jen soubor
/usr/src/redhat/SOURCES/lirc-0.6.5.tar.bz2, překopíroval si ho do nějakého jiného adresáře
(v mém případě /home/install/progs/lirc),
tam rozbalil příkazem bunzip2 lirc-0.6.5.tar.bz2 a roztaroval příkazem tar xvf lirc-0.6.5.tar,
vlezl do vzniklého adresáře lirc-0.6.5 a spustil skripty configure, make a make install
(make install musí spustit root). Aby lirc mohli používat i obyčejní uživatelé, je nutné
nastavit pro ně příslušná práva třeba příkazem chmod 666 /dev/lir* .
Do /etc/init.d jsem nakopíroval soubor lirc a příkazem
chkconfig --add lirc jsem zajistil spouštění lirc démonů při startu systému. Je nezbytné aby
se lirc démoni startovaly až po startu ovladačů pro televizní kartu. V redhatu je skript
/etc/rc.d/rc.local do kterého jsem si přidal spouštění skriptů
pro natažení potřebných modulů do jádra. Pro televizní kartu je to skript
/usr/local/bin/tv a pro případné zvědavce tu mám i soubor
modules.conf .
Spouštění skriptu rc.local zajišťují v jednotlivých runlevelech linky S99local. Ty jsem jako root
jednoduše přejmenoval příkazem mv S99local S96local a tím zajistil že se spustí těsně před
lirc démony, které po chkconfig --add lirc spouští linky S97lirc. Jde určitě i jinak, ale
já to mám takhle.
Ještě než spustíme démony je třeba nakopírovat nebo vytvořit konfigurační soubory
/usr/local/etc/lircd.conf a
/usr/local/etc/lircmd.conf
bez nichž se démoni nespustí. Tyhle konfiguráky jsem našel v adresáři /home/install/progs/lirc/lirc-0.6.5/remotes/avermedia
pod jmény lircd.conf.avermedia98 a lircmd.conf.avermedia98 .
Je-li vše připraveno tak jako root spustíme démony příkazem /etc/init.d/lirc start a zkontrolujeme jestli se moduly
pro lirc objevily ve výpisu
[root@simlin log]# lsmod | grep lirc lirc_gpio 5088 0 (unused) lirc_dev 8096 1 [lirc_gpio] bttv 56912 1 (autoclean) [lirc_gpio]no a potom lze spustit příkaz irw, mačkat ovladač a sledovat výpis přijímaných kódů
[root@simlin log]# irw 0000000040bf7887 00 VOL_DOWN TVPhone98 0000000040bff807 00 VOL_UP TVPhone98 0000000040bff807 01 VOL_UP TVPhone98 0000000040bf807f 00 TV/FM TVPhone98No vida, funguje to! Co s tím? To si musí vyřešit každý sám. Já můžu spustit a ovládat Kwintv, Xawtv, gradio, ovládat hlasitost a vypnout počítač. Vše je v domovském adresáři jednotlivého uživatele v souboru ~/.lircrc. Má to ještě spoustu much a buď to nechápu a nebo vůbec nejde měnit/předefinovat funkci tlačítek použitých pro volání jednotlivých sekcí module. Taky se mi nepovedlo zatím rozchodit ovládaní kscd. Pokud to někomu chodí, tak bych měl zájem.
[root@terlin lirc-0.6.5]# cat .setup.config LIRC_DRIVER=avermedia98 LIRC_PORT=none LIRC_IRQ=none LIRC_MAJOR=61 IRTTY=none DRIVER_PARAMETER=none SOFT_CARRIER=on TRANSMITTER=off TIMER=65536 X11_WINDOWS=on DEBUG=off NO_DAEMONIZE=off NO_LONG_CODES=off USE_SYSLOG=off [root@terlin lirc-0.6.5]# ls -al /dev/lir* crw-rw-rw- 1 root root 61, 0 lis 21 23:11 /dev/lirc srw-rw-rw- 1 root root 0 pro 6 01:27 /dev/lircd prw-rw-rw- 1 root root 0 lis 22 15:17 /dev/lircm [root@terlin lirc-0.6.5]#