Cirkit Designer Logo
Cirkit Designer
Your all-in-one circuit design IDE
Home / 
Component Documentation

How to Use ADS1115 16-Bit ADC - 4 Channel : Examples, Pinouts, and Specs

Image of ADS1115 16-Bit ADC - 4 Channel
Cirkit Designer LogoDesign with ADS1115 16-Bit ADC - 4 Channel in Cirkit Designer

Introduction

The ADS1115, manufactured by Adafruit (part #1085), is a high-precision, low-power, 16-bit analog-to-digital converter (ADC) with four multiplexed channels. It is designed for applications requiring precise voltage measurement, such as sensor interfacing, data acquisition systems, and portable instrumentation. With its I2C-compatible interface, the ADS1115 is easily integrated into a wide range of microcontroller-based systems, including those built with Arduino platforms.

Explore Projects Built with ADS1115 16-Bit ADC - 4 Channel

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Arduino UNO WiFi Sensor Data Acquisition and Display System
Image of Senior Design: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
This circuit features an Arduino UNO R4 WiFi microcontroller interfacing with a 4-channel ADC to read from various sensors and display data on an I2C LCD screen. A pushbutton provides user input, and a DC-DC buck converter regulates the power supply from a 12V source.
Cirkit Designer LogoOpen Project in Cirkit Designer
ADS1115 and ACS712 Current Sensor-Based Voltage and Current Monitoring System
Image of Solar_Monitoring_Code: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
This circuit includes an ADS1115 analog-to-digital converter connected to two voltage divider networks formed by resistors. The voltage dividers are used to scale down the input voltages before they are read by the ADS1115 on channels A0 and A1.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi 4B-Based Current Monitoring System with I2C OLED Display
Image of Virtual Energy Monitoring Circuit: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
This circuit features a Raspberry Pi 4B as the central processing unit, interfaced with an Adafruit ADS1115 16-bit I2C ADC for analog-to-digital conversion and a 0.96" OLED display for visual output. The ADS1115 is connected to a current sensor for measuring electrical current, with the sensor's output and burden pins connected to the ADC's analog input channels. The Raspberry Pi communicates with both the ADC and the OLED display over the I2C bus, using its GPIO2 and GPIO3 pins for data (SDA) and clock (SCL) lines, respectively.
Cirkit Designer LogoOpen Project in Cirkit Designer
Raspberry Pi 4B with I2C Sensor Data Acquisition and OLED Display
Image of Task02: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
This circuit features a Raspberry Pi 4B as the central processing unit, interfaced with an Adafruit ADS1115 16-bit ADC for analog-to-digital conversion, a current sensor, and a ZMPT101B voltage sensor for electrical parameter measurement. The Raspberry Pi communicates with the ADC and a 0.96" OLED display via I2C (using GPIO2 and GPIO3 for SDA and SCL lines, respectively), allowing for the monitoring and display of current and voltage readings. The ADC is connected to the current sensor and voltage sensor to digitize the analog signals for processing by the Raspberry Pi.
Cirkit Designer LogoOpen Project in Cirkit Designer

Explore Projects Built with ADS1115 16-Bit ADC - 4 Channel

Use Cirkit Designer to design, explore, and prototype these projects online. Some projects support real-time simulation. Click "Open Project" to start designing instantly!
Image of Senior Design: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
Arduino UNO WiFi Sensor Data Acquisition and Display System
This circuit features an Arduino UNO R4 WiFi microcontroller interfacing with a 4-channel ADC to read from various sensors and display data on an I2C LCD screen. A pushbutton provides user input, and a DC-DC buck converter regulates the power supply from a 12V source.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Solar_Monitoring_Code: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
ADS1115 and ACS712 Current Sensor-Based Voltage and Current Monitoring System
This circuit includes an ADS1115 analog-to-digital converter connected to two voltage divider networks formed by resistors. The voltage dividers are used to scale down the input voltages before they are read by the ADS1115 on channels A0 and A1.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Virtual Energy Monitoring Circuit: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
Raspberry Pi 4B-Based Current Monitoring System with I2C OLED Display
This circuit features a Raspberry Pi 4B as the central processing unit, interfaced with an Adafruit ADS1115 16-bit I2C ADC for analog-to-digital conversion and a 0.96" OLED display for visual output. The ADS1115 is connected to a current sensor for measuring electrical current, with the sensor's output and burden pins connected to the ADC's analog input channels. The Raspberry Pi communicates with both the ADC and the OLED display over the I2C bus, using its GPIO2 and GPIO3 pins for data (SDA) and clock (SCL) lines, respectively.
Cirkit Designer LogoOpen Project in Cirkit Designer
Image of Task02: A project utilizing ADS1115 16-Bit ADC - 4 Channel  in a practical application
Raspberry Pi 4B with I2C Sensor Data Acquisition and OLED Display
This circuit features a Raspberry Pi 4B as the central processing unit, interfaced with an Adafruit ADS1115 16-bit ADC for analog-to-digital conversion, a current sensor, and a ZMPT101B voltage sensor for electrical parameter measurement. The Raspberry Pi communicates with the ADC and a 0.96" OLED display via I2C (using GPIO2 and GPIO3 for SDA and SCL lines, respectively), allowing for the monitoring and display of current and voltage readings. The ADC is connected to the current sensor and voltage sensor to digitize the analog signals for processing by the Raspberry Pi.
Cirkit Designer LogoOpen Project in Cirkit Designer

Technical Specifications

Key Features

  • Resolution: 16-bit
  • Sampling Rate: 8 samples per second (SPS) to 860 SPS
  • Input Voltage Range: ±256 mV to ±6.144 V (selectable gain)
  • Interface: I2C
  • Operating Voltage: 2.0 V to 5.5 V
  • Channels: 4 single-ended or 2 differential inputs
  • Programmable Comparator

Pin Configuration and Descriptions

Pin Number Pin Name Description
1 VDD Power supply (2.0 V to 5.5 V)
2 GND Ground
3 SCL I2C Serial Clock
4 SDA I2C Serial Data
5 ADDR Address select pin
6 ALERT Alert/Ready pin
7 A0 Analog input channel 0
8 A1 Analog input channel 1
9 A2 Analog input channel 2
10 A3 Analog input channel 3

Usage Instructions

Interfacing with Arduino

  1. Connecting the ADS1115 to Arduino:

    • Connect VDD to 5V (or 3.3V if system requires).
    • Connect GND to Arduino GND.
    • Connect SCL to Arduino A5 (or the SCL pin if using a different Arduino model).
    • Connect SDA to Arduino A4 (or the SDA pin if using a different Arduino model).
    • ADDR can be connected to GND, VDD, SDA, or SCL to set the I2C address.
  2. Arduino Library and Initialization:

    • Install the Adafruit ADS1X15 library via the Arduino Library Manager.
    • Include the library in your sketch and create an instance of the ADS1115.
#include <Wire.h>
#include <Adafruit_ADS1015.h>

Adafruit_ADS1115 ads(0x48); // Use default I2C address 0x48

void setup() {
  Serial.begin(9600);
  ads.begin();
}

void loop() {
  int16_t adc0, adc1, adc2, adc3;

  adc0 = ads.readADC_SingleEnded(0);
  adc1 = ads.readADC_SingleEnded(1);
  adc2 = ads.readADC_SingleEnded(2);
  adc3 = ads.readADC_SingleEnded(3);
  Serial.print("AIN0: "); Serial.println(adc0);
  Serial.print("AIN1: "); Serial.println(adc1);
  Serial.print("AIN2: "); Serial.println(adc2);
  Serial.print("AIN3: "); Serial.println(adc3);
  Serial.println(" ");
  
  delay(1000);
}
  1. Best Practices:
    • Ensure that the input voltage does not exceed the selected voltage range.
    • Use bypass capacitors close to the power pins to minimize noise.
    • Keep analog signal paths as short as possible to reduce interference.

Troubleshooting and FAQs

Common Issues

  • No response from the device: Check the wiring, ensure that the I2C address is correct, and that the Arduino is supplying power to the ADS1115.
  • Inaccurate readings: Verify the input voltage range and the gain settings. Ensure that the ADS1115 is properly grounded.

FAQs

Q: Can the ADS1115 be used with both 5V and 3.3V systems? A: Yes, the ADS1115 can operate with a supply voltage from 2.0 V to 5.5 V.

Q: How do I change the I2C address of the ADS1115? A: The I2C address can be changed by connecting the ADDR pin to GND, VDD, SDA, or SCL.

Q: What is the maximum sampling rate of the ADS1115? A: The ADS1115 can sample up to 860 samples per second.

Q: Can the ADS1115 measure negative voltages? A: The ADS1115 can measure negative voltages in differential mode, but not in single-ended mode.

For further assistance, consult the Adafruit ADS1115 datasheet and the Adafruit support forums.