I am working on a project to read analog sensors. I need to read them and convert them to digital values and transmit them to the server and do the processing there. I need a ADC chip that can give out digital voltage or something that I can read through the GPIO of ESP8266 so that I can reject the MCU part in here. I cannot use the ESP's ADC pins as my input ADC voltage is little higher and also I don't want an extra circuit to be added in this. I just wanted to know if some chip like that is available that I can use it for my project. Thanks in advance.


closed as unclear what you're asking by Dmitry Grigoryev, Bence Kaulics, Daniel Grillo, pipe, Sparky256 Aug 3 '16 at 20:02

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • \$\begingroup\$ Maybe you can find an analog sensor with digital level output? Also need some details for the ADC, Voltage levels, speed, number of inputs, bits and so on. An ADC chip is extra circuit? \$\endgroup\$ – Eggi Aug 3 '16 at 9:42
  • 3
    \$\begingroup\$ @harish: Why can you not use a pair of resistors to form a potential divider for the ESP8266 ADC? Note that on this site we don't "thank in advance". You thank afterwards by accepting the best answer and up-voting others. \$\endgroup\$ – Transistor Aug 3 '16 at 9:45
  • \$\begingroup\$ Signal too big then reduce with two resistors then compare two resistors with an external ADC and think again what you are saying. \$\endgroup\$ – Andy aka Aug 3 '16 at 9:46
  • 2
    \$\begingroup\$ 'voltage is a little higher' is not a specification. What voltage range do you want to convert? \$\endgroup\$ – Neil_UK Aug 3 '16 at 10:01
  • 1
    \$\begingroup\$ -What is the ADC resolution? how many digital pins are available ? -Why not building your own ADC ? Can you please edit the question and provide more details ? Here is a link for an 8-bit ADC ti.com/lit/ds/symlink/adc0804-n.pdf \$\endgroup\$ – Elbehery Aug 3 '16 at 12:23

How about an external ADC connecting to the I2C bus? Check this one out, it fits your criteria (plugs into digital pins on the ESP and literally converts analog signals to bytes over I2C) and even has an Arduino library written for it by Adafruit - might work out of the box with ESP but I'm not 100% sure.

  • \$\begingroup\$ I prefer not to use the I2C bus interface, instead I wanted to use the digital pins of the ESP to collect the Data. \$\endgroup\$ – harish Aug 3 '16 at 10:05

There is no need for an external ADC. Simply use a voltage divider on the ADC input. If the ADC input accepts 0 - 2.5 volts, divide the 0-5 volt signal by two, as follows:


simulate this circuit – Schematic created using CircuitLab

By chaning the resistor values, you can get any ratio (<1) you wish.


Not the answer you're looking for? Browse other questions tagged or ask your own question.