Car Stereo Forum banner

DIY Custom Audio DSP (like miniDSP)

59137 Views 50 Replies 35 Participants Last post by  steelbreeze
New to this forum.

Built an audio signal processing device that I use in my car.

Not sure if the details are of interest here, but I think the end result might be -- a good deal of audio DSP capability for crossovers and EQ.

Some pics and then a brief description.

ADAU1442 audio signal processor chassis:

Four Wolfson WM8524 DACs (2 Vrms ground-centered output, -89 dB THD+N, 106 dB dynamic range)

The computing core: Analog Devices ADAU1442 audio signal processor (easy to use with their SigmaStudio graphical user interface software).

ADAU1442 board top

ADAU1442 board bottom

Testing ADAU1442 and WM8524 analog outputs (DACs are "upside down" under the ADAU1442, protected by the two ground planes in the boards)

Final prototype, box open

Final ADAU1442 prototype audio signal processor

  • Analog outputs: Four independent WM8524 24-bit stereo DACs (e.g. sub, midbass, midrange, tweets). 2 Vrms ground-centered output (no DC blocking caps).
  • Digital Outputs: Four independent optical S/PDIF outputs (CS8406 to TOTX147). (Future plans are to use these instead of analog).
  • Inputs:
    • Digital: Two S/PDIF optical -- one from H/U, one direct from CD changer (TORX147 to CS8416 S/PDIF receiver to CS8421 ASRC).
    • Analog: one "AUX" analog input (e.g. for handheld device) using CS5351.
    • Optional: a third S/PDIF input if needed in the future.
  • Power: "12 volt" from car with remote turn-on/off.
  • Control: Digital volume up/down and digital source select. (Possibly more in the future if needed).
  • ADAU1442 Computing Highlights:
    • 3584 instructions per sample at 48 kHz.
    • 56-bit processing.
    • 8k data RAM (up to 170 ms delay at 48 kHz).
    • IIR and FIR filters, EQ and more; easy implementation with GUI software (see below).
  • ADAU1442 Usability:
    • Self-boot from EEPROM (no microcontroller required).
    • Analog Devices SigmaStudio drag-n-drop graphical user interface is so nice to use.
    • Analog sampled a ADAU1401 evaluation board which allows for real-time EQ and A/B testing with a laptop.

After I spent some time reading about various ICs that are available, it only took about four partial weekends to build and debug the box. Then another couple hours here and there to fashion the GUI in Analog's SigmaStudio software that implements my current crossover scheme.

Many of the parts are free samples; others aren't very expensive.

I'm presently using the box for active crossovers. But now that I have some processing power I'm interested in learning about how to really EQ a car audio system.
See less See more
  • Like
Reactions: 1
1 - 20 of 51 Posts
. . .Oh, and can't forget Schmartboard, without which it might be almost impossible to use a lot of the small surface mount IC packages such as the TSSOP for the WM8524 DACs or TQFP for the ADAU1442 audio processor.
Dude, that's badass! Congrats!
Can we get screenshots?
Dude, that's badass! Congrats!
Can we get screenshots?
Well played sir! Well played!

I am VERY intrigued by this (not to build, but certainly to buy:)
Does it get warm? Looks kinda cramped in there?
Regardless, good for you! I think thats awesome!
Wow that is a pretty cool setup. Looking forward to hearing more about it.
Very interesting, way above my head component wise but definitely useful. Good work

Got any screen shots of the interface?

Building to sell or just personal use?
Nice work, interested in building an SMPS for me?
Very nice indeed! What was the total cost of the parts if you don't mind me asking.
We're in need of more processor options.
x2 I don't know a whole lot but, I can tell you that I've been reading all the posts about processors for the past few days and rarely are people satisfied. Well, except those that use 1 or more Mini DSPs. Nice looking work, 24th.
interesting.veeeeeeeeeeeeeeeerrrrrrrrrrrrry interesting
interesting.veeeeeeeeeeeeeeeerrrrrrrrrrrrry interesting
Very interested in learning more about this. I stayed away from this option due to a severe lack of knowledge on coding DSPs. It looks like you have created a very elegant solution to a problem experienced by many. There could very well be a market there...

Nice Job
Thank you for the responses.

I think this project is good for DIY car audio applications. There are however at least three drawbacks:
  1. Time to solder circuits;
  2. Learning to use ADI's SigmaStudio software;
  3. Cost.

It's worth the time & money IMO though. The only limitations are a person's imagination and the power of the IC -- there are almost none of the usual limitations with finished signal processors.

I am VERY intrigued by this (not to build, but certainly to buy)
Building to sell or just personal use?
Initially I did not intend to build this box for sale. Nonetheless I looked into it. But alas the answer is no, because without the flexibility afforded by software, the box doesn't seem very useful, and according to Analog Devices, their software is not licensed for use outside of design. (And I have no intention of learning how to write software to use the box; moreover I think a major strength of the box is the SigmaStudio software it uses -- I wouldn't want to change that!) A thread about ADI's software licensing is here. (And perhaps of interest, in the thread they mention programmable car audio amps that use their SigmaDSP products (like a miniDSP embedded in an amp); here's the link).

