Sorry I'm still a bit stuck.

Looking at this again lets assume my voltage data is being encoded into a 3 digit hex humber. (12 bits)? or is it a raw 10 bit non justified ADC result I am seeing?

Lets take 100V as an example $2C3 = 707

The position 3 is never > 7 and varies between 0 and 7 as the voltage rises and falls.

That feels significant, so what is going on?

150V for example = $447 = 1095

Grateful for any other ideas.

Or alternatively how can I prevent anything other than 0-7 appearing in the result?