0
\$\begingroup\$

I have this project in which the life of the battery is imperative, after various designs i came up with this one:As you can see the pushbutton labeled START puts the CH_PD pin on HIGH for a brief moment. As you can see the pushbutton labeled START puts the CH_PD pin on HIGH for a brief moment, the module turns on, the GPIO2 set as an output latchs the module ON util it's time to turn it OFF again. Everything works fine, the thing is that when the module is on off state (CH_PD at LOW), the documentation says that the current drawn should be ~0.5uA which would be a blessing if that would be the case. On its off state this circuit is drawning 2mA from the power supply (that is way too much). Of course i don't expect to see a current drain of 0.5uA, but i do expect not more than 100uA. I fail to see why is this much current is flowing or where. Can you please help me?

More details:

  • I'm using a MCP1700-3302E regulator for a LiPo Battery of 3.7V. I picked this regulator for its extremely low quiescent of 1.6uA (I measured 1.75uA on practice). I recommend this regulator, BTW. extremely low quiescent of ~1.6uA

  • Those SW are actually simple push buttons, i just didn't find 'em on Eagle.

  • Yes, I'm using TXD and RXD as GPIO.
  • When the SET button and the start button are pressed at the same time, the module boots on "SET SSID" mode. it's not really relevant to the question.
  • I placed the Anode of the Green led towards VCC because if i set this led exactly as the RED one, for some reason it remains slightly on. It seems that when the CH_PD pin is in LOW the GPIO0 is on 3.3V, but with very low current capacity.
  • The resistor next to RESET drawns 1.7nA.
  • If i disconnect VCC from the ESP8266, the current drawn is 5uA (More than fine).
  • In its OFF state, the voltage at each pin (without disconnect anything) is:
    • GND 0.000 V
    • GPIO2 1.461 V
    • GPIO0 3.272 V
    • RXD 0.002 V
    • TXD 0.010 V
    • CH_PD 1.465 V
    • RST 3.274 V
    • VCC 3.276 V
  • The Multimeter i'm using is the FLUKE 8060a.
  • Of course, i removed the internal LED of the module.

UPDATE: As @dandavis said the ESP8266-01S doesn't need to pull-up the CH_PD pin. As with my external pull-down resistor of 10K there vas a 1.465 V at CH_PD i calculated that this internal pull-up resistor was about 11.7 K. I looked for it and luckily found it. It was a SMD resistor of 11.9 K. This SMD 11.9 K resistor

After removing it the current drawn at the OFF state is now 1.03 mA (less than half than before). Following this lead i bet there is internal pull-up resistors for GPIO0 and GPIO2. Thanks.

\$\endgroup\$
  • \$\begingroup\$ One thing you should spend some time figuring out is why GPIO2 and CH_PD are sitting at an invalid intermediate voltage. You have 146 uA through R2, but you also may be drawing excessive current in digital input structures seeing that, and most importantly it is unclear why it is happening. So you need to understand that. \$\endgroup\$ – Chris Stratton Feb 20 at 8:16
  • \$\begingroup\$ I Noticed that strange intermediate voltage. if i disconect the resistor between GPIO2 and CH_PD, then the voltage at CHPD would be 1.483 V, while the voltage at GPIO2 would be ~0 V. The max input/output current that can flow through each GPIO pin is 12 mA. I don't think any of my GPIOs is receiving or drawning that much. It is unclear for me why is this happening, i'm hoping someone out there can find the reason. \$\endgroup\$ – Plinskin Mayer Feb 20 at 15:12
  • \$\begingroup\$ since the ESP01S, unlike the ESP01, works when CHPD is floating, it stands to reason there is a weak pullup from VCC to CHPD. Also, check out the off current when you disconnect the GPIOs, 2 mainly, i suspect you've got a bleeder. \$\endgroup\$ – dandavis Feb 20 at 20:59

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.