# DAC Volume control

#### marcomariutto

I have an ANK 4.1 DAC, which I want to connect directly to a power amp.

The tube + OPT output stage of this DAC delivers 2 Vrms with 13 Ohm output impedance, which makes it ideal to drive a power amp without the need of a preamplifier.

And now it comes my idea to control the volume: instead of using an attenuator (either resistive or inductive) between the DAC and the power amp, I am thinking about using a variable IV resistor in the conversion stage.
In that way, the output signal amplitude would be linearly proportional to the IV resistor value, and there would be no need to attenuate the output signal.

I haven't thought about this in depth yet, and I haven't done any simulations, so I might be overlooking some details.
Has anyone in this forum done anything similar to this before?

#### Guerilla

What is an IV-resistor and how does it work?
Cheers!

#### analog_sa

I might be overlooking some details.

A typical IV resistor is in the order of 100ohm for 1865, right? So the minimum volume setting should be 60db below this.

The only way i can picture this is by switching fixed value resistors, calculated to follow a logarithmic law and switched with relays as cmos switches are typically not great at very low resistance. Each value will need to be derived from the parallel connection of multiple resistors... not ideal, but certainly doable.

Ooops, only now read fully the first post

Is the IV resistor currently 13ohms? Not gonna work with that

Last edited:

#### marcomariutto

@analog_sa

13 ohms is the output resistance of the DAC after the tube buffer stage and the OPT.

I don't remember what's the IV resistor value l, but it's somewhere in the ~100 ohm range.

Assuming I use a parallel of 6 resistors and switch them on/off individually, I should be able to get 64 combinations of attenuation

#### analog_sa

Ah, ok. 13 ohms is a very unlikely output impedance, but of course not important here.

#### marcomariutto

13 ohms is a very unlikely output impedance
Why? do you even know the circuit I am talking about?

#### Ken Newton

Yes, that might work with your AN DAC, as I recall reading they use a high-ish I/V resistor value, around 300 Ohms. The implementation issue which most springs to mind is the need to locate the pot. close to the DAC chip, just as is the I/V resistor. So, controlling the pot. via a shaft-connected front panel knob would seem to present practical difficulties. Not insurmountable, though.

Last edited:

#### abraxalito

Assuming I use a parallel of 6 resistors and switch them on/off individually, I should be able to get 64 combinations of attenuation

That would be a binary configuration for creating a variable resistor. For instance, you'd use resistors in series with a switch across each, with weights of 1,2,4 etc which would give 0 - 63 units of resistance.

However for a volume control that's not so useful as you want more steps at the low resistance end and fewer at the high end. IOW, you want log law, not linear.

1 user

#### MarcelvdG

I wonder whether the noise would be acceptable. Is it low enough when you play a track consisting of all zeros with the DAC connected straight to the amplifier?

#### analog_sa

Why? do you even know the circuit I am talking about?

AN say 600ohms in the spec.

IV res in your dac appears to be around 300 ohms which makes things a bit easier.

As for the 64 parallel combinations and determining the resistor values, not optimistic many of these will be logarithmically usable, but an hour spent with Excel will tell you more. 20 usable positions may be enough and a micro will of course be needed.

Knowing how important the quality of this particular resistor is and knowing you will never find the exact needed values from either Shinkoh or AN, but would have to improvise with multiple resistors per position, this may not turn out to be a winning solution.

A digital domain VC perhaps? Some people seem to be happy using software VC, although i have never been lucky with those.

An FPGA doing 32 bit attenuation on the i2s stream? Or if this is not an option, then on the spdif?

#### abraxalito

No need for the steep learning curve of an FPGA, a microcontroller (less steep learning but still considerable) with a wide enough multiply instruction and suitable serial ports would do the job.

#### jan.didden

Paid Member
What comes to mind with varying the I/V R is that it will also vary the signal-noise ratio. Lower volume = more noise.

Edit Marcel made a similar point I see.

Jan

#### abraxalito

Why would lower volume equate to more noise? The output (tube) buffer determines the noise at lower settings so yes the SNR goes down as the signal goes down but that's what happens with software VC too. The advantage of varying the I/V resistor is that any DAC noise will be reduced at lower volumes, this might not matter much though if the output buffer is noisy.

#### jan.didden

Paid Member
Yes agree, it's a toss-up in that regard.
It's the S/N of the I/V stage that worsens, I wasn't meaning that the DAC noise worsens.
So the tube buffer is the I/V converter stage?

Jan

#### abraxalito

I take it that its an Iout DAC (AD1865) feeding an I/V resistor then a following buffer. With the I/V resistor being a maximum of 300R the buffer mightn't be required at all though. However the signal level's going to be a bit low given the DAC only swings a couple of mA, ~200mVRMS at max volume.

#### Guerilla

I want to say mightn't much more.
Just taste it!
Cheers!

#### batteryman

Why have 64steps?

Surely 16 would be more than enough and only needs 4 resistors per channel + four 2pole c/o relays and one bcd switch (they don't even have to be equal sized steps)

#### MagicBus

Altering the value of the I/V resistor alters the DC offset across it. This might be fatal for a potentiometer and noisy with a stepped switch. Plus, the analog circuit will have to deal with this.

#### batteryman

Not sure + -1 milliamps will be fatal for any potentiometer!

#### ErikdeBest

For 40dB attenuation the voltage ratio must be 0,01 (1% of the original signal), for 60dB 0,001 (0,1%). The current IV of 100R is 0dB, if you want to go to -40dB, you need to reduce the total resistance to 1R, or 0.1R for -60dB. Not impossible to get, but added resistance from switches, contacts etc, will be unequal and added to it, so that makes it harder.