Configuration Debian etch & Creative Audigy 2 ZS Platinium Pro

Voici la configuration que j'ai faite pour ma carte son Creative Audigy 2 ZS Platinium Pro.

Pré requis

Voici les différentes versions des logiciels utilisés

  • Debian : etch
  • Noyau 2.6.12-1-k7
  • ALSA : 1.0.9b-4
  • LIRC : 0.7.1pre2-2

ALSA

Pour installer ALSA sur une debian un coup de google peut aider sinon vous pouvez aller ici La configuration d'ALSA est chargée au démarrage, pas besoin d'ajouter des lignes dans le fichier /etc/modules

LIRC

Avec apt-get :

apt-get install lirc lirc-x

Sélectionner la configuration livedrive_midi lors de l'installation. Pas besoin de compiler des modules supplémentaires, tout est dans le module emu10k1 :-)

Configuration

ALSA

On va permettre au système d'activer l'infra rouge et de démarrer le boitier externe en envoyant un signal sur le périphérique midi /dev/snd/midiC0D1

Créer le fichier /etc/modprobe.d/alsa-custom

Ajouter les lignes suivantes

options snd-emu10k1 index=0 extin=0x3fcf extout=0x1fcf enable_ir=1

Créer un fichier /etc/alsa/modprobe-post-install.d/emu10k1-synth

#!/bin/sh
/usr/bin/asfxload /usr/local/lib/sound/midi/*.SF2;
echo -e '\\360\\000\\040\\041\\141\\000\\000\\000\\177\\000\\367' > /dev/snd/midiC0D1

Créer un lien symbolique afin d'éxecuter ces scripts au démarrage

$sudo ln -s /etc/alsa/modprobe-post-install.d/emu10k1-synth /etc/init.d/emu10k1-synth

Créer le lien dans le RC2.d

$sudo update-rc.d emu10k1-synth start 18 2 .
 Adding system startup for /etc/init.d/emu10k1-synth ...
   /etc/rc2.d/S18emu10k1-synth -> ../init.d/emu10k1-synth

Attention à la configuration du démarrage, ce script doit être executé avant le démarrage de lircd

LIRC

Dans le fichier /etc/lirc/hardware.conf, initialiser les options de démarrage du démon lircd

LIRCD_ARGS="-d /dev/snd/midiC0D1 -H livedrive_midi"

Dans le fichier /etc/lirc/lirc.conf ajouter la configuration suivante:

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
Tester

Redémarrer le pc et tester avec irw , logiquement dans la console, vous devriez retrouver les commandes faites avec la télécommande et les commandes du boitier.

Exemple:

$irw
0000000080008080 00 vol+ LiveDrive
0000000080008080 01 vol+ LiveDrive
0000000080008080 02 vol+ LiveDrive
0000000080008082 00 vol- LiveDrive
0000000080008082 01 vol- LiveDrive
0000000080008082 02 vol- LiveDrive
0000000080008080 00 vol+ LiveDrive
0000000080000080 00 cmss LiveDrive
0000000080000080 00 cmss LiveDrive
Personalisation

Pour personaliser les commandes à effectuer, vous devez créer le fichier $HOME/.lircrc

Exemple d'utilisation avec totem et beep-media-player

begin
  prog = irexec
  button = display
  config = /usr/bin/totem &
end
begin
  prog = irexec
  button = play
  config = totem --play-pause
end
begin
  prog = totem
  button = eax
  config = fullscreen
end
begin
  prog = totem
  button = next
  config = next
end
begin
  prog = totem
  button = prev
  config = previous
end
begin
  prog = totem
  button = close
  config = quit
end
begin
  prog = irexec
  button = start
  config = /usr/bin/beep-media-player -a&
end
begin
  prog = irexec
  button = ok
  config = /usr/bin/beep-media-player -t&
end
begin
  prog = irexec
  button = down
  config = /usr/bin/beep-media-player -f&
end
begin
  prog = irexec
  button = up
  config = /usr/bin/beep-media-player -r&
end
begin
  prog = irexec
  button = vol+
  config = /usr/bin/amixer -q set Master,0 5+,5+
end 
begin
  prog = irexec
  button = vol-
  config = /usr/bin/amixer -q set Master,0 5-,5- 
end
Configuration de la session utilisateur

Afin que les signaux soient envoyés à lirc, il faut executer en démon le programme irexec. Il faut ajouter dans les paramètres de la session au démarrage la commande:

 irexec -d
Vus : 90
Publié par Littlewing : 368