Gérer sa télécommande avec lirc
10 Oct. 2006
- Auteur : Sly007
- Responsable : Sly007
- Score ( voter ) :



- Connexes : Même auteur | Même responsable | Historique
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