Instal­ler une télé­com­mande ATI Remote Wonder sous Debian

ATIRWQui n’a jamais rêvé de pilo­ter son ordi­na­teur depuis son lit/canapé/fauteuil ? Toi là, dans le fond ? Menteur !

On m’a récem­ment prêté une ATI Remote Wonder et grâce à elle, je peux main­te­nant télé­com­man­der mon ordi ! Ça n’a l’air de rien mais c’est quand même bien pratique pour éteindre l’ordi le soir sans avoir à se rele­ver ou se mater un film et chan­ger les sous-titres/pistes audio sans se bouger du fauteuil !

Alors allons-y pour la confi­gu­ra­tion de la bestiole avec lirc ! Tout d’abord il faut instal­ler lirc :

# apt-get install lirc

Ensuite on construit les modules lirc avec module-assis­tant :

# m-a a-i lirc-modules

Ensuite on édite le fichier /etc/modprobe.d/black­list.conf et on rajoute la ligne quelque part.

black­list ati_remote

Véri­fiez bien que ce module n’est pas chargé par un petit

# lsmod | grep ati_remote

Char­gez le module lirc_atiusb

# modprobe lirc_atiusb

Vient la partie longue et fasti­dieuse de la créa­tion du fichier de confi­gu­ra­tion de la télé­com­mande (atten­tion, ça ne marchera pas si lirc est déjà lancé) :

$ irre­cord -d /dev/lirc0 atire­mote.conf
Press RETURN to conti­nue.Hold down an arbi­trary button. Appuyer de facon conti­nue sur un bouton
……………………………………………………………………..
Found gap length: 147959
Now enter the names for the buttons.

Please enter the name for the next button (press <enter> to finish recor­ding)
menu Défi­ni­tion de la touche menu

Now hold down button “menu” Appuyer sur le bouton adéquat
Please enter the name for the next button (press <enter> to finish recor­ding)

Et ainsi de suite
Quand c’est fini, appuyer sur ENTRÉE

Checking for toggle bit mask.
Please press an arbi­trary button repea­tedly as fast as possible.
Make sure you keep pres­sing the SAME button and that you DON’T HOLD
the button down!.
If you can’t see any dots appear, then wait a bit between button presses.
…………………………….
Inva­lid toggle bit.
Success­fully writ­ten config file.

Copiez ce fichier dans /etc/lirc :

# cp atire­mote.conf /etc/lirc/lircd.conf

Si vous avez un problème avec ce fichier, vous pouvez éven­tuel­le­ment essayer avec le mien :
Vous pouvez éditez le fichier /etc/lirc/hard­ware.conf mais je ne crois pas que ce soit obli­ga­toire :

# /etc/lirc/hard­ware.conf
#
# Argu­ments which will be used when laun­ching 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 appro­priate kernel modules
LOAD_MODULES=true
# Run « lircd –dri­ver=help » for a list of suppor­ted drivers.
DRIVER= » »
# If DEVICE is set to /dev/lirc and udev is in use /dev/lirc0 will be
# auto­ma­ti­cally used instead
DEVICE= »/dev/lirc0 »
MODULES= »lirc_atiusb »
# Default confi­gu­ra­tion files for your hard­ware if any
LIRCD_CONF= »/etc/lirc/lircd.conf »
LIRCMD_CONF= » »

Ensuite il faut créer un fichier .lircrc pour défi­nir les actions pour les boutons :

begin
flags = star­tup_mode
mode = desk­top
end

begin
button = a
prog = irexec
repeat = 3
config = osd_cat -p middle -A center -f -*-*-bold-r-normal-*-60-*-*-*-*-*-*-* -d 1 ~/.lirc_desk­top_text &
mode = desk­top
flags = quit
end

begin
button = b
prog = irexec
repeat = 3
config = osd_cat -p middle -A center -f -*-*-bold-r-normal-*-60-*-*-*-*-*-*-* -d 1 ~/.lirc_mplayer_text &
mode = mplayer
flags = quit
end

begin
button = power
prog = irexec
repeat = 3
config = shut­down -h now
end

## Volume Control
begin
prog = irexec
button = volup
repeat = 3
config = aumix -v+10 &
end

begin
prog = irexec
button = voldown
repeat = 3
config = aumix -v-10 &
end

begin
button = mute
prog = irexec
config = amixer -c 0 set PCM toggle &
end

include ~/.lircrc.desk­top
include ~/.lircrc.mplayer

Je pense que la syntaxe de ce fichier parle d’elle-même.

Notez le include ~/.lircrc.desk­top qui permet d’al­lé­ger le .lircrc en mettant une partie de la confi­gu­ra­tion dans un autre fichier. Ainsi, tous les boutons utiles pour mplayer se retrouvent dans ~/.lircrc.mplayer.

Si le osd-cat perturbe certaines personnes, sachez qu’il agit comme cat mais qu’il envoie sa sortie direc­te­ment sur l’écran, comme l’osd de mplayer. Osd-cat est fourni par le paquet xosd-bin. Quand on veut chan­ger de mode, je pense qu’il est bien d’en avoir la confir­ma­tion et c’est pourquoi j’ai utilisé osd-cat.

