A Modular 2/3/4/n ways Digitally Controlled State Variable Active Crossover

Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.
I2C attenuators PCBs populated!

Here are 3 pictures of my new 4 stereo volumes populated PCBs for the Xover44 project.
well I still need to receive some components I ordered long time ago.

Anyway, in the project, 2 of those PCBs are needed for the 3 or 4 way configuration. Just one PCB for the 2 way configuration.
One board provide already 2 stereo volumes with a 16 step (4 bit) control each.
With the resistors I installed in the prototype it provide volume controls from 0db to -7.5db with 0.5db steps, but can be configured differently.

The board can be used in a passive mode not installing the op-amps like in the picture. Otherwise can be configured to have a small gain.
My next step is to update the software with the attenuator controls code, install the new boards and test them!
This will take some time...

Cheers!


DSC_0036.jpg



DSC_0035.jpg


DSC_0034.jpg
 
Some Information on the 2 way version developing.
I just added this content on the Xover44 Project Site



2 Way Version

The Hardware:


  • MCU: Micro Controller Unit.
Arduino DUE is the only choice available at the moment. The software for ESP32 has not been developed Yet. The problem of this 2-ways version is that it uses a VGA display to output the GUI. A VGA monitor minimum size is usually 7'' from all manufacturers. So the only problem is actually the size on the panel that force us to use a minimum case size of 3U 19'' Rack (With a front panel height of around 10'' or 12-13cm. The metal frame mounted VGA monitor I choose in my prototype is 121mm high and it has a mounting rectangular hole of 108mm for the height and 150mm for the width.
ESP32 in future will allow the possibility to use the crossover trough his Android App, using your favorite Android device or a dedicated WiFi tablet. But anyway not necessarily using so much space on the front panel. The contra of this version is the fact that this configuration will have a relatively small latency controlling the machine from the App, because it needs to send data trough WiFi or Bluetooth and receive back a data feedback from the machine to actually see your parameter changes on the display of your Android device.



  • MBoard: Connections Arduino DUE shield.
The connections shield is a small board carrying all the circuitry necessary to connect Arduino to the various peripherals. Shields are boards that can be plugged on top of the Arduino PCB extending its capabilities. The connections shield features a full passive VGA "video card" that allow to control the VGA display in 320x240 pixels resolution with 8-bit color depth. The board it self can be useful for other projects as well.



  • FBoard: Filter Boards.
The filter boards needed are just 2. One for left and one for right. This configuration still give use the possibility to have 32 steps of frequency cuts adjustments, 4 different geometries (Resonance levels), selectable order, 12db/oct. or 24db/oct.



  • VBoard: Volume Board (Optional).
The volume board can be used as a passive attenuator, or as an active volume control. One board will take care of the output of 4 mono channels, so just one board will be needed for the 2 way version. From every channel (HP-Left , HP-Right, LP-Left, LP-Right) the signal will flow in a 16 steps volume control. The steps can be configured at the building time with different step sizes, for example 0.1db, 0,5db, 1db, etc.



  • SBoard: Output selector board (Omitted).
No selector board is needed for the 2-way configuration.



  • DPSU and SPSU: Power Supply.
One of the main goals of the power supply of an audio crossover, from my point of view is to keep the ground silent, preventing ground loops, and providing a good separation from the digital grounds to the analog grounds, keeping in mind that VGA signal also carry the ground, and VGA monitors are quite famous to be source of noise in audio signals. I recommend to always use linear power supplies is every single part of the project. I tried the switching power supply that came with the VGA display. When I turned on the crossover there was a huge 50Hz disturbance and the noise level was just so high that I had fear to damage the woofers!!! Replacing the power supply with a normal linear home-made unit the noise level went down at very low levels like should be. The DC voltages needed for the crossover are the following: a high quality +15V/-15V for the analog part of the circuit, usually a 0-12V to supply power to the display, 0-7V to 0-9V for the Arduino DUE, 0-5V for the MCP23017 that in the 2-way version you can get from the Arduino DUE 5V pins without problems, 0-5V to 0-6V to supply power to the relays. For the 2-Way version ULN2803A can be used as relay driver instead ULN2804A to allow latched relays to works with just 5 Volts. For best performances I recommend to use a minimum of 2 transformers (better toroidal ones): the first will be dedicated to the analog part and a small 20VA with 2X12VAC outputs should just be good enough. For the digital part also economical buck converters can be helpful to step down efficiently our voltage from a bigger transformer, but always using after that a good filter bank and linear regulators to avoid switching noise to get in our audio path. Several strategies can be used to avoid to have 3 independent transformers. For example having a transformers with 6VAC and 12VAC secondaries will make your building a lot easier. You can consider also to add by hand a 6V secondary coil to a normal 12V toroidal using enameled 1mm copper wire (we are talking of about 30 - 60 turns depending from the toroidal used.)


The Software:

The Software will be the same for all Arduino DUE versions (2-3-4-n ways). If you have some experiences with Arduino, compile the software on your Win/Linux/Mac computer and flashing it on the Arduino DUE using USB will be pretty easy and doesn't need any external programmer. All the software needed is free and open-source. I will provide a .zip file containing all the libraries included in the software and there will be a software switch to select the maximum ways of your crossover at the software build time. The software will provide the same functions for all versions (2-3-4-n ways). A function I would like to add for the 2 way version is a "All in one page" parameters interface. I'm valuating the possibility to provide also preinstalled Arduino DUE boards.
 
I updated schematics and PCBs on the Xover44 site: LINK
The software also was updated and is 90% done!
My prototype hardware is all ready. Every board was tested with success.
I just miss the definitive analog cabling of the volume boards and the selector board (SBoard). I improved SBoard to allow analog switching for even more ways then 4 without additional boards. With this new design, not populating part of the board will not affect the signal, having 4 independent circuits every one with his own left and right ground plates.
Here is a picture of the new SBoard:
SBoard.png
 
Hardware finished!

Good evening to everybody and thank you to all the followers!
I finally finished the hardware! I'm not closing the chassis just because I was lazy to put a panel mount USB extension to my machine! So now I need to keep the lid open to allow the USB cable to connect from my PC straight to the Arduino DUE.
The software is almost ready too. Actually works everything except the mono stereo control that I still have to finish to implement (some was implemented but still to test). The tests are very long to do and boring with my configuration. Consider that my 150W FET amplifier doesn't want to turn off! Takes 2 minutes just to turn it off because the filter bank keep a lot of power and I never got use to listen it at 150W fortunately! :D
I tested everything by listening it on my sound system!
The only measurement I have done are with tester and my integrated audio card. while for listening I have a decent DAC at least! To my ears everything should be OK! The sound is good and full, details are all there. Would be hard to say if there is an op-amp involved in the audio path or not by ear. I have all discrete machines except the DAC off course.
I'm now listening it with a ESP p101 for the bass and a PeeCeeBee V4 from Shaan of diyaudio for the highs!
I have to say! It sounds better then my previous active crossover also if has more functions. I'm very happy with the results! The noise level is just impossible to hear!
Here are two pictures of the messy wiring I did. The wires I had are a bit too rigid to do better then this. In future I will use different wires but my budget was limited. some zip-tide will help.
Warning!
Having this kind of parameters on a crossover can get very addictive! Stay away! :D





cabling.jpg



frontal_finished.jpg
 
For the week-end I will run a full 4-way listening test and , I hope in few days, I will have the opportunity to do some measurement with an affordable analog Tektronix oscilloscope! I need to involve the friend with the best ADC possible to do some serious FFT test!
Soon I will also post all the simulations on LTspice that brought me to develop this project. For simulations I will open a new section of my site of the XOVER44.
I'm a fun of LTspice and multisim. In past I built a drum machine with the 95% of components bought for 10 euro / 2 Kg. The lot camed out from a huge mix of components so I got kind of anyting in there. It was a nice cheap realization and it is the project that really give me the kick on LTspice, having to simulate the most unknown components and oldies! I made some .wav recording out of my simulations to listen the results. and testing on my breadboard at the same time. Well, you have no clue how matched were the results! you make a snare that sound on certain way and when you change that cap or transistor and you record the output on .wav the change was exactly the same that when I changed the component in the real life! I think component simulator software is a very powerful tool to simulate analog audio. Even on power amplifiers the result is amazing. Even the FFT results are very affordable, with nice audio spectrometer system is possible to test simulators! I think they are accurate 99.9% of the times in the audio field. This is not so true for RF or Very High Power applications.

I used till a fuzz-face like distortion based on real germanium transistors I found in the 2Kg package. Also a germanium type transistor can be simulated accurately on LTspice. The audio result from simulator again was very similar to the original analog sound in behavior and timbre.

See You soon on this thread!
 
Hi TNT,
I would like to move this thread after I'm sure the Xover44 project will have a commercial future. I explain:

I'm still not sure to open a small e-commerce or handle this in a group-buy way. One of the problems is that Italian laws make a difference between direct commerce an indirect commerce on internet. This means that opening my e-commerce need a tax number (Partita IVA) a hosting, etc. making the costs of this operation higher then the possible income. Doing a group-buy (so just using platforms like diyaudio forum) I can sell goods for a maximum amount of 4999 euro an year which could works. I'm valuating also to move this e-commerce service to Indonesia where laws are easier and my girlfriend already has an e-commerce type of business. Anyway the project will be available just after I finish all the necessary tests, witch will take still some time, may be months... What if something is wrong and I still havn't figured that out? Hope Not!
Thank you to point that out TNT. This gave me the occasion to explain better the possible commercial side of the project. The main problem is that unfortunately DIY audio is still a very small market.
 
1st Long Test Done!

Hi everybody,
I did a first test of the Xover44 on my 4-way system.
The result was absolutely positive, but as usual with some obstacle.

What is positive is that is the first time I hear my home speakers sounding so well.
Some small issue was found also on my project, and some accident also happened unfortunately, but nothing serious! :rolleyes:
My listening setup was the following starting from the room to the source:


The room:

The room is small for the speakers, but at least well insulated from any high reverb from carpets, curtains, sofa, etc.
A good coverage of libraries till the ceiling helps to break the sound and minimize echo effects. (So... nothing special at all :D)



Speakers:

Consider I have some home-made loudspeakers from the early 80's based on dynamic speakers from Scan-Speak + Ortofon join venture, if I remember well. It was an aluminum made limited edition, from the end of the 70's I guess or beginning of the 80's. The speakers are the following crazy horses, that my dad an I are trying to make sounding properly from when I was little! I mean it's a generational thing! :D



Tweeter: D2008/8514 , One of my favourites 21mm soft-silk dome tweeters of all time, featuring hi-level finished aluminum flange/cast, ferrofluid (something not common at that time), aluminum hexagonal section coil wire, 0,18g Moving Mass!)


