Skip to content

Hardware_Parts Selection_external_ADC

Carl edited this page Aug 6, 2022 · 4 revisions

2.5 External ADC - ADS1015

2.5.1 The ESP8266 on-board ADC sucks!

The ESP8266 has an internal 10-bit ADC that I originally planned to use for the temperature probe measurements, which led to a number of problems that I spent a considerable amount of time trying to manage through my design

  • Poor ADC measurement accuracy
  • A single analog input pin
  • 0-1 V ADC measurement scale which is substantially below the 3.3V working voltage of the ESP8266 microcontroller

Overcoming these issues took me down time consuming design rabbit-holes to develop solutions:

  1. accuracy - no great solutions but I looked into filtering and oversampling
  2. single analog pin - multiplexing
  3. ADC voltage scale - designed, simulated and tested an opAmp based level shifting subcircuit to shift voltages to the required range

2.5.1 The solution - external I2C 4-channel ADS1015 ADC

I eventually had the epiphany that all of these major issues could be easily sidestepped by dumping the idea of using the esp8266 ADC and moving to a low cost external ADS1015 ADC module. The advantages of the ADS1015 are further discussed in the Design Consideration section.


ADS1015 12-bit I2C ADC Module

Clone this wiki locally