1
\$\begingroup\$

I am building a Li-ion powered circuit to power a remote night light.

The mA values were measured with a cheap multimeter, I guess at least the deep sleep current of the ESP32 is actually lower.

The circuit is owered by a 18650 battery (2.5 - 4.2 V, 2500 mAh).

A ESP32 WROOM is running ULP code consuming low energy and checking a 433 MHz signal. If the right signal is received it wakes up and lights an LED strip (16 LEDS - WS2812B) for a given time and goes to sleep again.

The main issue I am facing is that the WS2812B while showing the color "black" consumes around 5 mA idle current. I want to reduce the current while in deep-sleep e.g. by switching the GND of the LEDs off by an N-channel MOSFET, but I am not sure if this works or which one to choose with which resistors. It should cut the power to the LEDs and just switch power on when ESP32 pin goes high.

Unfortunately the 433 MHz receiver needs 5 V and the MT3608 step-up converter consumes around 2 mA itself. Below 5 V it receives only noise and has a very bad range. I feel like I can't optimize here.

I would already be happy to achieve a total idle/sleep current of around 5 mA.

Any hints are appreciated.

enter image description here

\$\endgroup\$
2
  • 1
    \$\begingroup\$ It is usually a bad idea to switch the GND of any load when there are also other connections, i.e. the data pin. The risk is that depending on data pin state there might be large currents flowing in the data pin if you just disconnect the GND. \$\endgroup\$
    – Justme
    Commented Feb 28, 2022 at 17:48
  • \$\begingroup\$ Bah! I tested a string of 60 full-size LEDs, they use 68 mA when off. This surprising (to me) but it's a known thing. You clearly need a power switch. It feels bad but it's not impossible to use a low-side switch, just be sure to put the data output as high impedance first (and include a 1k resistor just in case. \$\endgroup\$
    – tomnexus
    Commented Feb 28, 2022 at 21:14

1 Answer 1

1
\$\begingroup\$

Well, the MX-05V has a single digital output, which goes high when the 433MHz signal is detected. That must be powered up, from 5V, in order to receive a signal at any time. It claims quiescent current: 4mA. So we are assuming that this must be on at all times and drawing 4mA, although you measure 2.8mA. Just be aware, at different temperatures and elevations it could draw up to 4mA.

The MT3608 boost regulator reads Quiescent Current (PWM) 1.6mA minimum to 2.2mA maximum. Always plan for the maximum, so 2.2mA, exactly as you measure.

The WS2812B "intelligent LED" datasheet is helpful, but omits many parameters, such as idle (quiescent) current consumption. So there is no way to tell if it really is supposed to be drawing 5mA when off; possibly!

Things you can try:

  • Add a PMOS (P-channel, enhancement-mode MOSFET (metal-oxide semiconductor field-effect-transistor) as a high-side switch to the WS2812B. Must get one with a low Vgs value (ideally less than 2 Volts) and it must be able to pass the current needed for all of the LED(s). Pull the gate to +5V with a 100k resistor (default state, off), and drive it low with one of the ESP32 outputs to "turn on the LEDs." Also, make sure the LED data pin is low before turning them off - otherwise this could damage them (data pin high while Vcc is off.)
  • Only switch the receiver on for five seconds of every minute, which would extend battery life but also mean the transmitter may have to be transmitting for an entire minute before being "heard."
  • Add a small solar panel and trickle-charger to the cell, to help recharge it during day hours.
  • Use two battery cells in series, change the boost converter to a buck converter, and run everything off the 5V. This has the advantage of using less than half the current from the cells, which should more than double the useful time (provided you choose an equally-well-performing buck converter.)
\$\endgroup\$
7
  • \$\begingroup\$ I'll try that with the PMOS. I already planned to only listen to the receiver half the time, but like 3 seconds, 3 seconds mute, 3 seconds. Solar panel is not an option because it is indoor. I already planned to replace the battery with a 10.000 mAh one. Thank you, will come back, if it works with the PMOS. \$\endgroup\$
    – codeleger
    Commented Feb 28, 2022 at 20:23
  • \$\begingroup\$ How long is the "bootup" time of this radio unit? listening for three seconds seems wasteful - you only need to listen for a millisecond out of every three seconds if you can realistically determine that there's a signal received that quickly \$\endgroup\$ Commented Feb 28, 2022 at 20:47
  • \$\begingroup\$ I can't find a quality datasheet, but for a other receiver I found something like 100ms. What would be Our suggestion how to turn off the receiver ? \$\endgroup\$
    – codeleger
    Commented Mar 1, 2022 at 5:29
  • \$\begingroup\$ @rdtsc I am picking up some IRFD9014 later today or tomorrow, hope the do the job. Struggle a little to understand the MOSFET Datasheet. Any advice for wiring and resistors to use ? I am now doing some research an looking some videos to get my head around it. \$\endgroup\$
    – codeleger
    Commented Mar 1, 2022 at 6:44
  • \$\begingroup\$ Careful, look at the IRFD9014 Datasheet page two, \$V_{GS(th)}\$ says that for -4V on the gate, this device is guaranteed to conduct 250µA on the drain pin. So in other words, -4V on the gate and it's just barely starting to turn on. To get this one to really turn on hard (which is the goal for using MOSFETs as switches), the gate would probably need -10V. Try searching for "logic-level PMOS" or similar. \$\endgroup\$
    – rdtsc
    Commented Mar 1, 2022 at 13:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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