# Biasing a low AC voltage for input to an ADS1115 ADC

I have an AC signal from a position sensor that changes between -200 mV and 200 mV, something like 400mV peak-to-peak.

I have ordered an ADS1115 breadboard and I use an STM32 microcontroller.

I'm not sure from the ADS1115 datasheet that I need to bias the signal or if it can accept a negative voltage.

If it does not accept negative voltages, should I bias the signal with a voltage divider and some series capacitor? How can I bias only 200-250 mV?

Spec of position sensor:

• What's the source impedance of your position sensor?
– jonk
Commented Sep 29, 2022 at 5:35
• @jonk I cant find it in datasheet, this it what I found :Transimpedance Gain 100 kV/A (PDP90A 2D Lateral Effect Position Sensor) Commented Sep 29, 2022 at 6:08
• That statement suggests to me that there's an opamp used as a transimpedance amplifier stage and that they are probably using a 100 k Ohm resistor in the feedback path to convert sensor current into sensor voltage. Which suggests that the sensor current is $\pm2\:\mu\text{A}$. That also suggests further that the output cannot drive more than about, say, $5\:\text{mA}$ to be safer. (Many can do 2, 3, or 4 times that much. But better to be safer than sorry.) Do you see any spec about its output compliance current?
– jonk
Commented Sep 29, 2022 at 6:11
• Because you need a way to shift it up (add a voltage) so that it is in range. The sensor output is very likely an opamp with very limited output current compliance. You could call the seller and find out. But without solid information otherwise, I'd assume very limited current compliance. You can also test it, I suppose. Apply a light source and read the output with a meter. Then load it down and read again. And load it more and read once more. From a few documented readings you can determine your own answer. In fact, this is good practice -- keeping a log book for such questions.
– jonk
Commented Sep 29, 2022 at 6:53
• Your ADC is 16 bit, but one bit is basically noise (as I've cursorily read, anyway.) But that's over its entire range, which I take is 5 V. (Tell me if that's wrong, as I've not seen a spec for your breadboard.) The divider will cut the signal in half, too. So you are looking at about $\pm 100\:\text{mV}$. Or a span of $200\:\text{mV}$. If you take the base-2 logarithm of 5 V divided by 0.2 V, you'll see that it is close to 5. And that comes off of the top of the 15 good bits you have. So 10 left over. Oh, well. If you apply some gain, though? Then much better.
– jonk
Commented Sep 29, 2022 at 7:09

The 16-bit w/PGA ADC ADS1115 is not ideal here because the internal reference voltage is inaccessible.

Input voltage must be kept in the range between the power supply rails at all times. You could do something like this using differential inputs:

simulate this circuit – Schematic created using CircuitLab

Differential voltage is nominally zero with 0V from the sensor and is +/-1.024V for +/-4V from the sensor. You can set the PGA to get an appropriate gain for your signal.

• however if the voltage that the sensor output is between -300mV to 300mV? the position doesn't change so much (something like 3mm that translate to +/- 300mV) Commented Sep 29, 2022 at 9:10
• At the highest PGA gain F.S. Is +/-256mV which represents about +/-1V at the sensor. So you get less than full resolution with this simple circuit. But still quite a bit of resolution- 32uV LSB approximately. Commented Sep 29, 2022 at 9:18

Just use a voltage divider from the sensor output to Vdd, and it will shift the signal to 1/2 Vdd, although half the amplitude.

simulate this circuit – Schematic created using CircuitLab

As I can see, the sensor has dual power supplies.
NB: I have seen some ADS1115 boards with 2.5V reference onboard.