LIRC

Obsah

Čo to je LIRC?

LIRC je skratka pre Linux Infrared Remote Control. Je to sada programov na kontrolu počítača pomocou dialkového ovládania. Pôvodne LIRC podporoval len dialkové ovládania fungujúce na princípe infračervených lúčov a po domácky vyrobené prijímače. Dnes už podporuje aj niektoré ovládania fungujúce na bezdrôtovom (rádiovom, angl. wireless) princípe.

Najdôležitejšou súčasťou LIRC je lircd démon, ktorý dekóduje IR signály a posiela ich na soket /dev/lircd. Druhým démonom je lircmd. Ten sa pripojí k lircd a prekladá dekódované IR signály na pohyby myši.

Okrem týchto dvoch démonov obsahuje LIRC balíček uživateľské programy, pomocou ktorých je možné ovládať počítač dialkovým ovládaním. Sú tu programy na spúšťanie procesov, na posielanie X events, na posielanie stiskov kláves aplikáciám a pod. Okrem toho LIRC podporujú niektoré známe programy ako MPlayer alebo XMMS.

Čo potrebujeme k používaniu LIRC?

K tomu, aby sme mohli začať LIRC používať, potrebujeme:

Inštalácia

Keďže Gentoo je distribúcia, ktorú používam, budem sa venovať inštalácii pod Gentoo, ktorú mam v praxi odskúšanú a potom inštalácii pod Linuxom obecne.

Inštalácia v Gentoo

Ja vlastním USB dialkové ovládanie ATI Remote Control. Od toho sú odvodené názvy v nasledujúcom texte. V Gentoo je pre LIRC ebuild lirc a use flag lirc (ktorú je vhodné zapnúť). Jediné, čo je treba pred kompiláciou nastaviť je premenná LIRC_OPTS, ktorá určuje typ dialkového ovládania. V mojom prípade je LIRC_OPTS="--with-driver=atiusb". Túto premennú je možné nastaviť buď v /etc/make.conf alebo priamo na príkazovom riadku pred emerge lirc. Potom už len stačí napísať emerge lirc, čím sa skompilujú LIRC moduly a nainštalujú programy.

Potom nastavíme systém. Do /etc/modules.autoload.d/kernel-2.6 pridáme lirc_atiusb. V /etc/conf.d/lircd nastavíme parametre: LIRCD_OPTS="-d /dev/lirc/0" v prípade devfs alebo LIRCD_OPTS="-d /dev/lirc0" v prípade udev. Tak už len nastavíme, aby sa lircd spúšťal pri štarte: rc-update add lircd default.

Inštalácia v Linuxe obecne

Stiahneme si zdrojáky z www.lirc.org. Tie rozbalíme (tar -xvjf lirc-0.7.1.tar.bz2) a spustíme setup.sh (./setup.sh), kde vyberieme správne dialkové ovládanie a zvolíme "Save configuration & run configure". Potom spustíme make install, čím sa nainštalujú potrebné moduly a programy.

Ďalšie nastavenia sú už závislé na distribúcii, ktorú používate. Viac informácií sa dá získať v súbore doc/html/install.html, ktorý sa dodáva zo zdrojákmi lirc.

Nastavenia

Poďme sa pozrieť nato, ako treba LIRC nastaviť, aby sme ho mohli začať používať. Dôležité su pre nás dva súbory, a to: /etc/lircd.conf a ~/.lircrc.

/etc/lircd.conf

Toto je základný konfiguračný súbor lircd démona. Tu sú definované technické parametre dialkových ovládaní a ich tlačítok. Tento súbor je možné získať dvoma spôsobmi:

Ak sa nám teda nepodarilo získať funkčný súbor, použijeme program irrecord nazov_suboru, ktorý nám vytvorí funkčný konfiguračný súbor. Ten potom skopírujeme do /etc/lircd.conf a spustíme lircd démona lircd. Potom otestujeme jeho funkčnosť pomocou programu irw.

Takto vyzerá môj lircd.conf.

~/.lircrc

Toto je konfiguračný súbor pre všetky programy, ktoré používajú LIRC. Je možné ho nastaviť aj pre celý systém v /etc/lircrc. Základná syntax súboru je následovná:

    begin 
	prog = názov_programu
	button = názov_tlačítka 
	config = príkaz 
    end
    
Vyššie uvedené povie lircd, že program názov_programu (napr. irexec, irxevent, ale aj mplayer, xmms) má po stlačení tlačítka názov_tlačítka (napr. power, play) vykonať príkaz (napr. quit, play). Váš .lircrc si môžete otestovať pomocou programu ircat názov_programu.

V dokumentácii ku projektu sa môžete dočítať o ďalších parametroch, z ktorých je zaujímavý ešte repeat a mode. Tieto sa však nepoužívajú až tak často.

Takto vyzerá môj .lircrc.

Použitie v praxi

Priamo v balíčku LIRC je niekoľko užitočných programov, ako irexec, irpty a irxevent.

irexec
Umožňuje spúšťanie programov pomocou dialkového ovládania. Je to vhodné napr. na vypínanie počítača.
irpty
Posiela stisky kláves (aj celé reťazce) programu. Takto je možné ovládať konzolové aplikácie ako napr. cdcd, workbone a pod.
irxevent
Posiela stisky kláves oknu (X aplikáciám). Použitie je veľmi široké, napr. minimalizácia, maximalizácia okna; ovládanie prezentácie a pod.

LIRC podporujú aj známe programy MPlayer a XMMS, ako som už spomínal na začiatku. Využitie je v týchto prípadoch naprosto zrejmé. Aby s nimi LIRC fungovalo, je potrebné MPlayer skompilovať s podporou lirc a do XMMS doinštalovať xmms-lirc plugin.
Na tieto dva programy LIRC najčastejšie používam. Keďže LIRC beží ako démon v pozadí, môžem ovládať XMMS bez toho, aby mal focus, čo vlastne robí z počítača Hi-Fi :)

Linky


Návrat na domovskú stránku Linuxový seminář