Midrange: 13M 3808 P2A 8533 , a high sensitivity dual coil midrange, featuring hi-level finished aluminum flange/cast and also aluminum hexagonal section coil wire.


Mid-Bass: 24W 4208 F2A SD8651 (the 24cm woofer of the same serie)


Woofer: 42W 6308 C2A SD8591 (a 42cm (16,5'') woofer, sensitive like the ones used in famous guitar/bass amplifiers, but actually way more hi-fi!


The Amps:
Different configurations were tried, but the best one with known amplifiers was this:


HP (High-Pass): ESP P3A (because I have it and it's nice and bright)



MH (Mid-High): diyaudio Shaan PeeCeeBee V4 (I would like to have more, including the big brother!)



MB (Mid-Bass): ESP P101 (A very natural sounding amplifier but more powerful then others (150W@8Ohm), compensated by -1.5db volume in the crossover section)


LP (Low-Pass): ESP P3A (because high dumping)


Preamps tested:

Amb.org Alpha-10
ESP P37A
Citation Twentyone Preamp


Source:
MARANTZ SA7001 Ki Signature SACD player
Denon DCD 1550 cd player




Measurements:
A mediocre phantom supplied Behringer measurement microphone was used just to test roughly the frequency response.

The sound card involved was an Intel-Asus "high-quality" integrated sound card (piece oh garbage to don't say bad words! But helped to understand).
LTspice simulator on the hand to replicate what is happening in the crossover!


Listening test:
As I said.... I never listen this system so... perfect is the right word! Using 24db/octave cuts for all the speakers with Linkwitz-Riley configuration the sound was awesome.
My dad and I tried at least 6 types of crossovers on this speakers during the years. Most of them passive, some active.
This system is clearly better then previous ones.

The crossover is pretty flat on pink-noise measurements, according to an imprecise tool anyway. You can hear that the phase is pretty coherent too. The bass is solid and capable of any "articulation", the mid-bass is super natural and fat!, the mid-high is brilliant but not edgy like it was in the previous configurations (with different amps too), the highs have a presence they never had precise but a bit sibilant on the very highs, for example listening female voices when they are too close to the microphone. About this issue, I already found a solution and I made some change on the PCB to allow a more precise filter on the high cuts just adding few small caps.
I will post this soon too.

I found out some problem, using different configurations than Linkwitz-Riley 4th order and Butterworth 2nd order.

What I found is that, in the other cases, the resonance was just an approximation of what should be, and in one case was just creating a 6db hole in the midrange section!

Using the simulator, I found a better resistors configuration to get more reliable resonance selection. This change will also involve a software update, but should guarantee an almost perfect result!


I will post soon my simulation of the analog part of the filter module so everybody can enjoy the pleasure to check this crossover more in depth.


The problem I got was the following:

I got some caps and op-amps from China to cut the costs and I had a failure after a couple of listening days. I'm not sure was because I bought them from China, but probably because I got them at very low-cost. Not a prove anyway...

After I isolated the problem using a hi-Z phones, not having an oscilloscope at home right now, I decided to change a couple of caps and op-amps. Everything restarted to works properly, but I have to check if this happened for a reason or for a bad component (may be overheated by the soldering iron or something).


With this economical rigid coaxial cable I used, contacts are also less stable then expected with Molex KK type connectors, usually pretty affordable, especially using golden contacts).


I did some modification on the FBoard (filter board) that I will post soon, where I improved different things, and the modifications on the PCB is already done.


Stay tuned guys!
 
I was doing something completely different when an email with updates to this thread popped up.

Regarding amps. Personally, the choice for a test rig is the TDA7293 - its a 100W class AB and can be configured in bridge and parallel mode, achieving 500-600W /ch for that woofer/subwoofer.

But other than this, don't have much to say other than I will continue monitoring the thread, because its an awesome project :)
 
Hi Dondo
very interesting project. You've spent lot of time for this design. Actually I'm just trying to finish my crossover pcb bought from Rod Elliot P125 project. P125 is very simple with frequency adjustment with combination resistors and capacitors.
As your project is much more flexible I'm interesting to make something like that. Do you sell finished boards or pcb's? Any idea about cost?
 
Hi Tesla Audio,
I know ESP p125 and I think it is a good project. However I found that kind of design having some downside too. In fact it's very delicate in terms of capacitors matching to keep the cuts precise and the phase as it should be, and this make the price higher too. The other issue is that with a potentiometer you never know exactly what frequency is your crossover point, making a rotary switch (rotary discrete attenuator) actually more reliable for the project considering the high usual tolerance of potentiometers.
In my project what makes the price flying is the use of quality relays.
However when you buy relays in hundreds (more or less the number to build a 4 way crossover) you can pay them a lot cheaper. I found them on Verical electronics this time at 1/3 of the regular price, and in past I was lucky also to find Chinese Panasonic AGN2104H (that are exactly the same specs then Japanese ones) on aliexpress for cents.
The budget for my crossover was 1000 euro. the price to populate every board was around 80 euro.
Soon I will publish the updated PCBs so don't attempt to build one your self because it is going to be an old version in few days.
I will setup a group-buy on diyaudio, shipping from Indonesia and at a cheap price, as soon the crossover will be finished and rock solid!
I hope to finish the project and open the group-buy before Demember.
Thank you for your interest.
 
Dondo
I know problem with matching capacitors. Problem is that is not possible to find capacitor with low tolerance. This produce phase problem in crossover. In my case I need 3 way stereo crossover for my active loudspeakers. I don't need volume control as I already made 6ch.Biino volume control with relays. Also I don't need input selector as it is already part of my volume control. I need only crossover part.
I didn't study your project in details. Why do you use relays? To switch between resistors?
 
Now I use Arduino DUE connected to a home-made VGA Arduino DUE shield providing the connections to control the filter boards. the communication with the boards use I2C protocol. So it's easy to implement filter boards on any other MCU. The filter board digital side is based on MCP23017, a very famous and well supported 16-bit I/O expander with serial interface. 8-bits (GPA0-7) of the 16 are used to turn "on" latched relays and the other 8-bit (GPB0-7) to turn them "off". the signal sent to relays is just 10-30 milliseconds, so no power is applied to relays during normal audio operation, minimizing noise, current wasted, heat.


Here is an example of how to use mcp23017 with a normal Arduino.


MCP23017 Datasheet HERE
 
Having 8 possible bits (8 to turn on and 8 to turn off) it is possible to have till (2^8) 256 frequency steps, but I decided to use the 8-bits as following:
5 bits (2^5) to make 32 steps because I think they are enough.
2 bits (2^2) to can choose among 4 different resonances .

1 bit to choose between 12db/oct. and 24db/oct.
 
The use of latched relays is easily explained. Compared to potentiometer they have the following advantage.

- They should affect the signal less than a potentiometer (It's even better than a DACT attenuator compared to a potentiometer because it has less cross-talk not being such a miniature.)
- for every step you know exactly at what frequency is your cut and the 2 channels (left and right) are always well matched comparing to set the cut with a potentiometer. Can you imagine setting the resonance with a pot? how hard would be just to find the exact potentiometer set to obtain a perfect Linkwitz-Reily by listening or measurement?
- Well implemented good relays last for ever. They are usually estimated to last hundreds of thousands of cycles.

- Good small signal relays ensure a pretty qualitative audio contact using precious metals like silver, palladium, gold and being sealed.

- Latched ones not needs energy to keep their state same then potentiometers being passive.
- Relays can be more economical compared to expensive high quality potentiometers.
- a disadvantage is off course they are not continuous.

- an other disadvantage is also that they can click a bit in the audio and they produce a listenable physical click when they switch.
 
I'm not familiar with digital technology so I don't understand quite well how MCP23017 works. But something like variable resistor controled by Arduino. Or MCP23017 only control relays which switch different resistors?
What about capacitors? Capacitors are with constant value?
 
Here is the result of the summing of the 4th order Linkwitz-Riley outputs (low-pass signal + the high-pass). As we can see the the frequency response is very flat (-12mdb + 27mdb @ 20Hz-20kHZ).
With the new small capacitors (47pF and 130pF on the simulation schematics) added to the PCB this kind of results can be achieved also having a very high crossover points (improving super-tweeters flat-response sensibly, and dumping sibilants).
You can also notice the effect of the new caps on the phase of the very high tones.

24db_summed_filter_response.png
 
Status
This old topic is closed. If you want to reopen this topic, contact a moderator using the "Report Post" button.