Question: Dithering is used to add virtual resolution to an oversampling ADC, and for instance [this discussion](https://electronics.stackexchange.com/questions/69748/using-noise-to-increase-effective-resolution-of-adc) involves some of the math involved, and the criteria.

Take for instance an Arduino with 10 bit sampling. The unit has is the ability to set a digital pin to a random value, or a PWM output to a random value. It also has the ability to define a different Vref for ADC conversions. Would a simple circuit that drove the Vref with a filtered random digital signal between 5V and 1 LSB below 5V be a good solution for low-cost dithering?

The thought is that if the Vref were being altered, then the oversampling benefit would be available on all channels, not just one at a time. I can see there will be an over-read of the raw voltage of 0.5 LSB to be corrected for but this is a simple operation.

[![Image of Schematic](https://i.stack.imgur.com/sQ7l9.png)](https://i.stack.imgur.com/sQ7l9.png)

(I would add a schematic but the plugin seems to not work at present)

Answer: 
Altering Vref would be a *multiplicative* scaling, that's not really going to be useful across the range of inputs in walking values across code thresholds a statistical fraction of the time as dithering attempts to do.

For dithering you want *additive* noise, not *multiplicative distortion* that is functionally *gain variation*.

Eg, you want to *add* various fractions of an LSB so that sometimes you hit the higher of the closest two codes and sometimes the lower, and then if you analyze the comparative rate of the two and assume your noise is random, you can over time calculate a more precise intermediate value to a fraction of an LSB.

In contrast, dithering by gain variation would only really work usefully for a small range of inputs, in the upper part of the allowable input range, lower in the input range the effect would be proportinoally reduced.
No, while it could work on DC, the capacitors would shunt the PWM output directly. However Atmel/Microchip has an application note AVR121 which explains use of dither.