← All parts
ADS1115 16-bit ADC
ADS1115
Texas Instrumentsinterface io display
The ADS1115 is a low-power, 16-bit analog-to-digital converter with an I2C interface. It features a programmable gain amplifier, a multiplexer for up to four single-ended or two differential inputs, and a digital comparator for alert functions.
In stock
Specifications
12- Resolution
- 16 Bits
- Operating Voltage
- 2.0 to 5.5 V
- Supply Current
- 150 µA
- Max Sample Rate
- 860 SPS
- Min Sample Rate
- 8 SPS
- Interface
- I2C
- Operating Temperature Range
- -40 to +125 °C
- Input Channels
- 4 single-ended or 2 differential
- Package
- X2QFN-10, SOT-10, VSSOP-10
- Full Scale Input Voltage Range
- ±0.256 to ±6.144 V
- Programmable Gain Amplifier
- Yes
- Comparator
- Yes
Pinout
10| Pin | Name | Functions | Notes |
|---|---|---|---|
| 1 | ADDR | GPIO | I2C target address select |
| 2 | ALERT/RDY | GPIO | Comparator output or conversion ready. Open-drain output. |
| 3 | GND | GND | Ground |
| 4 | AIN0 | ADC | Analog input 0 |
| 5 | AIN1 | ADC | Analog input 1 |
| 6 | AIN2 | ADC | Analog input 2 |
| 7 | AIN3 | ADC | Analog input 3 |
| 8 | VDD | POWER | Power supply |
| 9 | SDA | I2C | Serial data input and output |
| 10 | SCL | I2C | Serial clock input |
Interactive pinout
Highlight:
ADS1115
Click a pin to copy its name · tap a tag above to spotlight a bus.
Starter code
Community starter examples — minimal, unofficial, and provided to get you wiring fast. Verify against the manufacturer datasheet before relying on them.
Arduino (C++)
Arduino library: Adafruit ADS1X15
arduino
// ADS1115 16-bit 4-channel ADC (I2C) — community starter example
#include <Adafruit_ADS1X15.h>
Adafruit_ADS1115 ads;
void setup() {
Serial.begin(115200);
if (!ads.begin()) { Serial.println("ADS1115 not found"); while (1) delay(10); }
}
void loop() {
int16_t raw = ads.readADC_SingleEnded(0); // channel A0
Serial.print("A0="); Serial.print(raw);
Serial.print(" V="); Serial.println(ads.computeVolts(raw), 4);
delay(500);
}MicroPython
MicroPython library: ads1x15 (robert-hh/ads1x15)
python
# ADS1115 (ESP32) — community starter example
# lib: robert-hh/ads1x15 (ads1x15.py on the board)
from machine import Pin, I2C
from ads1x15 import ADS1115
import time
i2c = I2C(0, scl=Pin(22), sda=Pin(21))
adc = ADS1115(i2c, address=0x48, gain=1)
while True:
print(adc.read(0)) # channel 0 raw
time.sleep_ms(500)Wiring
| Pin | Arduino Uno R3 | ESP32 DevKitC (WROOM-32) | Notes |
|---|---|---|---|
| VDD | +5V | 3V3 | 2.0-5.5 V |
| GND | GND | GND | |
| SCL | A5/SCL | GPIO22 | I2C clock |
| SDA | A4/SDA | GPIO21 | I2C data |
| AIN0..AIN3 | - | - | Analog inputs (single-ended or differential) |
Typical uses
- Precise 16-bit analog inputs over I2C
- Adding ADC channels to the ESP32/Pi