Bienvenue visiteur (Inscription |  Connexion)
Qui est en ligne ?
Il y a : 11 utilisateurs en ligne, consultez le détail
Auteur Message
Sly007
#0 Message posté le : 10-10-2006 à 23:29:56


Naboo


Forum : Inscrit
Association : Trésorier
Arrivé(e) le : 19-11-2003
Nombre de messages : 2398


LIRC (Linux Infrared Remote Control) est un programme qui permet de se servir de sa télécommande infra-rouge (celle que vous avez eu avec votre carte TV et qui traine dans un tiroir... si si, celle-là).

Voici donc quelques lignes qui devraient vous permettre d'accéder à ce rêve de fainéant. Cette méthode est celle que j'ai employée pour ma Mandriva et ma Ubuntu mais doit fonctionner sur d'autres distributions, moyennant parfois quelques légères retouches.

1. Prérequis


  • Les sources du noyau, (les headers ne suffisent pas pour Ubuntu, elles ne contiennent pas les sources de bttv, il vous faut donc linux-source).
  • Avoir installé votre carte TV. Si ce n'est pas le cas, suivez le guide!
  • Il vous faudra bien entendu la dernière version du logiciel ici
  • Pour cette méthode, il vous faut aussi dialog (qui n'est pas sur Ubuntu par défaut, mais un simple apt-get install dialog resout le probleme tres vite! Pour Mandriva, pas de soucis).

2. Installation


$ tar -xjvf /ou/est/lirc-0.8.0.tar.bz2
$ cd lirc-0.8.0
$ ./setup.sh


Et voilà un bel installeur graphique dans lequel on va faire des choix : 1 pour choisr le driver, 5 pour les cartes TV, là c'est à vous de trouver votre carte. Une fois que c'est fait, faites le choix 3 pour lancer la configuration : retour à la console.
$make
$su
$make install

3. Configuration



A ce stade, vous devez avoir un fichier /etc/lirc.conf qui correspond à votre télécommande. Si ce n'était pas le cas, ou s'il n'était pas bon, vous trouverez une liste des différentes télécomandes

Il vous reste à créer un fichier ~/.lircrc (pour chaque utilisateur désireux d'utiliser la télécommande) c'est par ce fichier que vous définissez les actions ou commnandes liées aux boutons de votre télécommande.

Attention : certains logiciels, comme Xine par exemple, demandent à être compilés avec le support de lirc (--enable-lirc au configure dans le cas de Xine) ce qui n'est pas toujours le cas, comme pour les rpm plf de Xine par exemple.

4. Utilisation



On commence par charger le module. Pour les cartes TV, il s'agit de lirc_gpio.
$modprobe lirc_gpio


Ensuite, on lance lircd (sauf si vous avez mis --prefix=/usr au configure, il doit être dans /usr/local/bin)
/usr/loca/sbin/lircd --device /dev/lirc0


Lircd est chargé et peut fonctionner, il reste à se donner les droits d'acceder au récepteur :
chmod 666 /dev/lircd


Enfin, en user, on appelle irexec, et normalement, ca marche! (si irexec reste au prompt, c'est que le driver fonctionne. En cas d'erreur dans votre ~/.lircrc, vous aurez un message qui vous l'indiquera.

5. Automatisation


5.1 Chargement du module



C'est on ne peut plus simple, on rajoute lirc_gpio (ou tout autre module qui vous aura été donné à la fin du configure) dans :
  • /etc/modprobe.preload pour Mandriva
  • /etc/modules Pour Ubuntu

5.2 Lancement de irexec



Pour l'utiliser, on lance irexec en démon pour le user : irexec -d. on peut passer par le fichier ~/.bashrc ou encore par le menu gnome :
  • configuration > avancé > sessions > programmes au démarrage pour Mandriva.
  • Systeme > préférences > session > programmes au démarrage pour Ubuntu.

5.3 Lancement de lirc (cas particulier : udev)



A partir de la ça marche ! du moins, si on utilise sysfs. Pour les utilisateurs de udev, ce qui est le cas des distributions qui nous préoccupent ici, il y a un probleme au reboot car udev ne crée pas le device comme lors de l'install. Pour remédier à ce problème on copie le fichier lirc.rules dans /etc/udev/rules.d :
cp /ou/est/lirc-0.8.0/contrib/lirc.rules /etc/udev/rules.d


Il faut aussi spécifier au démon quel device utiliser, et tant qu'à y être, dès le démarrage :
  • Pour Mandriva, on ajoute cette ligne à /etc/rc.local
    lircd --device /dev/lirc/0

  • Pour Ubuntu, il faut éditer le fichier lirc.debian qui est dans /ou/est/lirc/contrib et remplacer /dev/lirc par /dev/lirc/0 aux lignes 15 et 38. Ensuite, vous le copiez dans /etc/init.d :
    $sudo cp /ou/est/lirc-0.8.0/contrib/lirc.debian /etc/init.d/lirc
    $sudo update-rc.d lirc defaults 20

Rebootez, et enjoy! Sachez aussi qu'il est possible d'émuler sa télécomande avec lircmd qui est compilé avec lirc. Le site de lirc offre aussi des solutions pour se fabriquer son petit recepteur infrarouge sur port série, pour pouvoir utiliser d'autres télécommandes.

Ce tuto est très largement inspiré par la doc officielle contenue sur le site de lirc.




--Message édité par Sly007 le 10-10-2006 à 23:29:56--


-------------------------------------
RHAAAAAA! (lovely) G.W.B.