Measuring Voltage with ADS1115
1. Overview of the ADS1115 ADC
Overview of the ADS1115 ADC
The ADS1115 is a precision, low-power, 16-bit analog-to-digital converter (ADC) with an integrated programmable gain amplifier (PGA) and internal voltage reference. Its delta-sigma architecture provides excellent noise immunity while maintaining high resolution across a wide input voltage range (±6.144V maximum). The device communicates via I²C and offers four single-ended or two differential input channels with a programmable data rate from 8SPS to 860SPS.
Key Specifications and Performance Characteristics
The converter's resolution and accuracy are primarily governed by its effective number of bits (ENOB) and integral nonlinearity (INL). For the ADS1115:
- 16-bit resolution (1 LSB = 187.5μV at ±6.144V FSR)
- INL: ±0.01% of FSR (typ)
- Gain error: ±0.1% (typ) with internal calibration
- Noise performance: 0.15μVRMS at 8SPS, PGA=1
The input stage's common-mode rejection ratio (CMRR) exceeds 90dB at 50Hz, making it suitable for noisy environments. The programmable gain amplifier offers selectable gains of 2/3×, 1×, 2×, 4×, 8×, 16×, allowing optimization for different signal ranges.
Conversion Process and Timing
The ADC employs a switched-capacitor delta-sigma modulator followed by a digital decimation filter. The conversion time (tCONV) depends on the selected data rate:
For continuous conversion mode, the device automatically begins a new conversion immediately after completing the previous one. In single-shot mode, the converter enters a low-power state (0.5μA typical) between conversions.
Input Circuitry and Protection
The analog inputs feature ESD protection diodes rated for 2kV HBM and incorporate a switched-capacitor sampling network with 10pF nominal capacitance. The input impedance appears as:
where Rswitch is typically 500Ω. External RC filters (1kΩ, 0.1μF recommended) help mitigate aliasing and provide additional protection.
Digital Interface and Configuration
The I²C interface supports standard (100kHz), fast (400kHz), and high-speed (3.4MHz) modes. Configuration registers control:
- Input multiplexer selection (AIN0-AIN3 combinations)
- PGA gain setting
- Operating mode (continuous/single-shot)
- Data rate selection
- Comparator functionality (when used)
The 16-bit conversion results are stored in a two's complement format, with positive full-scale represented as 0x7FFF and negative full-scale as 0x8000.
Error Sources and Compensation
Major error contributors include:
where Eoffset can be up to 125μV (calibratable), Egain ≤ 0.15% FSR, and Enoise depends on the selected data rate and gain. The device's internal temperature coefficient is typically 0.5μV/°C for offset and 5ppm/°C for gain.
1.2 Key Features and Specifications
Resolution and Input Range
The ADS1115 is a 16-bit delta-sigma analog-to-digital converter (ADC), providing a resolution of 1 LSB = $$\frac{V_{FSR}}{2^{16} - 1}$$, where VFSR is the full-scale input voltage range. The programmable gain amplifier (PGA) allows adjustable input ranges:
- ±6.144V (PGA gain = 2/3)
- ±4.096V (PGA gain = 1)
- ±2.048V (PGA gain = 2)
- ±1.024V (PGA gain = 4)
- ±0.512V (PGA gain = 8)
- ±0.256V (PGA gain = 16)
The effective voltage resolution at ±6.144V is $$\frac{6.144 \times 2}{65535} \approx 187.5 \mu V$$ per LSB.
Sampling Rate and Noise Performance
The device supports data rates from 8 SPS to 860 SPS, configurable via the DR[2:0] bits in the config register. The signal-to-noise ratio (SNR) is given by:
where N is the ADC resolution (16 bits), fs is the sampling rate, and fBW is the input signal bandwidth. For 860 SPS, the typical noise floor is 0.256 mVRMS (±6.144V range).
Input Multiplexer and Differential Measurements
The integrated multiplexer supports four single-ended or two differential inputs. The common-mode rejection ratio (CMRR) exceeds 90 dB at 50 Hz, critical for rejecting ground loops in industrial environments. The differential input impedance is 6 MΩ (typ) in parallel with 10 pF.
Internal Reference and Offset Calibration
A 2.048V internal reference provides ±0.05% initial accuracy with 10 ppm/°C drift. The offset drift is ±0.3 μV/°C, enabling high-precision DC measurements without external calibration. The integral nonlinearity (INL) is ±2 LSB (max) across all gains.
I²C Interface and Power Efficiency
The 400-kHz I²C interface includes programmable address pins (0x48–0x4B). Power consumption scales with sampling rate:
An auto-shutdown mode reduces standby current to 0.5 μA.
Comparator Mode for Threshold Detection
The window comparator operates in two modes:
- Traditional mode: Triggers when exceeding high/low thresholds
- Window mode: Activates when signals fall inside/outside a voltage window
The ALERT/RDY pin asserts when conversions exceed programmable limits, enabling interrupt-driven designs.
1.3 Typical Applications in Voltage Measurement
High-Precision Sensor Interfaces
The ADS1115's 16-bit resolution and programmable gain amplifier (PGA) make it ideal for interfacing with low-voltage sensors. Strain gauges, thermocouples, and piezoelectric transducers often produce signals in the millivolt range. The PGA allows amplification of these signals before digitization, minimizing quantization errors. For example, a Wheatstone bridge output of ±10 mV can be amplified with a gain of 16 (PGA setting), mapping the signal to nearly full-scale on the ADC.
Battery Monitoring Systems
In lithium-ion battery stacks, cell voltages must be measured with ±1 mV accuracy to ensure safe operation. The ADS1115's differential input mode eliminates ground loop errors when measuring individual cells in series. A voltage divider scales the cell voltage (typically 2.5–4.2 V) to within the ADC's input range (0–4.096 V at PGA=1). The I²C interface enables daisy-chaining multiple ADS1115s for monitoring high-voltage packs.
Industrial Process Control
4–20 mA current loops are ubiquitous in industrial instrumentation. The ADS1115 measures the voltage across a precision shunt resistor (e.g., 250 Ω) to convert the current signal. With a 0.1% tolerance shunt, the system achieves better than 0.5% end-to-end accuracy. The ADC's built-in comparator can trigger alerts when values exceed programmable thresholds, enabling real-time fault detection.
Noise Mitigation Techniques
In electrically noisy environments, the ADS1115's data rate can be reduced to 8 SPS while enabling the low-noise PGA. Combining this with twisted-pair wiring and RC filters (cutoff frequency below Nyquist) improves SNR. For example, a 10 Hz first-order filter with:
reduces high-frequency noise by 20 dB/decade while preserving signal integrity.
Research Instrumentation
Physics experiments often require synchronous multi-channel measurements. The ADS1115's auto-conversion mode allows cycling through four channels at 860 SPS, with timestamps synchronized via an external trigger pin. This is particularly useful in:
- Plasma diagnostics (Langmuir probe IV curves)
- Cryogenic temperature monitoring (multiple diode sensors)
- Pulsed magnetic field measurements (Hall sensor arrays)
# Example: Synchronized 4-channel readout
from ADS1115 import ADS1115
adc = ADS1115(i2c_addr=0x48)
adc.set_conv_mode('continuous')
adc.set_mux('diff_0_1') # Ch0-Ch1
voltage1 = adc.read_voltage()
adc.set_mux('diff_2_3') # Ch2-Ch3
voltage2 = adc.read_voltage()
2. Required Components and Tools
2.1 Required Components and Tools
Core Hardware Components
The ADS1115 is a 16-bit precision analog-to-digital converter (ADC) with an I²C interface, capable of resolving differential or single-ended voltages up to ±6.144 V. To achieve accurate measurements, the following components are essential:
- ADS1115 Module — Typically includes an onboard voltage reference and programmable gain amplifier (PGA). Verify the module supports I²C communication (standard 3.3V or 5V logic levels).
- Microcontroller or SBC — Such as an Arduino, Raspberry Pi, or ESP32, configured for I²C master mode. Ensure compatibility with the ADS1115’s clock frequency (standard mode: 100 kHz; fast mode: 400 kHz).
- Precision Voltage Source — A calibrated power supply or reference (e.g., LM4040) for validating ADC linearity and gain error. For high-accuracy applications, use a source with <0.1% tolerance.
- Low-Noise Cabling — Shielded twisted-pair wires to minimize electromagnetic interference (EMI), especially for differential measurements in noisy environments.
Supporting Circuitry
To mitigate errors and protect the ADC:
- Voltage Dividers — Required if measuring voltages beyond the ADS1115’s ±6.144 V range. Use precision resistors (0.1% tolerance or better) to minimize divider ratio errors. The divider output impedance should be <10 kΩ to avoid settling time issues.
- Low-Pass Filter — A first-order RC filter (e.g., 1 kΩ + 100 nF) at the ADC input pins reduces high-frequency noise. The cutoff frequency (fc) should be:
- I²C Pull-Up Resistors — Typically 2.2–10 kΩ, depending on bus capacitance and speed. Omit if the module includes onboard pull-ups.
Measurement Tools
- Digital Multimeter (DMM) — A 4.5-digit or better meter for cross-validating ADC readings. Ensure its DC voltage accuracy meets or exceeds the ADS1115’s specifications (e.g., ±0.05% of reading).
- Oscilloscope — To diagnose noise, transient responses, or I²C signal integrity issues. Bandwidth should exceed 10× the highest frequency component of interest.
- Thermocouple or IR Thermometer — For monitoring temperature drift in critical applications, as the ADS1115’s offset and gain drift with temperature (0.5 µV/°C typical).
Software Requirements
- I²C Library — Platform-specific drivers (e.g., Arduino’s Wire.h, Linux’s i2c-tools) for configuring the ADS1115’s registers (data rate, gain, comparator mode).
- Data Analysis Tools — Python (NumPy, SciPy) or MATLAB for post-processing ADC data, including noise reduction and linearity correction algorithms.
Wiring the ADS1115 to the Microcontroller
The ADS1115 is a 16-bit analog-to-digital converter (ADC) that communicates via the I²C protocol, making it compatible with most microcontrollers. Proper wiring is critical to ensure accurate voltage measurements and minimize noise interference. Below is a step-by-step guide to connecting the ADS1115 to a microcontroller, such as an Arduino or Raspberry Pi.
Power Supply Connections
The ADS1115 operates at a supply voltage (VDD) between 2.0V and 5.5V. For optimal performance:
- Connect VDD to the microcontroller's 3.3V or 5V output, depending on the ADS1115 variant.
- Ensure a stable ground connection by linking the GND pin of the ADS1115 to the microcontroller's ground.
- If measuring negative voltages, provide a reference voltage (VREF) to the ADS1115's ALERT/RDY pin.
I²C Communication Wiring
The ADS1115 uses I²C for data transfer, requiring two bidirectional lines:
- SCL (Serial Clock) – Connect to the microcontroller's I²C clock line.
- SDA (Serial Data) – Connect to the microcontroller's I²C data line.
For microcontrollers with multiple I²C buses, ensure the correct bus is selected in software. Pull-up resistors (typically 2.2kΩ–10kΩ) are required on both SCL and SDA lines to stabilize communication.
Address Configuration
The ADS1115 supports four I²C addresses (0x48–0x4B) set via the ADDR pin:
- Grounding ADDR sets the address to 0x48.
- Connecting to VDD sets it to 0x49.
- Connecting to SDA sets it to 0x4A.
- Connecting to SCL sets it to 0x4B.
Input Channel Connections
The ADS1115 provides four single-ended or two differential input channels (A0–A3). For voltage measurement:
- Single-ended mode: Connect the positive terminal of the signal source to A0–A3 and the negative terminal to GND.
- Differential mode: Connect the positive signal to A0 and the negative signal to A1 (or A2 and A3).
Noise Reduction Techniques
To minimize noise in high-precision applications:
- Place a 0.1µF ceramic capacitor between VDD and GND close to the ADS1115.
- Use shielded cables for analog inputs in electrically noisy environments.
- Ensure minimal trace length between the ADS1115 and the microcontroller.
Example Wiring Diagram
The following diagram illustrates a typical ADS1115-to-microcontroller connection:
Mathematical Considerations
The ADS1115's resolution is determined by its 16-bit output and input voltage range. The voltage per least significant bit (LSB) is given by:
where VFSR is the full-scale range (e.g., ±6.144V). For a differential measurement between A0 and A1, the output code N relates to the input voltage VIN as:
2.3 Connecting Voltage Sources to the ADS1115
Input Voltage Range and PGA Configuration
The ADS1115 features a programmable gain amplifier (PGA) that allows measurement of differential or single-ended voltages across several ranges: ±6.144V, ±4.096V, ±2.048V, ±1.024V, ±0.512V, and ±0.256V. The PGA setting directly affects both the resolution and input impedance of the ADC. For a given full-scale range FSR, the least significant bit (LSB) size is:
For example, in ±4.096V mode, the LSB resolution becomes 125μV. The input impedance Zin is dominated by the PGA's switched-capacitor architecture, typically presenting 6MΩ in parallel with 10pF when the PGA is enabled.
Differential vs. Single-Ended Measurements
The ADS1115 supports four single-ended or two differential input configurations through channels A0-A3. For differential measurements, the valid common-mode voltage range is constrained by:
must satisfy VSS + 0.3V ≤ VCM ≤ VDD - 0.3V. Exceeding these limits activates internal protection diodes, potentially distorting measurements.
Voltage Divider Networks for High Voltages
When measuring voltages beyond the PGA's maximum range, a precision resistor divider network should be implemented. The divider ratio α must account for both the attenuation factor and the loading effect on the source:
For minimal loading error, select resistors such that R1 + R2 is at least 100× the source impedance. Metal-film resistors with 0.1% tolerance or better are recommended to maintain accuracy across temperature variations.
Input Protection and Filtering
Transient voltage suppression (TVS) diodes should be placed between each input and ground, with a breakdown voltage slightly above the maximum expected input. An RC filter with cutoff frequency:
set to 1/10th of the sampling rate prevents aliasing while maintaining signal integrity. For 860SPS operation, 1kΩ and 100nF components yield a 1.59kHz cutoff.
PCB Layout Considerations
Route analog inputs as symmetric differential pairs with guard rings around high-impedance nodes. Maintain at least 4× trace width spacing between digital and analog signals. Place bypass capacitors (10μF tantalum + 100nF ceramic) within 5mm of the ADS1115's supply pins.
3. Setting the Gain and Input Range
3.1 Setting the Gain and Input Range
The ADS1115 programmable gain amplifier (PGA) allows adjusting the input voltage range by configuring the gain setting (FSR, Full-Scale Range). This is critical for optimizing resolution and avoiding saturation when measuring small or large signals. The gain is set via the Config Register (address 0x01
) bits [11:9]
(PGA[2:0]).
Gain Settings and Corresponding Input Ranges
The ADS1115 supports six gain settings, each defining a specific full-scale input voltage range:
PGA Setting (PGA[2:0]) | Full-Scale Range (FSR) | LSB Size (16-bit) |
---|---|---|
000 |
±6.144 V | 187.5 µV |
001 |
±4.096 V | 125 µV |
010 |
±2.048 V | 62.5 µV |
011 |
±1.024 V | 31.25 µV |
100 |
±0.512 V | 15.625 µV |
101 , 110 , 111 |
±0.256 V | 7.8125 µV |
Mathematical Derivation of LSB Size
The voltage resolution per least significant bit (LSB) is derived from the full-scale range (FSR) and the ADC's 16-bit resolution:
For example, with PGA=010
(±2.048 V):
Practical Considerations
- Signal-to-Noise Ratio (SNR): Higher gain reduces quantization noise but risks clipping if the input exceeds FSR.
- Input Protection: Voltages beyond VDD + 0.3 V or below GND - 0.3 V can damage the ADS1115.
- Differential vs. Single-Ended: Differential measurements use
FSR = ±VREF
, while single-ended modes reference to GND.
Code Example: Configuring Gain in Arduino
#include <Wire.h>
#include <Adafruit_ADS1X15.h>
Adafruit_ADS1115 ads;
void setup() {
ads.begin();
// Set gain to ±1.024V (PGA=011)
ads.setGain(GAIN_ONE);
}
void loop() {
int16_t adc = ads.readADC_SingleEnded(0);
float voltage = ads.computeVolts(adc);
}
For GAIN_TWOTHIRDS (±6.144 V), the ADC output saturates at 32767
for inputs ≥6.144 V. Always select the smallest FSR that accommodates the expected signal.
Configuring the I2C Communication
The ADS1115 communicates via the I2C (Inter-Integrated Circuit) protocol, a synchronous, multi-master, multi-slave serial bus standard. Proper configuration of I2C parameters ensures reliable data transfer between the ADC and the host microcontroller. Key parameters include clock speed, addressing, and pull-up resistor selection.
I2C Clock Speed Configuration
The ADS1115 supports standard-mode (100 kHz) and fast-mode (400 kHz) I2C operations. The clock speed is determined by the host microcontroller's I2C peripheral settings. For most applications, 400 kHz provides sufficient bandwidth while maintaining signal integrity. The rise time (tr) of the SDA and SCL signals must satisfy:
where tlow is the low period of the clock signal. For a 400 kHz clock (tlow = 1.3 µs), the maximum allowable rise time is 390 ns. This constrains the pull-up resistor value Rp:
where Cb is the bus capacitance (typically 100–400 pF) and VIL is the input low voltage threshold (0.3·VDD). For VDD = 3.3 V and Cb = 200 pF, Rp ≤ 2.2 kΩ.
Device Addressing
The ADS1115 features a configurable 7-bit I2C address set by the ADDR pin. The base address is 0x48 (10010002), with three additional options (0x49, 0x4A, 0x4B) selectable via ADDR pin grounding or connection to VDD or SDA/SCL. Multiple ADS1115s can share a bus by assigning unique addresses.
Register Map and Configuration
Communication occurs through four 16-bit registers:
- Conversion Register (0x00) – Stores the latest ADC reading.
- Config Register (0x01) – Controls operational parameters.
- Lo_thresh Register (0x02) – Lower threshold for comparator.
- Hi_thresh Register (0x03) – Upper threshold for comparator.
The Config Register (0x01) is structured as follows:
// ADS1115 Config Register Structure (Big-Endian)
typedef union {
struct {
uint16_t OS :1; // Operational status/single-shot start
uint16_t MUX :3; // Input multiplexer configuration
uint16_t PGA :3; // Programmable gain amplifier setting
uint16_t MODE :1; // Continuous/conversion mode
uint16_t DR :3; // Data rate (samples per second)
uint16_t COMP_MODE:1; // Comparator mode (traditional/window)
uint16_t COMP_POL:1; // Comparator polarity
uint16_t COMP_LAT:1; // Latching comparator
uint16_t COMP_QUE:2; // Comparator queue/disable
};
uint16_t value;
} ADS1115Config;
Initialization Sequence
A typical I2C initialization sequence involves:
- Asserting a start condition.
- Transmitting the device address + write bit (0x90 for address 0x48).
- Writing the Config Register address (0x01).
- Writing the high and low bytes of the Config Register.
- Asserting a stop condition.
For a single-shot conversion at 860 SPS with ±4.096 V range, the Config Register value is 0xC3E3 (11000011111000112).
Error Handling
Common I2C errors include clock stretching timeouts (tTIMEOUT > 25 ms) and arbitration loss. Implement retry logic with exponential backoff for robust operation. The ADS1115's internal oscillator ensures clock stretching does not exceed 8 ms during conversions.
3.3 Sampling Rate and Data Accuracy Considerations
The ADS1115's programmable sampling rate directly influences measurement resolution, noise performance, and power consumption. The device supports data rates from 8 SPS to 860 SPS, configurable through the DR[2:0] bits in the config register. Higher rates reduce integration time, increasing noise but enabling faster signal capture.
Sampling Rate vs. Noise Tradeoff
The effective number of bits (ENOB) follows:
where N is the nominal 16-bit resolution and Vnoise,rms is the input-referred noise. At 860 SPS, broadband noise dominates, reducing ENOB to ~14.5 bits. For low-frequency signals, 8 SPS yields near-full 16-bit resolution by averaging out thermal noise.
Aliasing and Anti-Aliasing Requirements
The Nyquist criterion demands:
where fs is the sampling rate and fmax is the highest frequency component. Without external anti-aliasing filters, input signals above fs/2 will fold back into the measurement bandwidth. A first-order RC filter with cutoff:
is typically sufficient for most applications.
Power Supply Rejection Ratio (PSRR)
The ADS1115's PSRR of 85 dB at DC ensures stable measurements despite supply variations. However, high sampling rates increase current draw, potentially coupling supply noise. The relationship between sampling rate (fs) and supply current (IDD) is:
Bypass capacitors (10μF tantalum + 0.1μF ceramic) within 5mm of the device are critical for maintaining PSRR at maximum data rates.
Differential vs. Single-Ended Mode Tradeoffs
In differential mode, the ADS1115 rejects common-mode noise but halves the input range (±2.048V vs 0-4.096V single-ended). The common-mode rejection ratio (CMRR) degrades by ~10dB at 860 SPS compared to 8 SPS due to reduced settling time.
4. Reading Raw Data from the ADS1115
Reading Raw Data from the ADS1115
The ADS1115 is a 16-bit analog-to-digital converter (ADC) with an I²C interface, capable of resolving small voltage differences with high precision. Reading raw data from the ADS1115 involves configuring its registers, initiating conversions, and interpreting the resulting binary output.
Register Configuration
The ADS1115 operates based on three primary registers: the Config Register, the Conversion Register, and the Threshold Registers. The Config Register (address 0x01) controls the ADC's operational parameters, including:
- Input multiplexer (MUX) — Selects between differential or single-ended input modes.
- Programmable gain amplifier (PGA) — Sets the full-scale range (±6.144V to ±0.256V).
- Data rate (DR) — Configures the sampling speed (8SPS to 860SPS).
- Operating mode — Continuous or single-shot conversion.
A typical Config Register setup for single-shot mode, ±4.096V range, and 128SPS would be:
Reading the Conversion Register
The Conversion Register (address 0x00) stores the most recent ADC result as a 16-bit two's complement value. The raw data can be read via I²C after setting the Config Register's OS bit to initiate a conversion. The ADC signals completion by resetting the OS bit.
The raw output (D) relates to the input voltage (VIN) and PGA gain (G) as:
where VREF is the internal reference voltage (4.096V). For example, a reading of 16384 corresponds to:
Practical Implementation
In embedded systems, the I²C transaction sequence involves:
- Writing to the Config Register to set the conversion parameters.
- Polling the OS bit or waiting for a conversion-ready interrupt.
- Reading the Conversion Register to obtain the raw 16-bit value.
The following Python snippet demonstrates this process using the smbus2 library:
import smbus2
import time
bus = smbus2.SMBus(1)
address = 0x48
# Configure ADS1115 for single-shot mode, A0 input, ±4.096V, 128SPS
config = [0xC3, 0x83]
bus.write_i2c_block_data(address, 0x01, config)
# Wait for conversion (poll OS bit)
while True:
status = bus.read_byte_data(address, 0x01)
if not (status & 0x80):
break
# Read conversion result
raw_data = bus.read_i2c_block_data(address, 0x00, 2)
value = (raw_data[0] << 8) | raw_data[1]
Error Sources and Mitigation
Key error contributors in raw data acquisition include:
- I²C clock stretching — The ADS1115 may delay SCL during conversions. Ensure the host supports clock stretching.
- Voltage reference drift — The internal 4.096V reference has ±0.05% initial accuracy but varies with temperature (10ppm/°C).
- Quantization error — Inherent to all ADCs, minimized by the 16-bit resolution (1LSB = 125μV at ±4.096V range).
4.2 Converting Raw Data to Voltage Values
The ADS1115 outputs a 16-bit signed integer representing the measured voltage, which must be converted into a meaningful physical quantity. The conversion process depends on the programmable gain amplifier (PGA) setting and the reference voltage.
Raw ADC Output Representation
The ADC produces a 16-bit two's complement value, ranging from -32768 to +32767 for differential measurements or 0 to 32767 for single-ended measurements. The relationship between the raw value and input voltage is linear:
where Code is the raw ADC value, and FSR is the full-scale range determined by the PGA gain setting.
Full-Scale Range Calculation
The FSR is defined by the selected PGA gain (PGA_GAIN), which amplifies the input signal before digitization. The available gain settings and corresponding FSR values are:
- ±6.144V (PGA_GAIN = 2/3)
- ±4.096V (PGA_GAIN = 1)
- ±2.048V (PGA_GAIN = 2)
- ±1.024V (PGA_GAIN = 4)
- ±0.512V (PGA_GAIN = 8)
- ±0.256V (PGA_GAIN = 16)
The FSR can be expressed as:
where Vref is the internal reference voltage (typically 4.096V).
Practical Conversion Formula
Combining these relationships, the voltage corresponding to a raw ADC value is:
For single-ended measurements, the formula simplifies since the code is always positive:
For differential measurements, negative values represent inverted polarity:
Implementation Example
Consider a differential measurement with PGA_GAIN = 2 (±2.048V range) and a raw reading of 16384. The corresponding voltage would be:
This calculation accounts for both the scaling introduced by the PGA and the ADC's resolution.
Error Sources and Calibration
Several factors can affect measurement accuracy:
- Gain error: Deviation from the ideal PGA gain, typically ±0.1% to ±0.5%
- Offset error: Non-zero output when input is zero, usually in the range of ±125µV
- Non-linearity: Deviation from perfect linearity, specified as ±0.01% of FSR
For precision applications, a two-point calibration (zero and full-scale) can compensate for these errors. The corrected voltage becomes:
where Offset and Gain_Factor are determined during calibration.
4.3 Handling Negative Voltages and Differential Measurements
The ADS1115 is a 16-bit ADC capable of measuring both single-ended and differential voltages, including negative voltages relative to its reference. Understanding its input configuration and mathematical representation is critical for accurate measurements in bipolar applications.
Differential Input Configuration
The ADS1115 provides four input channels (A0-A3) that can be configured as two differential pairs (A0-A1, A2-A3) or four single-ended inputs. In differential mode, the ADC measures the voltage difference between two pins:
where VIN+ and VIN- are the voltages at the positive and negative input pins respectively. The differential measurement rejects common-mode noise, making it ideal for low-voltage signals in noisy environments.
Negative Voltage Measurement
The ADS1115 can measure negative differential voltages within its programmable gain amplifier (PGA) range. The ADC output is represented in two's complement format, allowing direct interpretation of positive and negative values:
where FS is the full-scale range determined by the PGA setting (e.g., ±6.144V, ±4.096V, etc.), and Code is the signed 16-bit ADC reading. For example, a reading of -16384 with ±4.096V range corresponds to:
Practical Implementation
When measuring bipolar signals, ensure:
- The differential voltage stays within the selected PGA range
- Common-mode voltage remains within 0V to VDD + 0.3V
- Input protection circuits are used for voltages exceeding the supply rails
For floating signal sources, bias one input to mid-supply using a voltage divider to maintain common-mode requirements. The differential measurement will still accurately capture the voltage difference while keeping both inputs within the valid range.
Noise Considerations
Differential measurements provide inherent common-mode rejection, but proper grounding and shielding remain essential. For optimal performance:
- Use twisted-pair wiring for differential signals
- Place bypass capacitors (0.1μF) near the ADS1115 power pins
- Minimize trace lengths between signal sources and ADC inputs
The ADS1115's internal PGA and oversampling capabilities allow resolution down to 188μV at ±6.144V range, making it suitable for precise differential measurements in instrumentation and sensor interfaces.
5. Debugging I2C Communication Problems
5.1 Debugging I2C Communication Problems
When interfacing the ADS1115 with a microcontroller via I2C, communication failures can arise due to electrical, timing, or addressing issues. Diagnosing these problems requires a systematic approach, leveraging both theoretical understanding and practical debugging tools.
Common I2C Failure Modes
The I2C protocol is susceptible to several failure modes, each with distinct symptoms:
- Electrical issues: Improper pull-up resistor values or excessive bus capacitance can distort signal integrity. The I2C specification requires pull-up resistors (Rp) sized according to:
where VDD is the supply voltage. For 3.3V systems, this yields Rp < 966Ω. Excessive capacitance (Cbus) beyond 400pF violates rise time specifications, requiring stronger pull-ups or bus buffers.
- Clock stretching violations: The ADS1115 may stretch SCL during conversions. Microcontrollers must support this feature, typically requiring firmware I2C peripheral configuration.
- Address conflicts: The default ADS1115 address is 0x48 (10010002), but address pin configuration errors lead to non-responsive devices.
Diagnostic Methodology
A structured debugging approach involves:
- Signal inspection: Use an oscilloscope to verify SDA/SCL waveforms. Valid I2C signals should exhibit clean transitions with < 300ns rise/fall times at 100kHz. Ringing or excessive overshoot indicates impedance mismatches.
- Bus probing: Measure DC voltages:
- SDA and SCL should idle at VDD
- Voltage levels below 0.8VDD during transmission suggest weak pull-ups
- Protocol analysis: Capture transactions with a logic analyzer. A valid ADS1115 read sequence should show:
- Start condition (SDA falling while SCL high)
- 7-bit address + R/W bit (0x48 + 1 for read)
- Register pointer byte
- Repeated start with read sequence
Advanced Debugging Techniques
For persistent issues, employ these methods:
- Bus isolation: Temporarily disconnect other I2C devices to rule out conflicts. The ADS1115's 1.5mA sink current can be verified by measuring VOL during transmission:
where IOL is the device's maximum low-level output current (1.5mA per I2C specification).
- Timing verification: Confirm tSU;STA > 4.7μs and tHD;STA > 4.0μs at 100kHz operation. Many microcontroller I2C peripherals require explicit configuration to meet these specs.
- Software checks: Implement I2C bus scanning to verify device presence. For Arduino platforms, this involves:
#include <Wire.h>
void setup() {
Wire.begin();
Serial.begin(9600);
for(uint8_t addr = 8; addr < 120; addr++) {
Wire.beginTransmission(addr);
if(Wire.endTransmission() == 0) {
Serial.print("Device found at 0x");
Serial.println(addr, HEX);
}
}
}
Case Study: Rise Time Violation
A 3.3V system with 1kΩ pull-ups and 300pF bus capacitance exhibits tr = 0.847 × Rp × Cbus = 254ns, within specification. However, adding 150pF of probe capacitance pushes tr to 381ns, potentially causing timeouts. This demonstrates the need for low-capacitance probing or active buffering during debugging.
5.2 Addressing Noise and Signal Integrity Issues
Noise Sources in High-Precision ADC Measurements
When measuring voltage with the ADS1115, noise can arise from multiple sources, including:
- Thermal noise (Johnson-Nyquist noise): Generated by resistive components in the signal path. The RMS noise voltage is given by:
where \( k_B \) is Boltzmann's constant, \( T \) is temperature in Kelvin, \( R \) is resistance, and \( \Delta f \) is the bandwidth.
- Shot noise: Caused by discrete electron flow in semiconductors, proportional to current \( I \):
where \( q \) is the electron charge.
- Power supply noise: Ripple or switching artifacts coupled into the ADC reference voltage.
- Electromagnetic interference (EMI): External RF sources or crosstalk from nearby circuits.
Quantifying Noise in the ADS1115
The ADS1115's effective number of bits (ENOB) is degraded by noise. The signal-to-noise ratio (SNR) for a sinusoidal input is:
where \( N \) is the nominal resolution (16 bits), \( f_s \) is the sampling rate, and \( \Delta f \) is the bandwidth. For DC measurements, low-frequency \( 1/f \) noise dominates.
Mitigation Strategies
Hardware Techniques
- Twisted-pair or shielded cables: Minimize EMI pickup in analog signal paths.
- Low-pass filtering: A simple RC filter with cutoff frequency below the Nyquist rate reduces high-frequency noise:
- Differential measurements: The ADS1115's differential input rejects common-mode noise.
- Grounding and layout: Star grounding and minimizing loop areas reduce ground bounce and coupling.
Software Techniques
- Oversampling and averaging: Increasing the sample rate by \( k \times \) improves resolution by \( \log_2(k)/2 \) bits.
- Digital filtering: Moving average or median filters suppress outliers.
- Drift compensation: Auto-zeroing or periodic reference calibration removes DC offsets.
Case Study: Reducing Noise in a Thermocouple Measurement
In a high-gain thermocouple amplifier (e.g., 1000×) feeding the ADS1115:
- A 10 Hz first-order RC filter (\( R = 1 \text{k}\Omega \), \( C = 16 \mu\text{F} \)) attenuated switching noise from a nearby buck converter by 40 dB.
- Differential routing of the thermocouple wires eliminated 50 Hz mains interference.
- Oversampling at 860 SPS (vs. 8 SPS needed) reduced RMS noise from 150 μV to 18 μV.
5.3 Calibration and Accuracy Improvements
The ADS1115 provides high-resolution analog-to-digital conversion, but its accuracy depends on proper calibration and mitigation of error sources. Systematic errors arise from gain drift, offset voltage, and reference voltage instability, while random errors stem from thermal noise and quantization effects.
Offset and Gain Calibration
The ADC's transfer function is given by:
where G is the gain and Voffset is the input-referred offset. A two-point calibration corrects both parameters:
- Apply zero input voltage and measure the output code C0.
- Apply a known reference voltage Vref and measure Cref.
The calibrated output is then:
Reference Voltage Stability
The internal 2.048V reference has ±0.05% initial accuracy but drifts with temperature (5ppm/°C typical). For precision applications:
- Use an external reference (e.g., LM4040) with lower drift (<1ppm/°C)
- Measure reference temperature and apply correction:
Noise Reduction Techniques
The effective number of bits (ENOB) is reduced by noise. Strategies include:
- Oversampling and decimation: Collect 2N samples to gain N extra bits of resolution
- Analog filtering: A first-order RC filter with cutoff below 1/2 the sampling rate
- Digital filtering: Moving average or median filters to reject outliers
The noise-limited resolution follows:
PCB Layout Considerations
Proper board design minimizes interference:
- Place the ADS1115 close to the signal source
- Use a solid ground plane under the ADC
- Route analog traces away from digital lines
- Bypass the power supply with 10μF tantalum and 0.1μF ceramic capacitors
Dashed lines indicate analog signal paths requiring special care.
6. Using Multiple ADS1115 Modules
6.1 Using Multiple ADS1115 Modules
When high-channel-count voltage measurements are required, multiple ADS1115 modules can be interfaced on the same I²C bus. The ADS1115 supports configurable I²C addresses through its ADDR pin, allowing up to four modules to operate simultaneously on a single bus without address conflicts.
Address Configuration and I²C Bus Topology
The ADS1115 provides four possible I²C addresses determined by the voltage applied to its ADDR pin:
- 0x48 (1001000): ADDR = GND
- 0x49 (1001001): ADDR = VDD
- 0x4A (1001010): ADDR = SDA
- 0x4B (1001011): ADDR = SCL
For optimal signal integrity, keep I²C trace lengths below 30 cm and use 4.7 kΩ pull-up resistors (standard for 3.3V operation). When operating at higher bus speeds (≥ 400 kHz), reduce pull-up values proportionally to maintain sharp signal edges:
where tr is the desired rise time (typically ≤ 300 ns for 400 kHz) and Cbus is the total bus capacitance.
Synchronization Considerations
When sampling correlated signals across multiple ADS1115s, the internal oscillators' 2% frequency tolerance introduces phase drift. For time-coherent measurements:
- Trigger all conversions simultaneously using the ALERT/RDY pin daisy-chain configuration
- Implement a hardware synchronization pulse through a GPIO line connected to all modules' CONVST pins
- For highest precision, use an external 32.768 kHz reference clock fed to all modules' CLK pins
Data Acquisition Timing Analysis
The total throughput for N modules depends on the programmed data rate fs and I²C clock frequency fSCL:
where 34 clock cycles account for the I²C transaction overhead (7-bit address + register pointer + 16-bit data transfer). At the maximum 860 SPS with 400 kHz I²C, four modules achieve an aggregate sampling rate of 3.44 kSPS.
Noise and Crosstalk Mitigation
When stacking multiple ADCs, observe these precautions:
- Separate analog and digital grounds, joining at a single star point
- Place 100 nF ceramic capacitors within 5 mm of each module's VDD pin
- For differential measurements, maintain symmetric trace routing to minimize common-mode interference
- Implement software-based averaging to reduce the effective noise floor by √M for M samples
Advanced Configuration Example
This Python snippet demonstrates synchronized operation of two ADS1115 modules at 3300 SPS, with the second module's input referenced to the first module's output:
import board
import adafruit_ads1x15.ads1115 as ADS
from adafruit_ads1x15.analog_in import AnalogIn
i2c = board.I2C()
ads1 = ADS.ADS1115(i2c, address=0x48) # Reference module
ads2 = ADS.ADS1115(i2c, address=0x49) # Measurement module
# Configure both modules for synchronized sampling
ads1.data_rate = 3300
ads2.data_rate = 3300
ads1.mode = ADS.Mode.CONTINUOUS
ads2.mode = ADS.Mode.CONTINUOUS
# Set up ratiometric measurement
ref_chan = AnalogIn(ads1, ADS.P0)
meas_chan = AnalogIn(ads2, ADS.P0)
def read_ratio():
ref = ref_chan.voltage
meas = meas_chan.voltage
return (meas - ref) / ref
This configuration achieves 0.01% relative accuracy for ratiometric measurements by eliminating power supply drift effects.
6.2 Implementing Continuous Sampling Mode
The ADS1115 supports two sampling modes: single-shot and continuous. In continuous mode, the ADC automatically performs conversions at a fixed interval determined by the data rate setting, eliminating the need for repeated I2C trigger commands. This mode is optimal for real-time monitoring applications where latency must be minimized.
Configuring the Config Register
Continuous mode is enabled by setting the MODE bit (bit 8) in the config register to 0. The conversion process begins immediately after writing to the register. The data rate is controlled by bits 5:7 (DR[2:0]), which select sampling frequencies from 8 SPS to 860 SPS. For example, setting DR[2:0] = 100 (0x04) enables 128 SPS.
where tsample is the sampling period and DR is the selected data rate.
Reading Data in Continuous Mode
The conversion-ready pin (ALERT/RDY) can be configured to signal when new data is available, reducing polling overhead. Alternatively, the OS bit (bit 15) can be monitored to check conversion status. The 16-bit result is stored in the conversion register (address 0x00) and must be read before the next conversion completes to avoid data loss.
Voltage Calculation
The raw ADC value (N) is converted to voltage using the full-scale range (FSR) and gain setting (PGA):
For FSR = 4.096V and PGA = 1, a reading of 0x7FFF corresponds to +4.096V, while 0x8000 represents -4.096V.
Noise and Anti-Aliasing Considerations
At higher data rates, noise increases due to the reduced integration time. The effective number of bits (ENOB) drops as the sampling frequency approaches the ADS1115's bandwidth limit. An anti-aliasing filter with a cutoff frequency below half the sampling rate (Nyquist criterion) is recommended:
For 860 SPS, a first-order RC filter with fc ≤ 430 Hz is typical.
I2C Timing Constraints
Continuous mode imposes strict timing requirements on the I2C bus. At 860 SPS, conversions occur every 1.16 ms, leaving limited time for data retrieval. Use I2C clock stretching or DMA transfers to prevent buffer overflows in microcontroller applications.
// Example: Configuring ADS1115 for continuous mode at 128 SPS (Arduino)
#include <Wire.h>
#define ADS_ADDR 0x48
void setup() {
Wire.begin();
// Set MODE=0, DR=100 (128 SPS), PGA=2 (±2.048V)
Wire.beginTransmission(ADS_ADDR);
Wire.write(0x01); // Config register
Wire.write(0b00000100); // Hi byte: OS=0, MUX=000, PGA=010, MODE=0
Wire.write(0b10000011); // Lo byte: DR=100, COMP_*=000, DISCOMP=11
Wire.endTransmission();
}
int16_t readADC() {
Wire.beginTransmission(ADS_ADDR);
Wire.write(0x00); // Conversion register
Wire.endTransmission();
Wire.requestFrom(ADS_ADDR, 2);
return (Wire.read() << 8) | Wire.read();
}
6.3 Power Consumption Optimization Techniques
Dynamic Sampling Rate Adjustment
The ADS1115's power consumption scales with its sampling rate (fs), following the relationship:
where Cload is the switched capacitance (typically 20 pF), VDD is the supply voltage, and Istatic is the quiescent current (150 µA typical). For battery-powered applications, implement adaptive sampling:
- Event-driven sampling: Trigger conversions only when input signals exceed a threshold window
- Multi-rate sampling: Use high rates during transients and low rates during steady-state conditions
Programmable Gain Amplifier (PGA) Optimization
The integrated PGA contributes significantly to power dissipation. The current consumption IPGA follows:
where G is the gain setting in dB. Key strategies:
- Use the minimum required gain (e.g., ±6.144V range when possible)
- Disable the PGA (gain = 1) for large input signals
- Implement auto-ranging to dynamically adjust gain
Supply Voltage Scaling
The ADS1115's digital power dissipation follows a quadratic relationship with supply voltage:
Practical implementation considerations:
- Operate at 2.0V instead of 3.3V when possible (40% power reduction)
- Use a switched LDO that adjusts voltage based on required performance
- Implement voltage domains with MOSFET switches for unused sections
Advanced Sleep Modes
The ADS1115 supports multiple low-power states with wake-up times critical for power-constrained applications:
Mode | Current | Wake-up Time |
---|---|---|
Active | 150 µA | 0 µs |
Auto-Shutdown | 0.5 µA | 25 µs |
Power-Down | 0.1 µA | 100 µs |
Optimal sleep strategy involves:
- Using the ALERT/RDY pin to wake the host processor only when conversion completes
- Synchronizing sleep cycles with the host microcontroller's deep sleep periods
- Implementing predictive wake-up based on signal periodicity
Input Network Optimization
The external input network can significantly impact power budget:
Design techniques include:
- Using high-impedance sensors (>100 kΩ) when possible
- Implementing switched biasing for resistive sensors
- Adding analog preprocessing to reduce sampling requirements
Clock Management
The internal oscillator current can be reduced by:
- Using the lowest acceptable conversion clock (default is 128 kHz)
- Disabling the clock during idle periods
- Synchronizing conversions with external low-frequency events
7. Official Datasheets and Documentation
7.1 Official Datasheets and Documentation
- ADS1115 data sheet, product information and support | TI.com — The ADS1113, ADS1114, and ADS1115 devices (ADS111x) are precision, low-power, 16-bit, I 2 C-compatible, analog-to-digital converters (ADCs) offered in an ultra-small, leadless, X2QFN-10 package, and a VSSOP-10 package. The ADS111x devices incorporate a low-drift voltage reference and an oscillator.
- PDF ADS111x Ultra-Small, Low-Power, I2C-Compatible, 860-SPS, 16-Bit ADCs ... — The ADS111x devices incorporate a low-drift voltage reference and an oscillator. The ADS1114 and ADS1115 also incorporate a programmable gain amplifier (PGA) and a digital comparator. These features, along with a wide operating supply range, make the ADS111x well suited for power- and space-constrained, sensor measurement applications.
- PDF ADS111x Ultra-Small, Low-Power, I2C-Compatible, 860SPS, 16-Bit ADCs ... — a VSSOP-10 package. The ADS111x devices incorporate a low-drift voltage reference and an oscillator. The ADS1114 and ADS1115 also incorporate a programmable gain amplifier (PGA) and a digital comparator. These features, along with a wide operating supply range, are useful for power- and space-constrained, sensor measurement applications.
- ADS111xL Ultra-Small, Low-Power, 16-Bit, 860-SPS ADCs With PGA ... — The ADS111xL perform conversions at data rates up to 860 samples per second (SPS). The PGA offers input ranges from ±256 mV to ±6.144 V, allowing precise large- and small-signal measurements. The ADS1115L features an input multiplexer (MUX) that allows two differential or four single-ended input measurements. Use the digital comparator in the ADS111xL for under- and overvoltage detection.
- ADS1115: ADS1115 failing with no apparent misuse - TI E2E support forums — The Absolute Maximum Ratings are given in the device datasheet in section 7.1. The most common issue I have seen with single-ended measurement are related to the ground connections of the various input voltages. You should verify that the voltages at the input are correct by measuring each input voltage relative to the ADC ground.
- ADS1113 - ADS1115 by Texas Instruments Datasheet | DigiKey — View ADS1113 - ADS1115 by Texas Instruments datasheet for technical specifications, dimensions and more at DigiKey.
- ADS1115 Datasheet (PDF) - Texas Instruments — Part #: ADS1115. Download. File Size: 1MbKbytes. Page: 50 Pages. Description: ADS111x-Q1 Automotive, Low-Power, I2C-Compatible, 860-SPS, 16-Bit ADCs With Internal ...
- Use ADS1115 to measure voltage - Electrical Engineering Stack Exchange — I would like to measure the voltage of each element of a battery pack made of 18650 cells. I use an ADS1115 to get the voltage. My problem that when I measure an element each time everything is ok...
- PDF Precision measurement circuit with 16 singled-ended channels ... - Velleman — This circuit describes a 16-channel measurement system using four ultra-small ADS1115 devices with an I2C interface. These devices have an accurate internal voltage reference, and can be programmed for multiple input ranges as 15-bit single-ended analog-to-digital converters (ADCs).
- ADS1115 Datasheet (PDF) - Texas Instruments — Part #: ADS1115. Download. File Size: 1MbKbytes. Page: 38 Pages. Description: Ultra-Small, Low-Power, SPI??Compatible, 16-Bit Analog-to-Digital Converter and ...
7.2 Recommended Tutorials and Guides
- Interface ACS712 with ESP32 and ADS1115. - YouTube — How to use ACS712 hall effect current sensor with ESP32 microcontroller and ADS1115 16bit external adc. Components-----ESP32 : htt...
- Voltage less when reading 4-20 mA sensor using ADS1115 and Pi — I did measure the absolute values of the individual voltage at the two ends. One end is at 8.92V and the other end is at 7.28V, I think this is the problem. I read through the ADS1115 manual and I found that the maximum analog voltage is VDD + 0.3V. Could you please share some information on how I can fix this issue.
- PDF ADS111x Ultra-Small, Low-Power, I2 C-Compatible, 860SPS, 16-Bit ADCs ... — The ADS1113, ADS1114, and ADS1115 (ADS111x) are precision, low-power, 16-bit, I2C-compatible, analog-to-digital converters (ADCs) offered in a leadless X2QFN-10, a SOT-10 package, and a VSSOP-10 package. The ADS111x devices incorporate a low-drift voltage reference and an oscillator. The ADS1114 and ADS1115 also
- PDF Emcee Electronics, Inc. 520 Cypress Avenue Venice, Fl 34285 (941) 485 ... — copied in any manner whatsoever without prior written consent of Emcee Electronics, Inc. The document and the material therein may not be used for any purpose other than that intended by Emcee Electronics, Inc. COPYRIGHT 1984 EMCEE ELECTRONICS, INC. REVISION DATE: JANUARY 10, 2019 Page 4 of 20 1.0 SCOPE The Emcee Conductivity Meter is a
- ADS1115-Q1 by Texas Instruments Datasheet | DigiKey - DigiKey Electronics — View ADS1115-Q1 by Texas Instruments datasheet for technical specifications, ... 7.3 Recommended Operating Conditions..... 6. 7.4 Thermal ... • Changed Full-scale input voltage range (FSR) from typical value of ±4.096/PGA V to min value of ±0.256 V and.
- PDF ADS101x Ultra-Small, Low-Power, I2 C-Compatible, 3.3kSPS, 12-Bit ADCs ... — • Battery voltage and current monitoring • Temperature measurement systems • Consumer electronics • Factory automation and process control 3 Description The ADS1013, ADS1014, and ADS1015 (ADS101x) are precision, low-power, 12-bit, I2C-compatible, analog-to-digital converters (ADCs) offered in a
- Practical Troubleshooting of Electronic Circuits for Engineers and ... — This chapter provides a brief overview of tools such as Spanners, Wrenches, Screw Drivers, and Files. Analog multimeter, digital multimeter, oscilloscopes are the basic test and measuring instruments required in troubleshooting to test and measure three basic quantities: current, voltage and resistance.
- Arduino ADS1115 Module Getting Started Tutorial — The document provides an overview of the Arduino ADS1115 16-bit analog to digital converter module. It discusses the module's pinouts, addressing, resolution (15-16 bits), measurement ranges, and includes a simple tutorial to take single-ended voltage measurements from an Arduino using the Adafruit ADS1X15 library. The tutorial shows the module can measure voltages with high precision, with ...
- PDF ADS1015EVM, ADS1115EVM, ADS1015EVM-PDK, ADS1115EVM-PDK User Guide (Rev. B) — 3-4 VDD2 Supply current measurement point for Device 2. Must be connected for operation. 5-6 VDD Supply current measurement point for the other digital devices. Must be connected for operation. 7-8 GND Connects DGND to AGND. Switch S1 selects the supply voltage used to feed JMP1 and the respective VDDs shown in Table 4. S1
- ADS1015/1115EVM(-PDK) Guide Datasheet by Texas Instruments — evaluation modules (EVMs) are evaluation boards for the ADS1115, a 16-bit multi-channel, delta-sigma. analog-to-digital converter (ADC), ... must have electronics training and observe good engineering practice standards. As such, the goods being provided are ... devices can be identified using the EVM schematic located in the EVM User ' s Guide ...
7.3 Community Forums and Support Resources
- Building an ESP8266 with multiple pressure sensors (using ADS1115 and ... — I have both sensors and an ADS1115 on the way. The water pressure sensors are just like these from amazon. ... Home Assistant Community Building an ESP8266 with multiple pressure sensors (using ADS1115 and ESPHome) ESPHome. esphome. JulianDH (Julian Hall) November 7, 2022, 10:07am 41. I have similar pressure sensor and works fine with ADA1115 ...
- voltage - ADS1115 need negative power supply for negative Vin ... — Table 7.3 says the recommended Vin voltage stays above that on the ground pin. The absolute minimum (table 7.1) is GND-0.3, where you might expect the ESD diode to start conducting. You MIGHT get away with a lower input voltage, maybe down to -0.2 V, possibly with reduced accuracy, possibly with full accuracy, as the input measures ...
- 7.3 - How Many/What Sensors & What They Measure — 1999 - 2003 7.3L Power Stroke Diesel - 7.3 - How Many/What Sensors & What They Measure - I've searched using every criteria I can think of so pardon the dumb question. Is there anywhere on the forum that lists how many sensors the 7.3L has and also provides a definition of what they measure (for us neophytes who are...
- ADS1115: Input voltage clarification for ADS111x - TI E2E support forums — Part Number: ADS1115. Hello! I'm confused on the input voltage under section 7.3. Specifically the FSR: The full scale range spec makes me thing the analog inputs can be below ground. I see under V(AINx) spec that each input should not go below ground. Could you please clarify what this FSR +- value means? Thank you!
- Arduino ADS1115 Module Getting Started Tutorial — The document provides an overview of the Arduino ADS1115 16-bit analog to digital converter module. It discusses the module's pinouts, addressing, resolution (15-16 bits), measurement ranges, and includes a simple tutorial to take single-ended voltage measurements from an Arduino using the Adafruit ADS1X15 library. The tutorial shows the module can measure voltages with high precision, with ...
- PDF ADS111x Ultra-Small, Low-Power, I2 C-Compatible, 860SPS, 16-Bit ADCs ... — ADS1115 2 DE (4 SE) PGA, comparator (1) See the Device Comparison Table for details. Voltage Reference Oscillator SCL SDA ADDR ADS1113 AIN1 GND AIN0 VDD I2C Interface 16-Bit AIN2 ADC ADS1114 Oscillator Comparator ALERT/ RDY PGA ADS1115 AIN0 AIN1 AIN3 AIN1 AIN0 SCL MUX SDA ADDR I2C Interface 16-Bit ADC Voltage Reference Oscillator Comparator ...
- Acquisition Time of ADS1115-Q1 - TI E2E support forums — Other Parts Discussed in Thread: ADS1115-Q1 Dear, All The customer has three questions. (1) Please tell me Acquisition Time of ADS1115-Q1. Data rate which they
- ADS1115 4-Channel 16-Bit A/D Converter - ESPHome — Configuration variables:¶ multiplexer (Required): The multiplexer channel of this sensor.Effectively means between which pins you want to measure voltage. gain (Required, float): The gain of this sensor.. sample_rate (Optional, int): The sample rate of this sensor.Defaults to 860.. ads1115_id (Optional, ID): Manually specify the ID of the ADS1115 Hub you want to use this sensor.
- Measure AC signals (Vpp, Vrms, ...) on analog inputs or via ADC1115? — That is nowhere near an enough to get an accurate value for RMS voltage. If you want to measure power, get one of the esp8266 devices that have a dedicated power measurement circuit. The esp8266 is capable of measuring current accurately, but it needs a capable ADC to do it (and sophisticated software that is optimized for that task).
- ADS1115 reference? - adafruit industries — adafruit industries. customer support forums. Skip to content. Search Advanced search. Quick links