Lirc : Configurer une télécommande infrarouge
De Wiki de la communauté Mandriva.
Beaucoup d'ordinateurs récents, dont les portables multimédias, disposent d'une télécommande intégrée. Pour les ordinateurs n'ayant pas été livré avec ce matériel à l'origine, assurez-vous d'avoir une télécommande générique non exotique et d'avoir un récepteur infrarouge de bonne qualité et bien placé, s'il n'est pas déjà intégré à l'ordinateur.
Sommaire |
Installation
| Pour installer lirc, lancez Sélectionnez-le et cliquez sur Appliquer (Aide). Vous pouvez également l'installer en utilisant la console en tant qu'administrateur avec la commande suivante : urpmi lirc
Astuce ! Si vous utilisez le lecteur multimédia VLC, vous pouvez aussi installer le paquet vlc-plugin-lirc afin de pouvoir utiliser votre télécommande dans VLC.
À noter ! Lors du prochain démarrage, le démarrage prendra entre 3 et 5 minutes de plus en fonction de votre ordinateur, et ce à cause de la construction de ce module. Ceci n'arrive qu'une seule fois, et ne se reproduis que s'il y a eu une mise à jour du noyau linux. Rappelez-vous que pour voir la progression du démarrage, vous pouvez appuyer sur Echap, et attendre que la console s'affiche.
Le logiciel de configurationVous disposez à présent d'un logiciel simple et claire pour configurer votre télécommande et la faire fonctionner en quelques minutes. Il n'est malheureusement disponible qu'en anglais, mais cela ne devrait pas pour autant rendre la tâche difficile. Pour configurer votre télécommande :
L'outil de configuration de votre télécommande apparaît enfin. IR Receiver (Récepteur Infrarouge)
Attention ! Il est conseillé, dès la première ouverture du logiciel, de mettre à jour la liste des télécommandes supportées. Ceci vous permettra de trouver une liste bien plus vaste de télécommandes supportées et d'améliorer leur prise en charge. Pour cela, vous devez cliquer sur le bouton Update.
Configurer une télécommande multimédiaIR Remote Control (Télécommande Infrarouge) Il est aujourd'hui plus simple de configurer une télécommande pour ordinateur, mais cela nécessite de respecter certaines étapes.
Essayez de voir si les boutons de votre télécommande réagissent. Il se peut que certains ne fonctionnent pas, mais la plupart devraient fonctionner. Un programme très adapté à la télécommande est le Centre multimédia Elisa. Mais la télécommande doit vous permettre d'aller et venir dans certains menus, ou de commander des vidéos dans Totem. Si votre télécommande ne réagit pas, tentez un redémarrage complet de votre ordinateur. Si après, votre télécommande ne fonctionne toujours pas, essayez de revoir votre configuration. Configuration avancéeAvant de poursuivre! Cette partie de l'article est bien plus complexe et compliquée que la précédente. Bien qu'elle puisse permettre des réglages plus fins, il est vivement conseillé de remplir les conditions suivantes :
Avant tout, il est recommandé à l'utilisateur de maîtriser quelques commandes de base en console comme se rendre dans un répertoire, éditer, modifier et enregistrer un fichier texte. Lirc est un programme qui permet de gérer vos périphériques infrarouge. Il est utile pour gérer les applications KDE (Amarok, Kaffeine etc.) depuis une télécommande de carte TV/TNT et donc...depuis votre fauteuil ! L'ensemble devient très utile pour l'installation d'un « Multimédia Center » fonctionnant sous Linux. Attention ! Les divers « multimédias center's » (Freevo, MythTV, My Media Systeme etc.) ont tous leur propre fichier de configuration pour utiliser lirc donc la gestion infrarouge. Ici nous ne traitons que de la partie installation fonctionnant avec irkick, le gestionnaire infrarouge de KDE. C'est ce dernier qui lance les applications KDE ou des applications « étrangères » et qui permet de configurer votre télécommande avec les actions à y associer (uniquement pour le paramétrage des applications KDE et le lancement d'applications « étrangères », je me répète mais c'est important !) Par principe, on a donc toujours : une touche enfoncée sur la télécommande = une action exercée sur un programme KDE. Pour résumer : Lirc -> irkick -> Applications KDE. Lirc-> irkick-> Lancement d'application non-KDE (ex :Média Center.)-> Gestion interne par le média center. InstallationAvant tout, votre carte TV/TNT doit être reconnue par le système et correctement installée. Le site de linuxtv.org vous donnera toutes les informations nécessaires pour l'installation. Pour les cartes usb, on le vérifie en console en tapant : cat /proc/bus/input/devices Votre carte doit apparaître dans la liste : ... I: Bus=0000 Vendor=0000 Product=0000 Version=0000 N: Name="TerraTec/qanu USB2.0 Highspeed DVB-T Receiver remote control" P: Phys=usb-0000:00:02.2-2/input0S: Sysfs=/class/input/input5 H: Handlers=kbd event4 B: EV=100003 B: KEY=108fc210 204300000000 0 8000 208000000001 9e168000000000 ffc... Ici il s'agit d'une carte TNT de chez Terratec modèle Cinergy T2. Pour les cartes PCI, on tape : (pour savoir si votre carte est reconnue) Pour les deux types de carte, on tape: (pour vérifier que les modules du noyau pour votre carte sont chargés) Vous vérifierez que vous avez les fichiers demux0, dvr0, frontend0, net0 dans le répertoire /dev/dvb/adapter0. Si oui, votre carte est installée. Les paquets suivants doivent être installés. On part du principe que tous ces paquets sont nécessaires, les dkms étant des paquets spécifiques pour le noyau. ( à préciser...) lirc-0.8.1 lirc-remote dkms-lirc dkms-lirc-gpio lirc-remote est un paquet contenant les fichiers de configurations des télécommandes reconnues par Lirc. dkms-lirc-gpio est un paquet optionnel en fonction de votre carte TV. ConfigurationLIRC installé, vous devez avoir accès à trois fichiers de configuration : /etc/lircd.conf /home/XXXX/.lircrc (fichier caché dans votre home à créer par vous-même) /etc/sysconfig/lircd lircd.conf permet à lirc de reconnaître votre télécommande avec ses touches respectives. Vous devez y copier le fichier de votre télécommande que vous trouverez dans /usr/share/lirc-remotes/. Voici un exemple de fichier /etc/lircd.conf : begin remote name terratec_cinergy_T2 bits 16 eps 30 aeps 100 one 0 0 zero 0 0 pre_data_bits 16 pre_data 0x8001 gap 199695 toggle_bit 0 begin codes 1 0x0002 2 0x0003 3 0x0004 4 0x0005 5 0x0006 6 0x0007 7 0x0008 8 0x0009 9 0x000a 0 0x000b UP 0x0067 LEFT 0x0069 RIGHT 0x006a DOWN 0x006c MUTE 0x0071 VOLUMEDOWN 0x0072 VOLUMEUP 0x0073 POWER 0x0074 PAUSE 0x0077 STOP 0x0080 RECORD 0x00a7 REFRESH 0x00ad PLAY 0x00cf OK 0x0160 OSD 0x0161 INFO 0x0166 EPG 0x016d TEXT 0x0184 VIDEO 0x0189 RED 0x018e GREEN 0x018f YELLOW 0x0190 BLUE 0x0191 CHANNELUP 0x0192 CHANNELDOWN 0x0193 NEXT 0x0197 PREVIOUS 0x019c end codes end remote Le fichier .lircrc de votre home vous permet de personnaliser votre télécommande pour chaque application. Cependant, ici il ne nous sert pas, car c'est irkick qui fera ce travail. Vous pouvez trouver des exemples de fichiers lircrc sur le net. Enfin, et c'est le plus délicat, il vous reste à configurer le fichier /etc/sysconfig/lircd. Voici un exemple, toujours pour la carte usb Cinergy T2 : # Customized setings for lirc daemon # The hardware driver to use, run lircd --driver=? for a list DRIVER=devinput # Hardware driver module to load HWMOD=evdev # The device node that communicates with the IR device. # if you are using lirc_serial, set DEVICE to /dev/ttyS[0-9] # where 0-9 is the serial port your IR receiver is plugged # with devfs enabled DEVICE=/dev/input/event4 #DEVICE=/dev/lirc/serial # without devfs #DEVICE=/dev/lirc # Serial port for the receiver (for serial driver) # COM1 (/dev/ttyS0) #COM_PORT=/dev/ttyS0 #DRIVER_OPTS="irq=4 io=0x3f8" Dans ce fichier, vous devrez compléter les variables suivantes : - le DRIVER (dossier périphérique de votre carte) ici : devinput. - le HWMOD (le nom du module ou « pilote » utilisé par lirc pour reconnaître votre carte TV/TNT : et c'est le plus délicat !) ici : evdev (pour l'usb notamment). - le DEVICE est celui qui apparaît sur la ligne H lorsque vous avez taper cat /proc/bus/input/devices pour vérifier la présence de votre carte TV/TNT,ici c'est donc : event4 (voir chapitre Installation). N'oubliez pas d'enregistrer les modifications du fichier ! Le site de LIRC, contenant la dernière version du programme et de nombreuses informations d'installations et de configuration de votre télécommande, peut vous être utile : http://www.lirc.org DémarrageOn tape en console et en root : Si cela ne fonctionne pas, il y a une erreur de configuration.
GestionVous pouvez choisir d'utiliser Irkick. Rendez-vous dans le Centre de configuration de KDE menu périphériques > contrôleur distant (il s'agit d'irkick). Votre télécommande doit apparaître dans la colonne de droite. Il ne vous reste plus qu'à ajouter une application, touche par touche. Si vous ne trouvez pas irkick, vérifiez bien que le paquetage kdeutils-common est bien installé. Ou alors, vous pouvez choisir d'utiliser Irexec pour démarrer et exploiter vos applications à l'aide de votre télécommande: Enfin, vous pouvez utiliser Lirc pour simuler une souris à l'aide de votre télécommande en utilisant le programme Lircmd, compris dans Lirc. Problème au démarrage : Udev et lircPour résoudre le problème des changements d'entrée du périphérique infrarouge sur /dev/input/eventX qui empêche le bon fonctionnement de lirc et oblige à modifier à chaque démarrage le fichier /etc/sysconfig/lird, on se propose d'ajouter une règle udev au démarrage de Mandriva. Détermination de /input/eventEn console on tape : Résultat :
I: Bus=0003 Vendor=0ccd Product=0038 Version=0001 N: Name="TerraTec/qanu USB2.0 Highspeed DVB-T Receiver remote control" P: Phys=usb-0000:00:1d.7-2/input0 S: Sysfs=/class/input/input4 U: Uniq= H: Handlers=kbd event4 B: EV=100003 B: KEY=108fc210 2043 0 0 0 0 8000 2080 1 9e1680 0 0 ffc Notre périphérique apparaît sur le port /event4. Le vôtre est peut-être sur un « event » différent. Par conséquent, on va rechercher (vous adapterez l' « event » au vôtre), l'attribution physique du récepteur infrarouge, on tape, en root : Attention ! Bien entendu, vous avez adapté votre propre "event" en fonction du résultat que vous propose la commande cat. Résultat: looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-3/input/input4':
KERNELS=="inpu4"
SUBSYSTEMS=="input"
DRIVERS==""
ATTRS{name}=="IR-receiver inside an USB DVB receiver"
ATTRS{phys}=="usb-0000:00:1d.7-3/ir0"
ATTRS{uniq}==""
ATTRS{modalias}=="input:b0003v0CCDp0038e0106-e0,1,k71,72,73,74,77,80,A7,AD,CF,160,161,166,16D,184,189,18E,18F,190,191,192,193,197,19C,ramlsfw"
looking at parent device '/devices/pci0000:00/0000:00:1d.7/usb1/1-3':
KERNELS=="1-3"
SUBSYSTEMS=="usb"
DRIVERS=="usb"
ATTRS{configuration}==""
ATTRS{bNumInterfaces}==" 1"
ATTRS{bConfigurationValue}=="1"
ATTRS{bmAttributes}=="80"
ATTRS{bMaxPower}=="476mA"
ATTRS{urbnum}=="44657"
ATTRS{idVendor}=="0ccd"
ATTRS{idProduct}=="0038"
ATTRS{bcdDevice}=="0106"
ATTRS{bDeviceClass}=="ff"
ATTRS{bDeviceSubClass}=="ff"
ATTRS{bDeviceProtocol}=="ff"
ATTRS{bNumConfigurations}=="1"
ATTRS{bMaxPacketSize0}=="64"
ATTRS{speed}=="480"
ATTRS{busnum}=="1"
ATTRS{devnum}=="3"
ATTRS{version}==" 2.00"
ATTRS{maxchild}=="0"
ATTRS{quirks}=="0x0"
ATTRS{authorized}=="1"
ATTRS{manufacturer}=="TerraTec GmbH"
KERNELS=="input4"
Création de la règle udevOn ajoute la nouvelle règle udev. En console, avec votre éditeur de texte préféré, ici : kwrite. Soit :
On ajoute la ligne dans le fichier vierge en collant et copiant ceci : KERNEL=="event*", ATTRS{idProduct}=="0038", SYMLINK+="input/terratec", MODE="0666"
Attention ! En fonction du résultat de la commande "udevadmn info" précédente, vous remplacerez le contenu de l'argument ATTRS{idProduct} par le vôtre. Vous donnerez ensuite un nom à votre périphérique dans l'argument SYMLINK, ici il s'agit du nom de « terratec ». On enregistre et on ferme l'éditeur. La règle est créer ! Modification du fichier lircdLe nouveau nom du périphérique infrarouge étant « terratec », on le précise dans le fichier /etc/sysconfig/lircd.conf, dans l'argument DEVICE, soit : # Customized setings for lirc daemon # The hardware driver to use, run lircd --driver=? for a list DRIVER=devinput # Hardware driver module to load HWMOD=evdev # The device node that communicates with the IR device. # if you are using lirc_serial, set DEVICE to /dev/ttyS[0-9] # where 0-9 is the serial port your IR receiver is plugged # with devfs enabled DEVICE=/dev/input/terratec #DEVICE=/dev/lirc/serial On enregistre et on ferme l'éditeur. RedémarrageAprès avoir redémarré votre Mandriva, vous testerez en console la reconnaissance de votre périphérique infrarouge à l'aide de la commande irw. Attention ! Si irw n'arrive pas à se connecter, c'est que la règle udev n'est pas correcte ou ne correspond pas tout à fait à votre périphérique. On peut voir si udev a bien fait son travail en tapant en console : Résultat: drwxr-xr-x 2 root root 80 2008-08-28 14:03 by-id/ drwxr-xr-x 2 root root 140 2008-08-28 14:03 by-path/ crw-r----- 1 root root 13, 64 2008-08-28 14:03 event0 crw-r----- 1 root root 13, 65 2008-08-28 14:03 event1 crw-r----- 1 root root 13, 66 2008-08-28 14:03 event2 crw-r----- 1 root root 13, 67 2008-08-28 14:03 event3 crw------- 1 arno root 13, 68 2008-08-28 14:03 event4 crw------- 1 arno root 13, 69 2008-08-28 14:03 event5 crw-r----- 1 root root 13, 63 2008-08-28 16:03 mice crw-r----- 1 root root 13, 32 2008-08-28 14:03 mouse0 lrwxrwxrwx 1 root root 6 2008-08-28 14:03 terratec -> event4 La dernière ligne nous montre bien que udev a créé une entrée spéciale pour notre périphérique. Pour conclure, Mandriva donnera à chaque démarrage l'attribution du numéro de produit de notre périphérique à la même entrée, ici, /dev/input/terratec. Ce chemin peut-être différent si vous utilisez un périphérique en carte pci et non en usb.
RemarquesLe fichier lircd.conf proposé dans les remotes de Lirc ne fonctionnait pas pour moi. Je l'ai récupéré sur le site de mandrivaitalia.org ci-dessous. Le paramétrage du fichier /etc/sysconfig/lircd dépend entièrement de l'installation et du modèle de votre carte TV/TNT. Ici il s'agissait d'une carte usb mais vous détenez peut-être une carte pci. Pour les configurations pci, des fichiers lircd peuvent se trouver sur le net. Je tiens à remercier le site de www.mandrivaitalia.org pour ce tutoriel qui m'a en partie inspiré : Enfin, l'installation reste un peu délicate ayez de la patience et du temps ! |



