0
\$\begingroup\$

I want to have a DFRobot FireBeetle 2 ESP32-E board (connected to a 3.7 V Li-Po battery using the integrated battery circuit) drive a 5 V circuit. So I figured out that I need a step-up boost converter, for example this one: input voltage 2.7 to 5 V DC, output voltage: 5 V DC max 2 A. Also I know that I can't connect the boost converter directly to a digital output pin of the ESP32. So I'm looking for a component that can turn the 5 V circuit on and off. The Internet has taught me that there are transistors, MOSFETs, optocouplers... but I'm not sure which specific component would be best in my scenario.

A bit more context: the ESP32 will drive a 5v Waveshare e-paper display and the ESP32 will be in deep sleep most of the time. During that time it's in deep sleep, the 5 V e-paper circuit should be powered off (the e-paper will still display the image). Once in a while the ESP32 should come out of deep sleep, download a new photo, turn on the e-paper circuit, display the photo and go back to deep sleep.

I tried to visualize all of this in this diagram: enter image description here

The 3.7 V Li-Po battery is connected to the ESP32 battery connector. An output pin is connected to the component I'm looking for. When the output pin is high, it should allow the 5 V boost converter to power the display. The display will be connected to the ESP via SPI (I didn't draw those connections).

\$\endgroup\$
5
  • \$\begingroup\$ "MOSFET, transistor" A MOSFET is a transistor. You need to post a schematic, what do you need to turn on and off and how is it connected to everything else? \$\endgroup\$ Commented May 31, 2023 at 11:49
  • \$\begingroup\$ @winny I tried to capture that in the image. \$\endgroup\$ Commented May 31, 2023 at 12:23
  • \$\begingroup\$ Some step-up converters have an enable pin (EN) which would do all that for you, though while it is common on the chips, it seems to be a lot less common on modules using those chips. Also do you really need 10W (5V x 2A)? \$\endgroup\$ Commented May 31, 2023 at 12:25
  • 1
    \$\begingroup\$ That’s unfortunately a wiring diagram. EEs de facto language all around the world is schematics. \$\endgroup\$ Commented May 31, 2023 at 12:28
  • \$\begingroup\$ @jcaron, no I need 5v 0.5A during refresh of the display. \$\endgroup\$ Commented May 31, 2023 at 13:42

1 Answer 1

1
\$\begingroup\$

The boost chip on your DC-DC module has an ENABLE pin. When disabled it enters sleep mode, drawing 1µA. You could use this to turn it on and off. However it is a boost converter (see schematic on datasheet) so even when the chip is off, input voltage will go to the output through the diode and still power the load. Since 3.7V LiPo minus a diode drop is out of spec for your 5V display, there's no guarantee about what it will do: maybe it will turn itself off and draw low power, or stay stuck in a reset/reboot loop and draw a lot of power.

Because of this diode, it is not possible to turn off the output of a boost converter without an additional switch component.

Your display will be connected to the ESP32 via various IOs. Since it is designed for Raspberry Pi, I'll assume the IOs use 3V3 logic level and are compatible with ESP32.

Note the allowed input voltage range for digital chips' input pins is between 0 and supply voltage... which means, for an unpowered chip, all the digital inputs should be at zero volts. So it's important to never make an ESP32 IO pin send a logic 1 level to the display when it is not powered. If you want minimum power consumption, also watch your pullups: if the display is unpowered but one of the signals has a pullup to 3V3 from ESP32 (which is powered) then current will flow into the inputs of the powered down chip.

For the same reason it is not possible to switch the GND of the display to turn it off: the positive supply would still be present, so if the inputs are 0V relative to ESP32 ground, relative to the display ground they would be at the wrong voltage.

So the only solution is to switch the positive supply of the display. This makes sure ESP32 and the display share a common ground and all signals sit at zero volts when the display is not powered.

Might as well switch the positive supply of the boost converter instead, as that will cut its standby current to near zero when not in use (unless you have other loads that require 5V but it doesn't seem to be the case).

The simplest is to use a PMOS as a switch:

enter image description here

(source).

The bottom FET Q2 is a small signal N-channel MOSFET with 3V3 gate drive. Here's an example. Parts choice is not critical, since it will only conduct the gate current of the other MOSFET. All it needs to do is turn on with 3V3 Vgs and be cheap.

The top P-channel MOSFET Q1 conducts the full load current so its choice is a bit more critical. Assuming the display will use 1.2W when refreshing (from manufacturer website), this corresponds to 0.5A from the battery. Low voltage drop is nice, so you can select a FET with these criteria:

  • P channel
  • RdsON < 0.1 ohms at Vgs=2.5V
  • Sort by price
\$\endgroup\$
10
  • \$\begingroup\$ Awesome info, thanks for taking the time to write it down! I found the following MOSFET's: BS170 (for FET Q2) and IRF4905PbF (for FET Q1). I think they have the specs you mention, so I'll experiment with them. \$\endgroup\$ Commented May 31, 2023 at 13:46
  • \$\begingroup\$ First won't conduct well with 3V3 on the gate, second may not turn on at all. What website are you ordering from? \$\endgroup\$ Commented May 31, 2023 at 13:56
  • \$\begingroup\$ I'm ordering from tinytronics.nl @bobflux \$\endgroup\$ Commented May 31, 2023 at 14:17
  • \$\begingroup\$ No luck, they don't have any. Farnell or Reichelt? \$\endgroup\$ Commented May 31, 2023 at 15:13
  • \$\begingroup\$ would a circuit like this work? dfrobot.com/product-1567.html It can take 3.3v input signals. And it can open/close the 5v circuit (plenty of headroom). \$\endgroup\$ Commented Jun 1, 2023 at 8:45

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.