Close

Boosting the analog input range of the ESP8266

A project log for Mumai

Use the power of your muscles to interact with the world

alvaro-villosladaAlvaro Villoslada 05/17/2016 at 11:150 Comments

When I started testing the EMG circuit of Mumai, I used a regular Arduino to digitize the analog signal that the circuit outputs. The Arduino ADC has a 10 bit resolution and a default input range of 5 V (if not using an external analog reference). That is enough since the maximum output range of the EMG circuit goes from 0 to 5 V, with the signal centered at 2.5 V.

However, when I began the integration of the EMG circuit with the ESP8266 to start working on the Mumai nodes, I stumbled upon one little problem: the maximum amplitude that the ESP8266 ADC can measure is only 1 V and there is no external analog reference to have a greater measurement range. So, with a signal centered at 2.5 V, this limited input range meant that EMG data would be completely unusable.

Fortunately, I had one external ADC from some other project lying around: a LTC2440, with an amazing 24 bit resolution, external analog reference and SPI communication. With just the power connections, three wires for the SPI an a small piece of code to retrieve the data from the bus, the first prototype of a Mumai node was up and running.

Discussions