Open baffle speakers with DSP crossover and equalisation

I’ve been reading Siegfriend Linkwitz’s site and making many lame attempts to copy and build bits of his designs without ever really finishing anything, pretty much running dry about four years ago. In the past I’ve got as far as building up the Analogue Signal Processor stuff carefully transcribed from Linkwitz’s published circuits, on PCBs I etched at work and so on. I stuffed them with most of the components but somehow having to get everything all up together in one go just to hear something (as a minimum you need ASP, amps, power supplies and drivers on baffles) was just too much for me and it just never happened. I’ve literally not put power through the PCBs I made. They live in a box and I imagine will do until I chuck them in the bin.

I recently began to resurrect my efforts following reading some of the (slightly crazy) writings of (the very crazy) Lukasz ‘Lampizator‘ Fikus. Whilst I’m not sure about some of his assertions and methods, I did like his rough and ready, quick and dirty approach. Get a plank of wood, lob some drivers in and play around. He answered some emails of mine on the subject of his famous P17 design and I did a bit of playing about with some cardboard, passive crossover components and old drivers. It was pleasing enough, but I didn’t feel convinced that it was even close to optimal and I couldn’t imagine P17 ever could be given the very basic crossover design and almost random selection of drivers. I don’t doubt that Lukasz has built some very good speakers using his empirical methods and pragmatic approach but I didn’t feel there was much I could adapt to my own tastes. That psychoacoustic effects of a design you don’t believe in is sufficient enough to make it unsuitable – at least unsuitable for me to put my time into building it – Linwitz discusses this on a page of his site that I can’t find anymore.

Linkwitz stands in almost total contrast, the classic engineer, and undoubtedly a true expert with very clear, and well documented design goals – many of which he appears to have realised.

Enter Richard Taylor; A (Canadian?) blogger of the Linkwitz mould, ie an expert and clearly a very clever man. He has a number of pages describing how he uses a low power PC running Linux to function as a Digital Signal Processor mimicking the stages of Linkwitz’s ASP. As a (Windows) sysadmin by trade, I felt much more comfortable looking at this stuff on a computer, and I was right to think so. In just a few evenings I have an amazingly good sounding three way open baffle speaker. There’s only one speaker at this stage so it’s getting a summed input from Spotify, courtesy of my mobile phone – yet it still sounds fantastic. Richard describes most of what you need to know to get going on a single blog post. He does assume some familiarity with Linux and computing in general, but he does a good job of outlining the approach he has taken, giving some options to suit various budgets. I was lucky enough to get a fanless Atom 330 (Tranquil) PC from the work recycling bin and added a Sound Blaster USB X-fi to give me the six outputs I needed to play with. I decided to install Debian (Wheezy) on the advice of a fellow (Linux) sysadmin. It works pretty well after getting rid of PulseAudio! The lack of a hardware mixer on the X-fi card has forced me to learn a little more about configuring ALSA than I wanted to, but it is all working now. I’ll publish me .asoundrc file when I’ve finished it.

So what’s actually running then? Well, I already had a pair of Peerless D27TG-35-06 tweeters and Vifa P21-WO-20-08 woofers. I also had two TangBand W69-1042M ‘sub’ woofers. So I’ve botched them onto a folded baffle of cardboard and done my best to copy as much of the Orion ASP that Linkwitz publishes on his site. I bought an ‘FWO Bauch Ltd’ six channel amp for virtually nothing from ebay and away I went/go. For those interested in FWO Bauch Ltd. I found this really interesting article detailing the life of Friedrich Wilhelm Otto Bauch.

I’m currently using this command line:

ecasound -z:mixmode,sum -x \
-a:pre -i:alsa,linein -pf:pre.ecp -o:loop,1 \
-a:pre2,woofer1 -i:loop,1 \
-a:mid,tweeter -i:loop,2 \
-a:pre2 -pf:pre2.ecp -o loop,2 \
-a:woofer1 -pf:woofer1.ecp -chorder:1,2,0,0,0,0 \
-a:mid -pf:mid.ecp -chorder:0,0,1,2,0,0 \
-a:tweeter -pf:tweeter.ecp -chorder:0,0,0,0,1,2 \
-a:woofer1,mid,tweeter -f:16,6,44100 \

and the following filter files for each output:

pre = -el:-el:RTparaeq,-3,82,2.6 -el:RTparaeq,-4,2760,2.7

woofer1 = -el:RTlr4lowpass,120 -el:RTparaeq,-8,200,3 -el:RTlowshelf,15,175,0.7 -e:RThighpass,2,0.7 -el:delay_0.01s,0.00015,1

pre2 = -el:RTlr4hipass,120

mid = -el:RTlr4lowpass,1440 -el:RTparaeq,-8,400,3 -el:RTlowshelf,15,175,0.7

tweeter = -el:RTlr4hipass,1440 -eadb:-3.6 0.000349 -el:delay_0.01s,0.00035,1

Now, unlike Siegfried and Richard, I’m no engineer. You might look at this configuration and think, what a fool! Well, let me know why I am a fool (related to this topic ideally) and I might actually learn something. Considering these drivers are mounted on a piece of cardboard everything sounds very nice. Of course there are many things about this setup that I should deal with first, rather than applying a notch filter at 2760Hz, but the thing is with DSP, it’s so easy to test stuff, why wouldn’t you?

Aside from more filter fiddling, the next thing of course is to build some half decent baffles – two of them at that. I’ll probably replace the TangBand woofers with something rather more suitable. I’ve just ordered a dirt cheap 12″ driver from OneCall so I’ll see how that works out before diving in and buying a pair of Peerless XLS 12 or similar.

insidebaffle  amp

You’ll probably notice the rather odd tweeter / woofer / mid arrangement. That’s simply a hangover from the original mounting of the mid at the bottom when it was playing as the woofer. The baffle is only cardboard so I thought I’d just leave as is for now 🙂



Filed under Geeky stuff

4 responses to “Open baffle speakers with DSP crossover and equalisation

  1. I’m glad to hear my ramblings have been useful! The only thing I see amiss in your config is the lowpass at 140kHz — maybe just a typo, but otherwise it’s redundant (in digital there’s no signal below the Nyquist frequency) and possibly ill-behaved, since 140k is above the sampling frequency. Have fun!

    • Indeed, it was an early remnant of me replicating some rf filtering from the ASP design but as you say, is totally redundant. (I think I’ll ditch it from this page as it will cause others confusion too.)

      Your work has been incredibly helpful. The main problem I have had is getting sox to play ball (it’s too cpu intensive for my atom device and I keep getting ALSA under-runs) and the fact that the x-fi device doesn’t appear capable of native 44.1KHz sampling – it claims to be doing it but definitely isn’t! I’ll have to make do with it at 48KHz. The other annoyance is fiddling with the .asoundrc file to get a useable soft volume control – not easy it would seem. It still works pretty well. Time to do some ‘carpentry’ and start playing in stereo. It’s a very exciting project though and I will post more. Once again, I’m very grateful for your documentation.

  2. Yura Lovaovanuses

    Pleases excuses mi engleesh. I an from Slovakia.
    I an veri imprissed wif all yur noledge on speekers and stuf and I wos astounded with yur explinacions. I red it all but at the bottum I cud only find sum piktures of sum shitty luking cardbord boxes?
    Yu ar obviusly a gayest of lords. the gayest of the gayest of lords. Yu gaylord.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s