[linux-audio-user] es1370 and the el cheapo myth

Timo Sivula timo.sivula at luukku.com
Tue Oct 5 00:35:39 EDT 2004


Hello,

(sorry for the long post)

I have been trying to set up the es1370 to work with my linux DAW for
almost 1 year with limited success. Now there is some light at the end
of the tunnel, so I thought I'd share the results as this issue has been
discussed here lately and I also need some further advice.

I have three Ensoniq es1370 cards in my pc. The ultimate target is to
run four es1370 cards in parallel to enable an 8 channel i/o, the
mythical "el cheapo multichannel DAW". I want to do this just for the
sake of proving it is possible to do, and for the fun of it, never mind
the availability of cheap multichannel cards. I will synch the cards by
removing the crystals from three cards and connecting the clocks in
chain as slaves to the first card. I currently need one PCI slot for my
WLAN, therefore only 3 cards for now. 

However, I am not quite there yet, I only recently got the cards to work
without producing "tons of xruns" on random. I am running a 2G Celeron,
377 MB RAM, ECS P4VXASD2+ mobo and the Planet CCRMA 2.4.26-ll kernel on
Fedora Core 1. Here is what I did to make xruns go away:

1. Run all the optimisation hints at the planet CCRMA home page,
especially the PCI latency timer optimisation did miracles to my
soundcards.
2. Turn acpi off by adding acpi=off to the kernel command line in
grub.conf
4. Set the BIOS not to expect acpi from the OS
5. Set BIOS to plug and play on PCI
6. Disable _everything_ from the BIOS you do not need.
7. Set Jack to use 48kHz sampling (my cards show 47040 Hz)
8. Set Jack to 64 frames per period and 7 periods per buffer

Now all my cards have separate IRQs, and share IRQ only with the USB
interface which in my case is a wireless mouse only. This was a big mess
earlier, and I suspect the acpi and plug and play thing solved this
issue. I still do not know how to enable IRQ7 for USB, which would still
improve the situation. However, this is quite good as it is.

# cat /proc/interrupts
           CPU0
  0:     695888          XT-PIC  timer
  1:       1552          XT-PIC  keyboard
  2:          0          XT-PIC  cascade
  8:          1          XT-PIC  rtc
  9:       7894          XT-PIC  ehci_hcd, ndiswrapper
 10:     801578          XT-PIC  usb-uhci, Ensoniq AudioPCI
 11:         81          XT-PIC  usb-uhci, Ensoniq AudioPCI
 12:         81          XT-PIC  usb-uhci, Ensoniq AudioPCI
 14:      20701          XT-PIC  ide0
 15:      12135          XT-PIC  ide1
NMI:          0
ERR:          0

# cat /proc/asound/cards
0 [AudioPCI       ]: ENS1370 - Ensoniq AudioPCI
                     Ensoniq AudioPCI ENS1370 at 0xec00, irq 10
1 [AudioPCI_1     ]: ENS1370 - Ensoniq AudioPCI
                     Ensoniq AudioPCI ENS1370 at 0xe800, irq 11
2 [AudioPCI_2     ]: ENS1370 - Ensoniq AudioPCI
                     Ensoniq AudioPCI ENS1370 at 0xe400, irq 12

With the settings above I get a latency of 9.33 ms and xruns only when I
start new programs or shut them down. Earlier I had at least 2 xruns per
minute. Now it looks a lot better, I have had the system on for several
hours without a single xrun.

The next step is to find out how to access more than one card at once
from Jack for Audio. This I have not yet figured out, I only see one
stereo alsa_pcm for the audio in qjacktl. I see three MIDI inputs but
only one Audio. I can control each cards audio with alsamixer, so I know
they are configured and work.

Any clues how to go ahead here?

br, Timo




More information about the Linux-audio-user mailing list