CamillaDSP - Cross-platform IIR and FIR engine for crossovers, room correction etc.

@Arnwald It looks like a very nice setup, I wish it could be implemented for my boat. :giggle: On the other hand I seem to dig myself into a deeper rabbit hole herre, there are so many things on the diyAudio board that I had no idea excisted! I'm wondering if the easiest thing, at least for now, would be to use a two channel motorized ALPS potmeter for each amp and control that with an ESP32 relay. I wonder if that's possible. Note: I'm running two parallel threads here for the two different approaches, CamillaDSP and simple volume control. The other one is here:
https://www.diyaudio.com/community/...l-by-pi-esp32-or-arduino.400441/#post-7380533
 
Last edited:
@Mastiffen : as Henrik already said - if you need just independent volume for multiple channels, there are a number of analog volume control chips with digital control. Boards with pga2310/11 are quite expensive, but e.g. these super cheap boards exist too (no tested their quality).

E.g. https://www.aliexpress.com/item/32986932171.html , https://www.aliexpress.com/item/32883023814.html , https://www.aliexpress.com/item/4000404679062.html and lots of other boards.

Rotating a mechanical pot with a stepper is a way too but you will have to tackle many other issues concerning limit stops, current position, etc. IMO it's not the right way to do, unless you really need a mechanical pot for some niche reasons (like e.g. I do in a project where I need very low distortion and very high resolution of the attenuator https://www.diyaudio.com/community/attachments/20210126_183700-jpg.915498/ )
 
@phofman Actually the rotating a mechanical pot could be a very good solution because of the "dirty"power in a boat. If I understand that correctly, I would only have to have power on the thing when I actually adjust the volume, so the signal can not have noise added to it from the boat's power the rest of the time. Is that understanding correct? If it is, I could maybe take one of those IR boards and use a relay to turn the potmeter, while the rest of the time it's without power?
 
@HenrikEnquist Thank you! That sounds very smart! I could probably connect them with a piece of thin rubber pipe and glue, and I could hot glue them inside an IP67 box (I'm hopeless with soldering, but I have a black belt in hot glue!). I won't even have to learn Arduino, because I see that ESPHome has a servo component as well! https://esphome.io/components/servo.html

The servo won't have to be very powerful either, so they are cheap and easy to find. But could I trouble you to tip me about pots that would work? Three stereo pots would of course be best. Main volume will be run from the headunit, to keep the same balance between them.
 
Hi,
I will soon have a new set up with a pair of good small monitor speakers and a subwoofer. Both need analog signals. To integrate them together, I will need the RPi, CamillaDSP and USB DACs.

I know that that having different USB DACs is not good, but would it be OK for the Subwoofer (80 Hz cut). With longer wavelength, could the impact of the small synch difference between the DAC for the Speakers and the one for the subwoofer be acceptable?

(nota: I investigated the possibility to use the RPi Jack to drive the subwoofer in parallel of the USB DAC for the speakers, but it seems that it is PWM trick, and that the distorsion is high).

JMF
 
But could I trouble you to tip me about pots that would work?
I didn't have any particular pot in mind, but I guess pretty much any stereo pot with logarithmic taper should do.
I know that that having different USB DACs is not good, but would it be OK for the Subwoofer (80 Hz cut). With longer wavelength, could the impact of the small synch difference between the DAC for the Speakers and the one for the subwoofer be acceptable?
It's probably ok as long as the DACs use the same clock. If they don't, then they will slowly drift apart.
The easiest way to get DACs to use the same clock is to use simple usb DACs that use adaptive mode. They lock to the usb bus, so two DACs hooked up to the same usb controller works. Fancier DACs that use asynchronous usb mode won't work, unless you can slave the clock of one to the other (some studio gear can do that, but very rare in DACs for home use).
 
  • Like
Reactions: 1 user
I ran into a problem when doing synchronous resampling from 44.1 to 96. I get warnings like
"[src/conversions.rs:65] Clipping detected, 19 samples clipped, peak +1.06 dB (112.9%)" Initially I tried adding an atten block before filters, but then noticed the warning is in conversions.rs, so I am thinking it is in the resampling. I did not see a way to attenuate the signal before resampling and after internal conversion to 64 bit floats. I could switch from reading the 16 bit data to 24 bit data and shift it a bit or two in amplitude in a preprocessor program, but seems like there must be an option I am missing in camilla. Thanks.
 
@torgeirs The problem is that CamillaDSP doesn't help when I'm listening to Radio Rock on DAB. So I still want to be able to adjust the bass volume. :LOL: Also, if that works as I hope, it would be nice to be able to adjust volume on the front and rear speakers independently, so I can listen at high volume in the back, when driving the boat, and my wife can have lower volume in her seat in the front.
 
  • Like
Reactions: 1 user
Hi Henrik, thanks. I should have thought more before posting. I knew you converted to 64 bit floats and so I knew it should not clip internally. I'd left a passthru to the headphone channels on the motu so those channels were passing straight thru after resampling. Adding a 3db loss to the headphone channels fixed the issue. All the other channels are filtered so they were all getting attenuated by an atten. I guess resampling can add a bit of gain (needed to add 1db atten) and this was a hot recorded cd that was running full scale.