Diy digital crossover

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

I'm new to this forum, so i hope I can get answer to my questions.

I planning to build a new loudspeaker, and then I got the idea of building a digital crossover instead of an active.

So I have made som research on google, but I have not found any valuable for me.

I'm very new to the digital processing side, so I wounder if anyone has any tips of, Where to start?

Which chip to use?

How to implement code and stuff?

so myy goal is:
2 way monitor with a basic digital crossover. :)

Best

//H
 
Hi,
I started with the same intention 4 weeks ago. And sorry, I didnt found any other way then to buy a dsp equipment. I'm affraid, its because of my english knowledge level. However, I've bought the motu ultra lite mk3 hybrid for about 650,-. The crossoversoftware is included. Hybrid means you may use firewire or usb. I use the usb. There is a digital line in and additional line in's. I use the digital line in from a dvd and an additional line in for the measurementsignal. There are 8 line out channels. I use them all. 4 channels for the speakers (2-way stereo), 1 for sub. And two for alternative chassis, in my case another tweeter (with higher crossover frequency, other filter characteristic and lower spl). So I am able to compare different tweeters with quick settings. The 8th channel I use for a 2nd sub with a detonation sub amp. With the line out channels I go to a 7.1 surround amplifier with direct line in for the speaker signals. Thats nice, because I dont need any additional amp. If the settings are done, it is not necessary to have the laptop online, you can switch it off and you dont need it to hear music, until you want to change anything in your designed system.
If you find another way, I'm interested in.

Good luck
Reinhard
 
This depends on how DIY you want to be. If you want to get 'down and dirty' then I'd recommend ARM Cortex M4 as a starting point. This CPU architecture is available from STM and Freescale at the moment, shortly to be introduced by TI and NXP too.

But if you want just a basic 2-way XO then the simplest and cheapest solution would be to start out with LPC1313 (a Cortex M3, subset of M4 instructions) - the newer revision has two SSP ports which can be coded to become 16bit I2S outputs. To get data in you can use the GPIOs. Even this very simple chip has more than enough horsepower for a few IIR biquads or even shortish FIRs.

Free and open ARM Cortex M3 and Cortex M0 embedded development tools
 
My goal is to build a two way active monitor with a digital crossover.

I'm fairly new to digital, so the LPC1313 is a development platform, which I can implement code to the processor, or do I get it wrong?

So then after I have implemented the code to the processor I can put the processor on a pcb and connect the audio input/output?

Tell if I get it totaly wrong. :)
 
My goal with this project is also, to mabye, make the loudspeaker for it self, so I can take it with me.

So it would be nice to have everything in the box, so you just can connect to the loudspeaker and then the digital crossover would be in the loudspeaker enclosure.

Does anyone know, how I could make it that way? :)
 
I feel that a digital crossover has its place in dealing with DIGITAL signals, but the signal path of [analog in]-[ADC]-[digital filter]-[DAC]-[analog out] could potentially cause problems. An exact digital copy of the analog signal can be constructed, within the nyquist criteria. However, an exact representation of this digital signal can never be returned to analog.

When we digitize a signal, there is a 1/2 sample delay that becomes present in the digital version of the signal. At low frequencies, this is usually not a problem and the phase change is very small. At frequencies approaching the nyquist frequency, the phase drops off precipitously. In order to avoid this, it is recommended to sample at 5-10 times the highest frequency that we want to reproduce accurately. For music, this would mean sampling in the 100-200 kS/s range.

I notice that this miniDSP module samples at 48kS/s, I would consider this inadequate for crossover and filtering purposes.

Also be aware that if the input is volume controlled, you run the risk of quantization error becoming large enough to be audible. I learned this the hard way....

Just my two cents.
 
  • Like
Reactions: 1 user
I'm fairly new to digital, so the LPC1313 is a development platform, which I can implement code to the processor, or do I get it wrong?

No, the LPC1313 is just a very small, cost-effective SoC (system on chip) which you can code for using free, open source tools. To do development on it, you'd need to buy a development board which includes this chip, along with a USB-SWD adaptor to allow in-circuit debugging. The total cost should be under $50 to get started.

So then after I have implemented the code to the processor I can put the processor on a pcb and connect the audio input/output?

That's one way of doing it, but the pitch of the pins is fairly fine so its easier to begin with a board someone else has made and hook up your ins and outs to that. Here's one cheap example on Taobao :

NXP LPC1343¿ª·¢°å Cortex M3 USB £¤128-ÌÔ±¦Íø

This board already contains the USB-SWD interface but I'm not sure which software is needed to drive it.

<edit> I just realised the example I gave you isn't suitable for the end-product as its not the latest revision of the LPC1313 which supports the two serial output ports. You can begin with this board then would need to upgrade to the latest rev to have two stereo output channels running.
 
Last edited:
it would be nice to have everything in the box, so you just can connect to the loudspeaker

Connect what to the loudspeaker?

You need an A/D or you need a digital source. You haven't said what your source will be.

You need a digital low pass filter (for a 2 driver system).

You need a digital high pass filter (for a 2 driver system) although you can simply subtract the low pass samples from the input samples.

You need both filters to have the same latency.

Steer clear if IIR filters. I'd think a dsPIC would have plenty of bandwidth, the in-circuit programmer/debugger is cheap and the C library has FIR filters.

You need one DAC per driver.

You need it all to be built to run synchronously with adequately low jitter. The LPC1343 board is an unknown quantity in terms of jitter, it might introduce a requirement for reclocking. You'll have problems enough with clock distribution.

You need one amplifier per driver.

You need digital and analog power supplies.

You need power to the box.

And of course you need 2 of everything except the source will be stereo, but if it's digital you have to send the signal to both boxes.
 
Last edited:
TI TAS5706A has IIR BiQuad filter inside. (24dB/Oct)
So to make Full Digital Active 2Way monitor speaker,

12V power input, 3.3V regulator, power on Reset
SPDIF input, CS8416 SPDIF receiver, SPDIF pass through (master only)
small PIC or MCU, Volume ADC in (master only), RS232C transmitter(master)/revceiver(Slave)
TAS5706A amplifier.
They can be placed on single 4 x 6 board.

you can find TAS5706 amplifier schematic, and how to calculate TI's Biquad filter for TAS5518.
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.