Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By hbouzas
#15134 Experimenting with the ESP8266 at one point I came across the need of dealing with analog signals. There are a lot of versions of the module and most of them have GPIO accessibility but not ADC access. Some of the lates versions of the module have ADC though, but I have a few modules in stock that do not have it. And I need ADC handling.

Well, it is totally possible and here is how to do it.

There are 4 basic things that need to be done:

    convert the analog signal into pulse width modulation (PWM)
    read the PWM on any GPIO
    read the PWM duty cycle on the ESP8266
    calibrate the PWM to analog level response

I am using NodeMCU Lua API. For more details and a description of the project visit http://www.horaciobouzas.com