I can tell you that I've been reading all the posts about processors for the past few days and rarely are people satisfied. Well, except those that use 1 or more Mini DSPs
One of the main things miniDSP provides is software that allows us to use the ADAU1701. But IMO their software takes away from the full potential of the IC. Nothing against miniDSP, it's just a necessary trade-off. Actually, their prices seem very competitive, and they bring value in that their device does not require assembly. Furthermore they appear to offer easy-to-use software for operating the IC. A good product IMO.

Nonetheless I wanted to take a different approach. I was interested, like others might be, in a more powerful IC (e.g. the SigmaDSP ADAU1442 instead of the ADAU1701). I wanted something that could perform some basic FIR filtering and which could be used for longer delays (I ran out of delay with the ADAU1701). In addition I wanted to take full advantage of ADI's SigmaStudio software (in particular the "wide-open" possibilities it affords along with its quick & easy, yet nonetheless full, IC control). But in order to buy something that does not require DIY construction and which is comparable to the box described here, a person would have to purchase the evaluation board for the ADAU1442 for $699.00 (as of June 2011). But IMO that evaluation board isn't as good as the box described here, so the DIY approach seems a worthwhile option.

Can we get screenshots?
Got any screen shots of the interface
I'll provide a screenshot, but it doesn't do much justice. To see just the "tip of the iceberg" of what this stuff can do, check out these two ADI videos with the girl in the pink shirt here.

Below is a screen shot of my crossovers in ADI's SigmaStudio software (subwoofer section is off the screen). Crossover components are added by dragging and dropping various software functional blocks into the schematic. From there parameters for a wide range of selectable crossover types can be specified. (E.g. low-pass Butterworth or parametric EQ to name a few -- custom coefficient biquads are also avaialable).

