i just was drafting the relay board (nothing final here) and i got an idea... you may ask "why a 20 pin connector?"
- with a switched 3.3V line for relays this board is essentially completely passive unless you change the volume
- really no need to worry about isolating anything here (i dont really care for sound quality while the volume is being changed unless it sounds obvious)
- since im seperating the chips, one could make multiple connectors to switch multiple relays boards at the same time, i think one ULN2003 supported 500mA, so around 10-12 relays boards at the same time would work
- following the point before, i could just do one single companion board with a raspberry pico or such and PCA9555 to control "everything", also concentrating on stereo/2 channel balanced playback should make this straight forward
let me think further about this about some of the details...
I suggest lining up the resistors so the board will look pretty when manufactured. I also suggest routing the audio traces first, unless you can make them all fit on the same layer.
Don't push the manufacturing process, especially if you don't plan to pay for electrical testing. Just because the manufacturer supports 5-mil traces doesn't mean they can produce them with a great yield. I suggest 12-mil for signal traces and 20 mil for relays if possible.
5 V relays would draw lower current. That could help you with relay driver maxima and such.
If you put the ULN2003 on the relay board it would still be passive until you change the volume. Just a thought.
Double check the data sheet for the relays and make sure the relays will fit even if you get some that are at the larger side of the manufacturing tolerances. It would suck to have to pound the middle relays in with a hammer.
It looks like the resistor footprints are massive. Normal 1/4 W resistors are 6.3 mm long (10.16 mm pin to pin) and 2.5 mm in diameter. Are you planning to use Dale CMF65 or something?
Tom
Don't push the manufacturing process, especially if you don't plan to pay for electrical testing. Just because the manufacturer supports 5-mil traces doesn't mean they can produce them with a great yield. I suggest 12-mil for signal traces and 20 mil for relays if possible.
5 V relays would draw lower current. That could help you with relay driver maxima and such.
If you put the ULN2003 on the relay board it would still be passive until you change the volume. Just a thought.
Double check the data sheet for the relays and make sure the relays will fit even if you get some that are at the larger side of the manufacturing tolerances. It would suck to have to pound the middle relays in with a hammer.
It looks like the resistor footprints are massive. Normal 1/4 W resistors are 6.3 mm long (10.16 mm pin to pin) and 2.5 mm in diameter. Are you planning to use Dale CMF65 or something?
Tom
If you need a "Balance" function, then a second row of relays or a second board should be provided.i just was drafting the relay board (nothing final here) and i got an idea... you may ask "why a 20 pin connector?"
- with a switched 3.3V line for relays this board is essentially completely passive unless you change the volume
- really no need to worry about isolating anything here (i dont really care for sound quality while the volume is being changed unless it sounds obvious)
- since im seperating the chips, one could make multiple connectors to switch multiple relays boards at the same time, i think one ULN2003 supported 500mA, so around 10-12 relays boards at the same time would work
- following the point before, i could just do one single companion board with a raspberry pico or such and PCA9555 to control "everything", also concentrating on stereo/2 channel balanced playback should make this straight forward
let me think further about this about some of the details...
i planned to use Kiwame 2W resistors, carbon film, yes they are a bit bigger but also allow for other resistorsIt looks like the resistor footprints are massive. Normal 1/4 W resistors are 6.3 mm long (10.16 mm pin to pin) and 2.5 mm in diameter. Are you planning to use Dale CMF65 or something?
ah right... well one board is designed for balanced, if you want a balance function with unbalanced you would still need two boardsIf you need a "Balance" function, then a second row of relays or a second board should be provided.
im already looking into the input selector board and how to add additional cinch in and outs, do have a suggesting so one can exchange between cinch in and xlr out? im thinking of building it completely balanced, so one would need to use transformers for cinch in and outs, what do you guys think?
well i have to rethink this anyway because the 3.3v regulator on the raspberry pico can only provide 150mA, either i use the usb 5v directly for around 400mA + 4.5V relays or maybe an additional regulator, tho i kinda like now the 5V idea...5 V relays would draw lower current. That could help you with relay driver maxima and such.
i might do this actually, since i plan to ground the relay coils when not in use having the ULN2003 on the board will "contain" the clean GND, so it doesnt need to wander around inside the case to the control mcu board... tho the mcu pins will arive at the relay board... im not sure which is worseIf you put the ULN2003 on the relay board it would still be passive until you change the volume. Just a thought.
yea nothing final, will give them a little more spaceDouble check the data sheet for the relays and make sure the relays will fit even if you get some that are at the larger side of the manufacturing tolerances. It would suck to have to pound the middle relays in with a hammer.
i already tried some placements, this one i posted is by far the cleanest signal trace routing... i dont mind a little wasted spaceI suggest lining up the resistors so the board will look pretty when manufactured. I also suggest routing the audio traces first, unless you can make them all fit on the same layer.
i will also move the connecting under the relays to where the resistors are, just to avoid any magnetic field there...
imo the signal path can stay like that , will still need todo some minor tweaking of the signal relay lines
the additional relay switches the 3.3V line for the relays between GND and 3.3V_IN
Why not just turn the relays off with their respective control lines. That accomplishes the same thing, except with better control over glitches on the output.the additional relay switches the 3.3V line for the relays between GND and 3.3V_IN
I would probably also make it such that the attenuator has max attenuation with all relays off. That way you won't get a sudden surprise if you forget to turn the preamp on one day and get the full source voltage at the output.
Tom
as far i understood the ULN2003 can only switch GND, do you have a somewhat easy solution here?Why not just turn the relays off with their respective control lines. That accomplishes the same thing, except with better control over glitches on the output.
I would probably also make it such that the attenuator has max attenuation with all relays off. That way you won't get a sudden surprise if you forget to turn the preamp on one day and get the full source voltage at the output.
Tom
these double coil relays im using save their state, so unless the mcu software malfunctions everything should be alright
looks like i would need to use this one: https://www.lcsc.com/product-detail/Power-Distribution-Switches_XINLUDA-XD2981_C556270.html
a clone of the UDN2981A as it seems
a clone of the UDN2981A as it seems
Ah. I didn't know you were settled on latching relays.as far i understood the ULN2003 can only switch GND, do you have a somewhat easy solution here?
these double coil relays im using save their state, so unless the mcu software malfunctions everything should be alright
In that case: Connect the (+) side of each coil to the relay power supply. Connect the (-) side of each coil to the ULN2003LV. You'll want the LV version if you want to be compatible with 3.3 V logic. The to change the relay setting all you have to do is to assert the correct coil and all will be good.
If you're using latching relays there's even less reason for interrupting the power to the relay board. The relay coils will all be off unless you change the volume setting, correct? That's sorta the point of latching relays.
Tom
the relay i added (tho im not sure yet if i implement it like that) is just so there is no "dirty 5V or 3.3V" floating around the relays when they are done switching, i know in theory the ULN2003 would be enough, but you still have the power lane around the signal path in that caseAh. I didn't know you were settled on latching relays.
In that case: Connect the (+) side of each coil to the relay power supply. Connect the (-) side of each coil to the ULN2003LV. You'll want the LV version if you want to be compatible with 3.3 V logic. The to change the relay setting all you have to do is to assert the correct coil and all will be good.
If you're using latching relays there's even less reason for interrupting the power to the relay board. The relay coils will all be off unless you change the volume setting, correct? That's sorta the point of latching relays.
i really wanna have stuff completely off around the signal resistors unless im changing the volume
i could probably also wire each ULN2003 output (with a diode) to the power relay, so it gets automaticly activated without needing to switch it trough the MCU
What power lines are you referring to. To me it looks like all power lines crosses any signal perpendicular, there should not be noise induced. If you are worried about the coil in the relay, the induced noise is low because the coil and contact is a step-down transformer and the induced noise will be hundreds of times less than the noise in the coil when switching. Your current layout is good. I am just concerned about the track width they may come loose from the board when soldering too long.
You worry too much. Just saying... 😉the relay i added (tho im not sure yet if i implement it like that) is just so there is no "dirty 5V or 3.3V" floating around the relays when they are done switching,
Tom
probably, still its not that much work to slap a additional relay on it, i will probably just add it to MCU board and just switch the 5V line for both relay boardYou worry too much. Just saying... 😉
Tom
if someone feels like he doesnt need it, i can add a software switch for A/B purposes, atleast my belief is every "active" cable will also radiate, even without current flowing, so i rather make this board completely passive if volume doesnt get changed
are these two non-continious GND planes ok?
and how should i connect input and output GND, just tie it to the planes?
i mean in the end everybody can use what they want, i was considering ordering presoldered SMD resistors one could remove if they switch to more exotic resistors (SMD resistors soldered + 2W resistor footprint)Are you using 2 watts resistors?
personally i will use these: https://www.hificollective.co.uk/components/kiwame.html unfortunaly they are only available in 2W... maybe it makes a sonic difference, maybe it doesnt 🙂 i just wanna order some fairly high quality ones and be done with it (for now)
"On the other hand, they offer true 0.5% tolerance despite their nominal E24-series 5% label! If you don't believe it a multimeter will certainly convince you. Their sonic character can be briefly described as follows: Effortless reproduction ('non-fatigued) is subjectively perceived as an increase of headroom. Extensive neutrality."
this would be the configuration i would use
the maximum deviation values are probably calculated with 5% tolerance for E24 right? so probably a few notches better with the kiwame resistors
im also still wondering... the general conses seems to be you want with any device " high input impedance and low output impedance "
so wouldnt be the optimal solution, purely objective speaking be, high input resistance (maybe even 50k?) with and output buffer lowering impedance again ?
the maximum deviation values are probably calculated with 5% tolerance for E24 right? so probably a few notches better with the kiwame resistors
im also still wondering... the general conses seems to be you want with any device " high input impedance and low output impedance "
so wouldnt be the optimal solution, purely objective speaking be, high input resistance (maybe even 50k?) with and output buffer lowering impedance again ?
i settled on this for now for the mcu controller board with raspberry pico, but still WIP, i specially still have to think about button layout and possible LEDs
i made it now so, there is a little board with 2 relays which can select between two inputs or outputs depending on how you wire it, if you use multiple boards you will have to interconnect them, so you only have one single cable going into the relay attenuator
but now its just a software thing if you want:
2 (balanced stereo) inputs, 1 (balanced stereo) output (you need 1 input board)
4 inputs 1 output (2 input boards)
2 inputs 2 outputs (2 input boards)
4 inputs 4 outputs (4 input boards)
then the question still remains is how to include unbalanced in and outs... i was thinking about balancing the cinch inputs with a transformer, and cinch outputs you just use the + signal of the balanced signal...
i made it now so, there is a little board with 2 relays which can select between two inputs or outputs depending on how you wire it, if you use multiple boards you will have to interconnect them, so you only have one single cable going into the relay attenuator
but now its just a software thing if you want:
2 (balanced stereo) inputs, 1 (balanced stereo) output (you need 1 input board)
4 inputs 1 output (2 input boards)
2 inputs 2 outputs (2 input boards)
4 inputs 4 outputs (4 input boards)
then the question still remains is how to include unbalanced in and outs... i was thinking about balancing the cinch inputs with a transformer, and cinch outputs you just use the + signal of the balanced signal...
looks like i will be adding two RGB led terminals, to use input and output selector buttons with color-coding
https://www.aliexpress.com/item/1005003538108177.html
also a seperate mute button/input probably cant hurt
in theory we only need 1 external i2c connector now for the display, but i will probably leave the two others for further expansions
---
Also... if anyone has any clue on how to make the mcu communicate with a pc to control volume, let me know... also bluetooth/smartphone would be nice
i guess the main problem would be i need to write a corresponding program to communicate back.. i dont think UAC2 implementations will work
https://www.aliexpress.com/item/1005003538108177.html
also a seperate mute button/input probably cant hurt
in theory we only need 1 external i2c connector now for the display, but i will probably leave the two others for further expansions
---
Also... if anyone has any clue on how to make the mcu communicate with a pc to control volume, let me know... also bluetooth/smartphone would be nice
i guess the main problem would be i need to write a corresponding program to communicate back.. i dont think UAC2 implementations will work
- Home
- Source & Line
- Analog Line Level
- DIY Volume Control (Relay Attenuator)