Dernière mise à jour : 09/08/2005
Cet article va vous montrer comment paramétrer une télécommande Creative RM-1500 sous Linux grâce à un ensemble de pilotes et logiciels libres. J'ai utilisé Gentoo comme distribution Linux mais les commandes et fichiers de configuration ne devraient pas être trop difficiles à utiliser sur une autre distribution. Le kit télécommande Creative venait avec ma carte son Audigy 2 ZS et une baie 5"1/4 contenant toute la connectique nécessaire et le récepteur infrarouge.
Pour la partie sonore, j'ai utilisé les derniers pilotes ALSA (1.0.9b au moment de l'article). Le pilote à sélectionner est emu10k1. En effet, sous ALSA, emu10k1 supporte aussi le chipset emu10k2 qui est au coeur de l'audigy 2 ZS. Sous Gentoo, il vous suffit de compiler votre noyau avec un seul module son, celui de base :
Device Drivers ---> Sound ---> <*> Sound card support
Vous pouvez ensuite compiler alsa-driver en utilisant les paramètres suivants dans /etc/make.conf : ALSA_CARDS="emu10k1". Installez également : alsa-utils alsa-oss. Vous pouvez ensuite lancer alsaconf pour configurer votre carte automatiquement. Voici mes paramètres de noyau dans /etc/modules.d/alsa : options snd_emu10k1 enable_ir=1. Vous pouvez ensuite démarrer alsamixer et vous devriez avoir beaucoup de mixers, un peu comme ci-dessous (démarrez bien le service ALSA auparavant).
Vous devez à présent installer LIRC (Linux Infrared Remote Control). Vous pouvez donc le télécharger sur le site officiel. Dans Gentoo (mais pas seulement), il vous faudra spécifier ceci dans /etc/make.conf : LIRC_OPTS="--with-driver=livedrive_midi". Une fois le paquet compilé, enregistrez ce qui suit dans le fichier /etc/lircd.conf:
begin remote name rm1500 flags SPACE_ENC|CONST_LENGTH bits 32 eps 30 aeps 100 header 9000 4500 one 563 1687 zero 563 562 gap 108000 toggle_bit 0 repeat 9000 2250 frequency 38000 duty_cycle 33 begin codes 1 0x83228B74 2 0x83228F70 3 0x8322906F 4 0x83228A75 5 0x8322847B 6 0x83227887 7 0x83228976 8 0x8322837C 9 0x83227788 0 0x8322807F stop 0x8322857A play 0x83227986 pause 0x83227986 slow 0x83227D82 step 0x83227E81 prev 0x83227F80 next 0x83227A85 mute 0x83226E91 vol- 0x8322639C vol+ 0x8322629D eax 0x83228C73 options 0x8322827D display 0x83227689 return 0x83228E71 start 0x83228877 close 0x83227C83 up 0x83227B84 down 0x83228D72 left 0x83228778 right 0x8322758A ok 0x8322817E power 0x8322619e cmss 0x8322718e record 0x8322738c end codes end remote begin remote name audigy_io_hub flags SPACE_ENC|CONST_LENGTH bits 32 eps 30 aeps 100 header 9000 4500 one 563 1687 zero 563 562 gap 108000 toggle_bit 0 repeat 9000 2250 frequency 38000 duty_cycle 33 begin codes mute 0x80000040 vol+ 0x80008080 vol- 0x80008082 cmss 0x80000080 end codes end remote
Pour tester si la télécommande marche correctement, il faut déclarer ceci dans le fichier de configuration de lircd. Donc pour Gentoo, éditez
-
ALSA alsa-kernel/pci/emu10k1/emufx.c:1385: Installing spdif_bug patch: Audigy 2 ZS [SB0350]
Vous devriez donc pouvoir à ce moment vérifier que la télécommande marche, lancez irw et appuyez sur les boutons de la télécommande. Si tout va bien, elle devrait retourner des signaux équivalents à ce que vous pouvez voir dans le fichier de configuration lircd.conf
Il vous faut à présent lier le fichier de configuration .lircrc (dans votre $HOME) à votre télécommande. J'utilise pour ma part le paquet xmms-lirc et utiliser le fichier de configuration suivant :
## Begin General Config ## begin remote = CREATIVE_INFRA_DVD prog = irexec button = next config = xscreensaver -no-splash & end begin remote = CREATIVE_INFRA_DVD prog = irexec button = last config = killall -9 xscreensaver end begin remote = CREATIVE_INFRA_DVD prog = irexec button = eject config = xmmsctrl launch & end begin remote = CREATIVE_INFRA_DVD prog = irexec button = 0 config = xmmsctrl quit end begin remote = CREATIVE_INFRA_DVD prog = irexec button = play config = xmmsctrl play end begin remote = CREATIVE_INFRA_DVD prog = irexec button = stop config = xmmsctrl stop end begin remote = CREATIVE_INFRA_DVD prog = irexec button = pause config = xmmsctrl pause end begin remote = CREATIVE_INFRA_DVD prog = irexec button = next config = xmmsctrl next repeat = 1 end begin remote = CREATIVE_INFRA_DVD prog = irexec button = last config = xmmsctrl prev repeat = 1 end begin remote = CREATIVE_INFRA_DVD prog = irexec button = rrev config = xmmsctrl time -10 repeat = 1 end begin remote = CREATIVE_INFRA_DVD prog = irexec button = ffwd config = xmmsctrl time +10 repeat = 1 end begin remote = CREATIVE_INFRA_DVD prog = irexec button = vol- config = xmmsctrl vol -5 repeat = 1 end begin remote = CREATIVE_INFRA_DVD prog = irexec button = vol+ config = xmmsctrl vol +5 repeat = 1 end
Voilà pour le moment, je mettrais bientôt à jour avec plus d'informations sur la façon de lier des touches de votre télécommande avec lirc. Si vous avez des suggestions, n'hésitez pas à envoyer un email.