In my case (above) I'm using four main components:
  1. Delays;
  2. Linkwitz compensators to modify speaker box characteristics;
  3. Low- and high-pass 2nd-order Butterworth filters with specifiable crossover frequencies (to make LR-4 crossovers);
  4. Theoretically "perfect-reconstruction" FIR filters between midrange and tweets. (Speakers are mounted in a nearly coax geometry -- CDT audio's braxial configuration).

But the crossovers are boring. To get a better flavor of all that is possible (e.g. super easy multi-band parametric EQ), check out this link (if you haven't already) to the pseudo-screen shot of the SigmaStudio software.

Does it get warm? Looks kinda cramped in there?
It gets warm but not hot. I chose linear IC voltage regulators, so with the car at 13.3-14.4 V and the ADAU1442 core running at 1.8V, there is over 10V to burn at ~300 mA -- not including other components. I just stuffed some resistors in there so the regulators wouldn't get too hot. Heat was a concern initially but it hasn't become an issue. Nevertheless, just in case there were heat problems I had a switching power supply available: a 8-42V DC input, 3.3 or 5V DC output breakout by Sparkfun. (The breakout was cheaper than I could get the part (LMZ14203) when I bought it).

As for the cramping, that was part of the fun! There's a lot of functionality in a box measuring 2-1/8 x 3-1/4 x 1-5/8 inches. It forces compact circuit construction which I find relaxing. (It seems like building a ship in a bottle, which I've never done).

What was the total cost of the parts if you don't mind me asking.
Good question for a DIY setting. I'm glad the question was asked because I ended up learning something. But first, a components "recipe" with costs:
So total cost of IC's and mounts is around $150 -- but a person could make different choices and substantially reduce the cost. Also, it's important to keep in mind that there are no less than 8 independent outputs here (four TOSLINK, four analog), along with three TOSLINK and one analog inputs (with room on the ADAU1442 for more I/O -- but there's no more room on the small box).

As for circuit construction, I just wired the circuits as shown in the manufactures' data sheets and evaluation board schematics. The time it took to build circuits and learn ADI's software was less than, say, disassembling my car interior and applying dynamat and mass loaded vinyl.

One issue though is that in order for a DIY'er to use the ADAU1442 and program it, ADI's SigmaStudio software is required. And although ADI says the software is "free", it may only be "free" with purchase of an evaluation board. Several years ago when I first became interested in Analog's SigmaDSP platform they gave me both an evaluation board and software for free. But I suppose those days have passed. For $195 Analog sells a "mini" evaluation board for their ADAU1701, where the evaluation board has 1-ch analog line-level IN and 1-ch line-level analog OUT, among other things. That would get a person the Sigmastudio software along with some hardware that is something like a basic miniDSP board (but with much more versatile -- and somewhat more complicated -- software). Additionally, as is shown in the pic below, any evaluation board and software affords self-boot programming as well as real-time software control for any number of DIY boxes. (Where a DIY box can have many more high-quality I/O channels and, relative to miniDSP, much more customizable signal processing).

The real-time control seems invaluable for in car tuning. However, I am not doing real-time tuning in the car yet, because I'm waiting to receive an IC that electrically isolates my box from the evaluation board. My concern is that in the car the box connects to chassis ground, but the eval board runs off laptop USB power, and not knowing how a laptop USB ground is configured in a car (especially when the laptop might be running off a powerinverter), I don't want to risk blowing out a CMOS interface on the ADAU1442 in the box. The IC I'm waiting for is ADI's ADUM1250. It electrically isolates the I2C communication between the eval board and box. (The three wires in the pic above; the colored wires connect the I2C interface and the black wire establishes a common ground, the latter of which I'm worried about in a car). (I don't know much about I2C, I just wire it up and it works; some info about I2C and optical isolation is here, here and here).

I stayed away from this option due to a severe lack of knowledge on coding DSPs. It looks like you have created a very elegant solution to a problem experienced by many.
Elegant yes, but credit Analog Devices. All I did was solder some IC's. For $699 a person could buy the evaluation board for the ADAU1442 (several years ago I received something comparable for the ADAU1701 for free; it's in the pic above). No assembly required and a lot of powerful software right out of the box -- and no DSP assembly programming needed.

On the other hand, for $10 a person could put a free-sample of a ADAU1442 (or any other SigmaDSP) on a Schmartboard themselves, and also buy the ADAU1701 mini-evaluation board for $195. That board comes with the SigmaStudio software and also a "USBi" interface that could communicate with a DIY ADAU1442 similarly to what is shown in the pic above. It would provide self-boot programming as well as real-time operation for in car tuning and other experimentation. (How to do it is explained by ADI in application note AN-1006. There is also some background information in application note AN-923. Unfortunately I found it necessary to wade through such documentation to get these things to operate).
See less See more
WOW! just WOW!
THANK YOU for sharing your findings, and Thank you for the details. EXCELLENT DIY project (not for me though :( Love the balls forward approach, it will interesting to see what can be built off of this as well?
Again, thank you for sharing, REALLY cool reading!
FANTASTIC WRITE UP! Wayyy out of my league, but VERY impressive :)
How's the noise rejection installed in your car? (it's for the car, right?) :p

It appears that you can request a software key from them. If I order a ADAU1442, and get a software key, how much would you charge for plans to build my own? This seems like a cool project.
looks like the evolutionary step for the Linkwitz Pluto's analog filtering replacement
Actually, when I first started using SigmaDSP ICs and SigmaStudio software (with an ADAU1701), I emailed Sir Siegfried to tell him about it. In addition to active crossovers for speakers, I think the real-time control capability would have been of interest to him; for example, it could be used to conveniently A/B test whether a person can hear distortions due to phase such as is discussed in his Group Delay and Transient Response section (see especially the last two plots in section F). He was polite and emailed me back, which I thought was nice, but he didn't seem overly interested in what the ADAU1701 and SigmStudio has to offer. An oversight by him IMO -- but I should say that his site is hands down, far and away, the best audio resource I've ever encountered on the internet.

If I order a ADAU1442, and get a software key, how much would you charge for plans to build my own?
I'd be happy to charge a lot of money, but I made neither schematics nor even drawings for this project. The reason is that they're all already available online for free. Just about everything you would need to know is in the links in the bullet points of the "components recipe" I posted above. Take the ADAU1442 for example. The link to its data sheet (a PDF file) is here. Look at figure 64 on page 89, "Self-Boot Application Schematic". The ADAU1442 should work if wired as shown in that figure, except for two misprints that I'm aware of: (1) supposedly, there should be a 10k resistor between pin 21 (CLATCH) and ground (I haven't tried it without); and (2) on the "self-boot switch" at the bottom of the page, "DVDD" should actually read "IOVDD". If a person were unsure of whether I'm right, you could go straight to the source and post in the help section for SigmaDSP's in Analog Devices' help forum here. Now, suppose you didn't know what that three-lead symbol is next to "REGULATOR" in the schematic. Searching "regulator" in the PDF would lead to a nice explanation on page 25: Analog recommends the NJT4030P from ON semiconductor. Google NJT4030P and so on. This, along with looking at the evaluation board schematics for various ICs, has basically been my approach, and after googling a few things I didn't understand, it all ended up working. Another good resource if a person got stumped by something would probably be diyAudio. I don't really go there but I think they build a lot of IC's and would be happy to help. (Relatedly, they might be interested in a build such as this but I posted here b/c I use it for car audio).

There might be a problem with the plan though. If a person gets the SigmaStudio software, how is the software going to communicate with the ADAU1442? My understanding of what Analog Devices says (see application note AN-1006) is that the software talks to one of their USBi devices over usb, and then their device converts the usb communication to either I2C or SPI -- but without their USBi (part of evaluation boards), how to talk to ADAU1442? I believe their software does generate a self-boot file for an EEPROM, but then a person would need to get an EEPROM burner and there would not be real-time control of the ADAU1442 (although the ADAU1442 would work with programs pre-configured in SigmaStudio). It might be worthwhile to email Analog Devices and/or look / post on their help forum to get such questions answered.
See less See more
1 - 20 of 51 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.