You are not logged in.

#1 2008-10-07 15:25:55

Themaister
Member
From: Trondheim, Norway
Registered: 2008-07-21
Posts: 652
Website

Making Echo Mia (Midi) sound cards work under Arch [FIXED]

This guide will install and setup the Echo Mia (Midi) under Arch using ALSA.

Make sure ALSA is installed properly. If not,

# pacman -S alsa-utils

will do the trick.

We will then need to install Echo Mia ALSA drivers, firmware and the Echomixer.

First, check what versions of alsa-lib and alsa-utils are installed by running:

$ pacman -Q alsa-utils

Then download the sources for ALSA:

wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.x.tar.bz2
wget ftp://ftp.alsa-project.org/pub/firmware/alsa-firmware-1.0.x.tar.bz2
wget ftp://ftp.alsa-project.org/pub/tools/alsa-tools-1.0.x.tar.bz2
tar xjvf alsa-driver-1.0.x.tar.bz2
tar xjvf alsa-firmware-1.0.x
tar xjvf alsa-tools-1.0.x

where x is replaced as needed with the correct version.

Then we compile the driver with support for mia.

cd alsa-driver-1.0.x
./configure --with-cards=mia
make
sudo make install

Then we install the firmware for the card.

cd ../alsa-firmware-1.0.x
./configure
make
sudo make install

Then we install the echomixer.


cd ../alsa-tools-1.0.x/echomixer/
./configure
make
sudo make install

Now we need to add the snd-mia module to the modules line in /etc/rc.conf. If there are other sound modules active, that conflict with the snd-mia module, disable them. In my case, I had to disable my snd-hda-intel, prefixing it with a '!'.

Now, we have to edit some configuration files.

This should be the only content of ~/.asoundrc:

pcm.mia {
          type hw
          card 0
       }
       
       ctl.mia {
          type hw
          card 0
       }

Then, add this to /etc/modprobe.conf:

 # ALSA portion
       alias char-major-116 snd
       alias snd-card-0 snd-mia
       # module options should go here
       
       # OSS/Free portion
       alias char-major-14 soundcore
       alias sound-slot-0 snd-card-0
       
       # card #1
       alias sound-service-0-0 snd-mixer-oss
       alias sound-service-0-1 snd-seq-oss
       alias sound-service-0-3 snd-pcm-oss
       alias sound-service-0-8 snd-seq-oss
       alias sound-service-0-12 snd-pcm-oss

Now would be the time to reboot.

After rebooting, make sure that the snd-mia module was loaded.

Run echomixer and activate the VU meter. If the sound module was loaded properly, the VU meters should be active and floating in the -80 to -100 dB region (background noise). If this is the case, we should have a functional mia soundcard.  Most audio programs will still not work despite the module being active, however, we can test the sound output with the aplay command. Next step would be to raise the mixer values to good levels using the echomixer. This could also be done via the alsamixer in terminal.

After the sound output is confirmed, achieving normal sound output using standard ALSA can get rather messy, and sound mixing is not working out of the box. The sound driver often crashed also while trying to play more sounds at the same time.

The solution to this problem is using PulseAudio, which allows mixing, and enables applications to use Mia without further tinkering.
Installation is straight forward, following the guide as shown on the PulseAudio wiki page. After installation of PulseAudio, the ~/.asoundrc should look like this:

pcm.mia {
          type hw
          card 0
       }
       ctl.mia {
          type hw
          card 0
       }
pcm.pulse {
    type pulse
}
ctl.pulse {
    type pulse
}
pcm.!default {
    type pulse
}
ctl.!default {
    type pulse
}

As for the /etc/pulse/default.pa, it shouldn't be needed to be changed. If problems arise when loading PulseAudio, make sure that pulseaudio is loaded after hal, as it is needed for detection by PulseAudio.
Now, go back to /etc/rc.conf, and the DAEMON line should look something like this:

DAEMONS=(@syslog-ng @network @netfs @crond fam hal alsa pulseaudio mpd @slim)

The important part are that hal, alsa and pulseaudio are loaded sequential after eachother. After a reboot, it should work.

Last edited by Themaister (2008-10-07 15:31:33)

Offline

Board footer

Powered by FluxBB