The Cirrus Logic Audio Card with Pi2 crossover

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
It is pretty fun!

I have this strange beast. As a 2-way I'm using ladspa (your stuff). As a three way I rely on the wm5102 low pass filters and high pass filters (and the box roll off) to split the woofer-midrange since the pi is limited to 2 channels.

The latter is slightly problematic because the wm5102 only has 4 lphp filters total and they're first order but I've been able to completely and easily flatten the FR of a 3 way.
 
Today I thought I'd compare my Umik USB microphone with the builtin mic on the CLAC card to see if it could be at least a sometime substitute.

I've included a very very rough comparison of mic'ing a two-way where I tried to place the CLAC mic at the same spot as the usb mic. It's good up to the higher registers where the CLAC starts dropping pretty rapidly. Not bad.
 

Attachments

  • MicCompare.jpg
    MicCompare.jpg
    85.8 KB · Views: 191
It is pretty fun!

I have this strange beast. As a 2-way I'm using ladspa (your stuff). As a three way I rely on the wm5102 low pass filters and high pass filters (and the box roll off) to split the woofer-midrange since the pi is limited to 2 channels.

It's not the Pi that is limited to 2 channels, but your rendering device. I am using a Pi with two USB DACs to yield four output channels. I could add more of these inexpensive DACs if I wanted to (I think) until the USB bus reaches capacity.
 
It's been a while since I looked at it but the card uses I2S for audio and the PI2 has a 2 channel limit on its I2S support, so it's not really the rendering system (the card has 6 independent channels of output) but the CPU. The BBB could use the same card and generate 6 LADSPA channels of output no problem.

I know I could use a cheaper USB device and get 4 real channels of processed output but I like the power and quality of the CLAC. If they'd publish how to do a 2nd or 4th order filter in the DSP it would be virtually perfect as a standalone crossover (my original intent), but it still works fine for me - and most of my speakers are 2-ways or subwoofers, for which the clac is straightforward. I think I also prefer the 'direct' I2s route vs usb.
 
Last edited:
It's been a while since I looked at it but the card uses I2S for audio and the PI2 has a 2 channel limit on its I2S support, so it's not really the rendering system (the card has 6 independent channels of output) but the CPU. The BBB could use the same card and generate 6 LADSPA channels of output no problem.

I know I could use a cheaper USB device and get 4 real channels of processed output but I like the power and quality of the CLAC. If they'd publish how to do a 2nd or 4th order filter in the DSP it would be virtually perfect as a standalone crossover (my original intent), but it still works fine for me - and most of my speakers are 2-ways or subwoofers, for which the clac is straightforward. I think I also prefer the 'direct' I2s route vs usb.

I2S can certainly support more than 2 channels of audio, although not above 24bit/48kHz IIRC. I'm thinking of AC3 type encoding here. Not really sure what you mean by "its not really the rendering system... but the CPU". The CPU has nothing to do with it, really. It's just pushing bits around like it is told to do.

If you had a SPDIF output card (e.g. HiFiBerry DIGI+) I believe you can (see this post) send 5.1 audio out via SPDIF using, for instance, ecasound and ALSA to create the datastream. The problem then becomes one of decoding the multichannel format and generating a good quality analog output with some external device.

A quick Google seach (terms="5.1 decoder DAC") shows that there are standalone devices starting at around $40 that decode AC3 on SPDIF into 6-channel analog audio. If the device's USB bus is up to it, you can also find USB based solutions that avoid going through SPDIF as a middle step. In all cases you need to pay close attention to specs, if any are provided.

Example:
5 1 Ac3 DTS HD Sound Decoder Stereo Digital Audio Converter for HD Player PS3 BL | eBay
Claimed specs:
Signal to Noise: 120db
Degree of Separation: 85db
Frequency Response: (20Hz ~ 20 KHz) +/- 0.5db
Max Output Volt: 2.2V
 
Last edited:
While I2S can support multichannel audio (at lots of rates) the Broadcom chip can't - it's limited to two I2S channels in firmware. I went through the Linux driver code and checked the Broadcom specs (what there is of them).

