# ADS1115 issue for taking values of 4th digit after decimal point

1. ## ADS1115 issue for taking values of 4th digit after decimal point

Hello Everyone,

I am facing an issue with ADS1115 ADC which is 16 bit ADC. I am able to communicate mircocontroller and ADC. I am even able to get the ADC counts. Though counts are fluctuating I have used averaging method to get proper counts.

The PGA is +/- 2.048. I am using channel 0. I am getting below results,

200 200

300 300

1000 1000

1024 1024

1058 1058

To convert ADC count into voltage I am dividing ADC count by 1000. My question is how to get fourth digit after decimal point.

Suppose mV=1058.5 I need converted value should be 0.10585.

As the ADC is 16 bit, can anyone please explain me how to get fourth digit after the decimal point.

•

2. ## Re: ADS1115 issue for taking values of 4th digit after decimal point

Hi,

* The ADC count is an integer value.
* each LSB of the ADC count reperesents 1mV.

But the fourth digit after decimal point represents 0.1mV.
--> Thus the fourth digit will always be zero.

The PGA is +/- 2.048
This makes no sense to me. Please explain.

Klaus

3. ## Re: ADS1115 issue for taking values of 4th digit after decimal point

The reported values make sense if you operate the ADC with +/- 2.048 V full scale range and skip the lower 4 bit of the ADC result.

How to get mV after decimal point is a question about ADC data processing. Take the full 16 bit result!

•

4. ## Re: ADS1115 issue for taking values of 4th digit after decimal point

If you add 10 fluctuating ADC conversions and divide the sum by 10 you have a higher precision value with 0.1 mV resolution.
Over how many samples are you averaging now?
Are you using a "sliding window" average?

5. ## Re: ADS1115 issue for taking values of 4th digit after decimal point

if you are using 16-bit data.
the least voltage you can measure is
Sensitivity (least voltage you can measure) = Voltage range / 2^16;
Sen = 4.096/65535;
Sen = 62.5 uV / bit

means you can read 62.5 uV on change of 1 bit.

- - - Updated - - -

Voltage = (32090/65535) * 4.096
Voltage = 2.0056 Volts

•

6. ## Re: ADS1115 issue for taking values of 4th digit after decimal point

Also note that you really need a *VERY* clean board design, power supply etc. to measure voltages to that level of accuracy. In my experience,you can reliably get 8, maybe up to 10 bits, from an ADC before the noise takes over.
Don't expect to measure more accurately than the circuit will allow.
Susan

7. ## Re: ADS1115 issue for taking values of 4th digit after decimal point

Hi,

With averaging you don't get better accuracy.
You just increase resolution.

you can reliably get 8, maybe up to 10 bits, from an ADC before the noise takes over.
Maybe true for a hobbyist's design.
Read the datasheet where the limit is. If the ADC datasheet tells you that you get noise free results up to 15 bits then be sure that one can achieve this on a PCB.

But for sure you need careful design ... and the ADC can't output less noise than there is at the analog input.
My recommendation: less is more. If you add circuitry, especially OPAMPs, you add noise, drift and distortion.
Only add them where they are unavoidable.

Klaus

--[[ ]]--