Digital Control of Attenuation – Repository for DIY

Volume attenuation is not an easy problem. Taking a survey of the field (these are my observations based on guesswork, it may be inaccurate):

Krell, Mark Levinson, and, Simaudio use multiplying DACs for attenuation like DAC8043 (the ML service manual can be found online). If I'm reading the datasheet they have the benefit that the v-ref can take -+17v voltage swings even when the power voltage is off. The disadvantage of these devices is that the attenuation is linear (not log) so even though there are 12bits there are too many below zero DB and too few near max attenuation. So they build discrete 20-bit M-Dac's (I guess they really like this scheme). They also need inverting I to V stages.

Pass Labs started with a relay attenuation on the Aleph P (but the method that gives perfect base two steps was not known at the time, the service manual was available in the past). Next, the X0.2 and X1 used a solid-state discrete scheme not much is known about it. The disadvantage is that it used up half the PCB real estate in the case. Next, they used the DS1881 (0-5v rails) in some integrated amps and the XP-10 used the DS1882 (+-7v rail, that comes from the chip datasheet I don't know if that's what they actually use). Then they started using the Muses chip on their higher-end stuff and the DS1882 in the integrated amp. I heard one of the Pass Int amps at the New York Audio Show in 2019 guessing that was the DS188[something] and it sounded very good for the short time I had with it in the PureAudioProject room. I got the impression of natural and organic sound from the system as a whole.

Chord Electronics does it digitally in their FPGA.

Mola Mola uses relays but swears for the best sound it has to be done in inverting mode, so the contacts see zero voltage swing.

Kinki Studio uses Muses on their lower-end stuff and relays on the higher end.

Ayre Acoustics these guys are the masters at solid-state analog switching and attenuation they use a discrete resistive latter tapped by solid-state switches and they also use solid-state switches for input selection and they have been doing this for a while. There are some YouTube videos with a good look at the insides. The used pre-amps seem to hold their price so I assume they sound good. I recall their head designer passed away.

I've seen comments here suggesting some of the solid-state chips are every bit as good as relays and it would be nice to move with the times away from mechanical switches and take advantage of zero crossing. The disadvantage of analog solid-state switching is that the input is limited to the range of the rails (not including the M-Dac). I like what my Sure Audio Class-T amp is using for solid-state analog attenuation but the Chord output at max is too high for it. And they must be protected from ESD when the pre-amp is unpowered in case it gets an input. They don't have galvanic isolation like a relay switch. I am wondering if the Muses can be used in 0-17V (virtual ground vs split rail) mode as you would need to run the original B1 pre-amp.
 
  • Like
  • Thank You
Reactions: 2 users
@LBHajdu
Thank you for the interesting study of attenuation methods employed by some high-end manufacturers. It is certainly thought provoking.

I'm also leaning towards solid-state chips and away from mechanical switching. My thinking is: if the Muses is/was good enough for Wayne, it's good enough for me. The challenge is to make it as good as he did in say, the XP-25.
 
The most annoying thing about the Muses chips is that the max absolute input signal voltage is the rail voltage, most solid-state switches give you at least 0.7V above the rails for clamping diodes. So there are two states to consider for protection (powered up and powered down). In the powered-down state (taking the datasheet literally) it must be disconnected from the input when off or shorted. So if one were looking to build a no-relay preamp it's going to be hard. But I have found a solution for an all-solid-state utopia, the unicorn chip is the TMUX7309F input selector (it's a 2x 1:4 mux). It has 0.0015% THD (I know it's a little over 2x the muses) with an input impedance of 40Ω and an output impedance of 10kΩ. So the chip could connect directly to the input without a buffer. Remember the Muses is measured at many MΩ (or GΩ for jfets) output impedance. The Muses would be a dirty, dirty +10% THD distortion pig driving low impedance. But wait it gets better, in the off-state TMUX7309F switches are all open and take up to +-60V!!!! In the on state, it opens if the input goes above its rail so the rail could be a little lower than the Muses to protect it. As a disclaimer I have not actually heard the TMUX7309F or the Muses.

As long as I am griping about the Muses for a solid-state switch it's a current hog at a 2-10mA draw as the DS1882 only needs 2.5-10µA. These seem like pretty small numbers but with the DS1882 you could put an RC filter of 10K
ohm and a few thousand uF and it would only drop 0.1V and be a brick wall for noise.

Here is a video showing the inside of the Ayre Acoustics KX-5 note the lack of any relays, so an all-solid-state reference preamp has been done before, they were also using dual differential Toshiba jfets for a long time:
 
Last edited:
Ayre Acoustics use a discrete resistive latter tapped by solid-state switches ....

Am I right in saying that the KX-R Twenty is there current reference class preamp ?
If yes, are they not using mechanical rotary switches for attenuation ?
What am I missing ?
https://www.monoandstereo.com/?p=1068


Ayre KX-5 Twenty.jpg



Patrick
 
Let's see what the equipment guys do, shall we ?
Jan Didden's AutoRanger is known to be well engineered and has very low distortion.
This is of course necessary if you use it for measuring -120dB distortion or less.

It is essentially a MCU controllered attenuator plus a ultra-low-distortion buffer.
Measurements here show that the Autoranger has noise level at -160dB, and distortion level at -145dB (H2).
https://audioxpress.com/article/fresh-from-the-bench-the-linear-audio-autoranger-mk-ii-interface
Fig. 3

What does it use for the attenuator ?
Resistor ladder with Vishay Dales and Omron R6K low-signal relays.

And what is the distortion specification of the Muses ?
0.0005%, or -106dB.
https://www.nisshinbo-microdevices.co.jp/en/pdf/datasheet/MUSES72320_E.pdf

Of course, you will tell me that you like those distortions.
Subjective argument; fine with me. :geek:


Patrick
 
Last edited:
Has anyone successfully implemented a Muses chip while using the +15V/-15V supply of the IronPre directly?

I have no such luck. It works with an external PSU, though.


Btw...
Asked which regulators are best with the Muses in this thread, Meldano answered:

"The PSU in the manual was only for testing (LM317/337).
Pass Labs use the NJR 78/78

I tested the NJR, LM317/337, LT3045/3094, TPS7A49/TPS7A30

In my main system (Pass clone) I prefer the TPS types.
My college prefer in the same Preamp the NJR."
 
Added in post #1:

Libraries:
Muses72320
Muses72323
Arduino code to use the Muses72323 library. Should also work with Muses72320 after including the appropriate library.

Thank you Davide!


PS: I have not deleted the non-relevant code, i.e. the code that doesn't pertain to the Muses. Therefore, if you want to use the Arduino code, you'll have to do delete unwanted code yourself.
 
Good news; I managed to get the Muses72320 chip working on an Arduino Uno, with and without a library. The best result is with Christoffer Hjalmarsson's Muses library: github.com/qhris/Muses72320

Attenuation goes from -1 to -135dB which is very quiet, but not completely off. Setting attenuation to -447 is basically "mute".

The @alexcp code also worked easily on Arduino, but I can't get it to go very quiet, although Alex confirmed his setup does go very quiet. Maybe there's an error in my code.

I'm also pleased to announce that I managed to make the Muses chip work on the binary PSU supply of the IronPre. That means I don't need an external +-15V supply; just 5V for the digital block of the Muses. The "trick" is to separate the GND's of audio and the digital block. My gratitude goes to Zen Mod for steering my attention in that direction.

I'm now looking for a way to use the ESP32 for controlling the Muses... In its current form, the library doesn't even compile on the ESP32. Does anyone know how to port the library to ESP32?
 
Last edited: