Christophe Nowicki

April 30, 2009

Configuration de l’USB-UIRT (Universal Infrared Receiver Transmitter) sous Debian GNU/Linux

L’USB-UIRT est un petit module qui se branche sur le port USB et qui permet d’envoyer et recevoir des ondes infrarouges.
Je l’utilise pour controler les différents éléments de mon installation home-cinéma (Amplificateur Audio/Vidéo, Freebox, Lecteur de DVD, etc…) à partir de ma machine Multimédia fonctionnant sous Debian GNU/Linux “Lenny”.
J’ai acheté mon module chez Domadoo en France : USB-UIRT (Universal Infrared Receiver/Transmitter).
L’objet de ce billet est l’installation du module sous Debian GNU/Linux.

Installation du matériel

Lorsque vous branchez le module sur le port USB, vous devez le voir via la commande lsusb :

$ lsusb
Bus 001 Device 025: ID 0403:f850 Future Technology Devices International, Ltd

Il faut ensuite charger le module ftdi_sio, le mettre dans le fichier /etc/modules, lors du chargement du module vous devez avoir les informations suivantes dans le fichier /var/log/messages :

[ 23.114110] ftdi_sio 4-1.1.1.1.1:1.0: FTDI USB Serial Device converter detected
[ 23.114110] ftdi_sio: Detected FT232RL
[ 23.114110] usb 4-1.1.1.1.1: FTDI USB Serial Device converter now attached to ttyUSB2

Installation du logiciel

Il suffit d’installer lirc via apt :

# apt-get install lirc

Le module ne nécessite pas de drivers spécifiques dans le noyau.
Il suffit de lancer lircd :

lircd -n -H usb_uirt_raw -d /dev/ttyUSB2
lircd-0.8.3[10254]: config file contains no valid remote control definition
lircd-0.8.3[10254]: lircd(userspace) ready

Puis irw dans une autre console pour lire les signaux IR :

lircd-0.8.3[10254]: uirt2_raw: checksum error
lircd-0.8.3[10254]: uirt2_raw: UIRT version 0905 ok

Et la, c’est le drame :)
Mais pas de panique, le message d’erreur checksum error, n’est pas important!
Il y a bien un bug dans le noyau depuis la version 2.6.20 : USB UIRT: uirt2_raw: checksum error.
Mais cela fonctionne avec le 2.6.26 disponible dans lenny, par contre si vous avez le message d’erreur suivant : uirt2_raw: could not set DTR, alors il faut upgrade votre version du noyau ou modifier le code source du module.

Configuration des télécommandes

De très nombreuses configurations de télécommandes sont disponibles sur le serveur du projet LIRC : ici.

Il suffit de télécharger le fichier de configuration de votre télécommande et de le mettre dans le fichier lircd.conf :

# cd /etc/lirc/
# wget http://lirc.sourceforge.net/remotes/logitech/Z-5500D
# cat Z-5500D >> lircd.conf

Nous allons ensuite configurer le fichier /etc/lirc/hardware.conf du deamon lirc pour le lancer:

# /etc/lirc/hardware.conf
#
# Arguments which will be used when launching lircd
LIRCD_ARGS=""

#Don't start lircmd even if there seems to be a good config file
#START_LIRCMD=false

#Don't start irexec, even if a good config file seems to exist.
#START_IREXEC=false

#Try to load appropriate kernel modules
LOAD_MODULES=false

# Run "lircd --driver=help" for a list of supported drivers.
DRIVER="usb_uirt_raw"
# If DEVICE is set to /dev/lirc and udev is in use /dev/lirc0 will be
# automatically used instead
DEVICE="/dev/ttyUSB2"
MODULES=""

# Default configuration files for your hardware if any
LIRCD_CONF=""
LIRCMD_CONF=""

Nous pouvons alors lancer lircd :

# /etc/init.d/lirc start
Starting lirc daemon: lircd.

Recevoir les ordres infrarouges

Pour recevoir les ordres, il faut utiliser la commande irw :

$ irw
0000000010ef58a7 00 vol+ logitech_z5500
0000000010ef58a7 01 vol+ logitech_z5500
0000000010ef708f 00 vol- logitech_z5500
0000000010ef708f 00 vol- logitech_z5500
0000000010ef58a7 00 vol+ logitech_z5500
0000000010ef58a7 01 vol+ logitech_z5500
0000000010efd02f 00 optical logitech_z5500
0000000010efd02f 01 optical logitech_z5500

Envoyer des ordres infrarouges

Pour envoyer des ordres, il faut utiliser la commande irsend :

$ irsend SEND_ONCE logitech_z5500 power

Conclusion

Pour toutes les autres fonctionnalités et la configuration de vos applications (mplayer, freevo, etc…) , je vous conseille de lire la documentation du projet LIRC.
Il existe d’autres modules que l’USB-UIRT, comme par exemple USB IR Transceiver de IguanaWorks.

Filed under: Debian,Home automation — Tags:, , — cscm @ 18:00

Comments are closed.

Powered by WordPress