Qu’est-ce que le « mode = desk­top » dans ce fichier .lircrc ?

En fait cela permet d’as­si­gner des actions diffé­rentes à un bouton selon le mode dans lequel on se trouve (vous pouvez allez voir mes fichiers .lircrc.mplayer et .lircrc.desk­top pour des exemples).
Pour défi­nir un mode, rien de plus simple :

begin mode
begin
button = bouton
prog = irexec
config = action
end
end mode

Le programme irexec est un lanceur fourni avec lirc et doit être lancé au début de votre session.

Person­nel­le­ment, après quelques problèmes j’ai réussi à faire fonc­tion­ner tout ça en éditant le fichier /etc/X11/xinit/xini­trc et en rajou­tant ceci à la fin :

/usr/bin/irexec

Voilà, un bon petit reboot et tout devrait fonc­tion­ner comme sur des roulettes !

Me soutenir sur Tipeee Me soutenir sur Liberapay

2 réflexions au sujet de « Instal­ler une télé­com­mande ATI Remote Wonder sous Debian »

  1. bonjour,

    excellent tuto en tout cas qui correspond le mieux à mon cas!

    Cependant j’ai un souci car si la télécommande marche très bien sous root avec irw 2 choses ne fonctionnent pas et je n’arrive pas à trouver d’où cela peut bien provenir sachant que je travaille avec une lenny et un noyau 2.6.30 (pour l’ext4): donc j’ai téléchargé le lirc-0.8.6 que j’ai compilé (qui créé un lircd.conf qui convient) puis j’ai configuré mon hardware.conf, je lance lircd et irw répond parfaitement!

    1) Mais là où ça se corse c’est que je ne peux créer (je tue lircd avant) de fichier de configuration spécial, la punition est toujours la même :

    Please enter the name for the next button (press <ENTER> to finish recording)

    a

    ‘a’ is not in name space (use –disable-namespace to disable checks)

    Use ‘irrecord –list-namespace’ to see a full list of valid button names

    Please try again.

    et l’utilisation de –disable-namespace n’y change rien…

    Mais bon ça à la limite je peux largement m’en passer et utiliser les touches fournies pas le lircd.conf installé par défaut.

    2) Enfin et surtout irexec ne se lance pas j’ai invariablement sous root ou l’utilisateur courant bien que lircd soit bien lancé :

    irexec

    irexec: could not connect to socket

    irexec: No such file or directory

    Voilà voilà donc je ne vous demande pas de résoudre le problème mais si vous aviez une idée de la direction dans laquelle chercher car je me trouve bien démuni!?

    merci d’avance!

    Jean-Pierre.

  2. Salut,
    Merci pour le tuto, quelques remarques après une installation sur une debian squeeze avec une télécommande ati remote wonder modèle 1 et un récepteur USB.

    Pour installer lirc:
    # apt-get install linux-headers-$(uname -r) lirc lirc-x lirc-modules-source

    Dans le fichier blacklist, j’ajoute:
    # nano /etc/modprobe.d/blacklist

    blacklist ati_remote2
    blacklist ati_remote
    blacklist lirc_atiusb

    Changement de propriétaire:
    # chgrp -R users /dev/lirc*

    Changement des droits:
    # chmod 666 /dev/lirc0

    Et le fichiers hardware.conf
    # nano /etc/lirc/hardware.conf

    # /etc/lirc/hardware.conf
    #
    #Chosen Remote Control
    REMOTE= »ATI/NVidia/X10 RF Remote (userspace) »
    REMOTE_MODULES= » »
    REMOTE_DRIVER= »atilibusb »
    REMOTE_DEVICE= » »
    REMOTE_LIRCD_CONF= »atiusb/lircd.conf.atilibusb »
    REMOTE_LIRCD_ARGS= » »

    #Chosen IR Transmitter
    TRANSMITTER= »None »
    TRANSMITTER_MODULES= » »
    TRANSMITTER_DRIVER= » »
    TRANSMITTER_DEVICE= » »
    TRANSMITTER_LIRCD_CONF= » »
    TRANSMITTER_LIRCD_ARGS= » »

    #Enable lircd
    START_LIRCD= »true »

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

    #Try to load appropriate kernel modules
    LOAD_MODULES= »true »

    # Default configuration files for your hardware if any
    LIRCMD_CONF= » »

    #Forcing noninteractive reconfiguration
    #If lirc is to be reconfigured by an external application
    #that doesn’t have a debconf frontend available, the noninteractive
    #frontend can be invoked and set to parse REMOTE and TRANSMITTER
    #It will then populate all other variables without any user input
    #If you would like to configure lirc via standard methods, be sure
    #to leave this set to « false »
    FORCE_NONINTERACTIVE_RECONFIGURATION= »false »
    START_LIRCMD= » »

    Voilà, ça marche, après un reboot, je teste avec
    # irexec

    Et un extrait du fichier .lircrc crée dans le répertoire home:
    # nano .lircrc

    begin
    prog = irexec
    button = power
    repeat = 3
    config = shutdown -h now
    end

    Merci

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *