Search code examples
esp8266nodemcuarduino-esp8266

Is this battery compatible with the Node MCU ESP8266?


Is this battery compatible with this NodeMCU ESP8266 ?

More details; it was recommended to use this page to get a battery to power the Node ESP8266 but I'm not sure which models are compatible.


Solution

  • Those are 3.7V batteries, and the ESP8266 requires exactly 3.3V. That mean you need a voltage regulator to step down the voltage.

    But watch out: Most common voltage regulators have a dropout voltage of 1.0V or more (including the AMS1117 regulator on your board). That mean the regulator itself consumes at least 1.0V of the input voltage.

    In our example, 3.7V - 1.0V = 2.7V max output. Yikes! Too low!

    (To be specific, the NodeMCU board you linked to will operate only if 3.3V is provided directly OR a voltage greater than 4.3V is applied to the VIN pin)

    Use a low-dropout regulator

    Thankfully some semiconductor companies make special regulators with ultra-low dropout voltages for cases like this. You can buy an LM3940 (datasheet) from Digi-Key for $1.66, or you could try getting free samples directly from Texas Instruments here.

    That unit has a drop voltage of only 0.2V when the NodeMCU is drawing ~320mA. According to this thread, the ESP8266 draws 320mA at most, and this occurs only during startup.

    If using this method, connect the 3.3V output of your new, fancy regulator to the 3.3V pin on your NodeMCU.

    Alternative to buying another regulator:

    I found this module on Amazon which looks like an original NodeMCU ESP12 board. According to the NodeMCU's schematic, the original boards use a SPX3819 regulator which has a dropout voltage of 0.34V (and would work for you).

    A word of caution: people can easily build and sell "fakes" or "clones" that look similar but are made with cheaper components with different operating characteristics. It is difficult to tell from the picture, but since the module only costs $8.99 it might be worth it to buy and test one anyway.