Again, most of my speakers are 1 or two channel and the board is a perfect fit there. It also rocks for testing impedances and nearfield audio. It's compact and incredibly high quality - low distortion, very low output impedance, high current drive... Not sure why i'd want to switch.

Besides, honestly I like sending my money to an American board company. I'm already buying power amps via Aliexpress.
 
Last edited:
Member
Joined 2007
Paid Member
I thought folks might like to see this in action. My test setup is two 4-ways (around my tv) driven by a little Intel NUC. The NUC generates analog output that goes into the Cirrus Card line-in, gets processed by the Rpi2, and spit back out to the Cirrus Card where it becomes 4 channels of audio (sent via line-out and headphone-out) - to 4 mono amplifiers. Oh, and there's a breadboard with a relay and a always-on 5v supply while I wait for my boards to get sent.

The wired input to the speaker is power (at the bottom via a switched IEC) and whatever analog input I want (you can see the cord coming from the NUC). And, yes I know all of the electronics is on plastic wrap... i'm getting there.

See below:
 

Attachments

  • SpeakerA.jpg
    SpeakerA.jpg
    126.9 KB · Views: 128
  • SpeakerATop.jpg
    SpeakerATop.jpg
    225.6 KB · Views: 128
  • SpeakerHm.jpg
    SpeakerHm.jpg
    39 KB · Views: 123
Last edited:
Yes, one pi2b+clac per speaker. I've just got a 3.5 y on the front of the NUC and the a male-male 3.5 mini to the line-in. You can see the cable coming in the back on the amplifier photo. And I'm very proud of my wiring :)

By the way, it's hard to tell this but the rpi is raised about 1/2 inch by an extra plastic :) which reduces the tweeter amp noise caused by rf pickup to nil from annoying.
 
Last edited:
Hi Speaky. Im very impressed so greatefully choked about your work with rpi+CLAC.





I'm on the same path as you but still under study because as you have already demonstrated also believe very feasible to perform with those two simple and inexpensive elements create a truly effective system of crossover of high quality (sound) and a felixibilidad and versatility far outweigh the dsp systems that are currently used in the world of DIY as miniDSP and the like.
You agradecira lot to siguieses posting here all your avanzces, evidence and comments that you think really relevant because me and surely many others will be of great help and utiidad all that excellent documentation.
Unfortunately I now only dispose of the RPI b (the previous version of the current that has a single core processor Broadcom) with the CLAC and do not think the RPI b that has minimal processing power needed to run successfully overcome the LADSPA filters crosover of vias without errors affecting the sound from what I've already placed an order for a new RPI 2 and looking forward to start testing.

One thing I would love to know are the details of the LADSPA filters you use, its concrete implementation in the RPI, the number of taps, as you generated, which Convolver use (Brutefir?), Such as connect and enrutas ALSA, if you use additional software to route audio "leaked" in ALSA as jack, ecasound, etc ...

On the other hand, I think it would be very interesting and not difficult to solcionar my power complement to the above, a high-quality system DRC also running a simple RPI. From what little I know about it simply would be necessary to run a Convolver as Brutefir charging it with the pattern of DRC must once have been made respesta measurements of the room (eg with REW) and in any case its resolution litando a num Taps "minimum" but enough to get a good respesta system but ensuring that the power of the PRI is able to solve without too much trouble.
On the other hand, I think it would be very interesting and not difficult to solcionar my power complement to the above, a high-quality system DRC also running a simple RPI. From what little I know about it simply would be necessary to run a Convolver as Brutefir charging it with the pattern of DRC must once have been made respesta measurements of the room (eg with REW) and in any case its resolution litando a num Taps "minimum" but enough to get a good respesta system but ensuring that the power of the PRI is able to solve without too much trouble.

On the other hand I am studying posibilides softw WICE Wolfson (now Cirrus) to migth program DSP included in the CLAC but in that sense (from little I've seen in the preliminary) do not feel as optimistic as take advantage of the full power of DSP because seems imperative that the manufacturer support us by publishing the bowels of the firmware for that DSP, which currently seems totally unrealistic.

Well Speaky i just keep waiting your comments about everything exposed.

Thank you and excuse my English level totally deplorable :-(
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.