I'm trying to make an UPS for my Raspberry Pi 3.

Based on




I ended up with this: enter image description here

In theory, it should provide 5v (output of the MT3608) when powered either from USB wall charger or from 18650 battery (through the TP4056). The Mosfet will do the switching between mains and battery.

When I power my RPi, it boots but then it enters on a boot-loop which is reported to be caused by low voltage (see: https://elinux.org/R-Pi_Troubleshooting#Raspberry_Pi_shuts_down_.28or_restarts.29_soon_after_booting_up).

I meassured the output voltage and it is stable when the RPi is off as well as when it is on (4.9v ~ 5.1v). The boot up sequence tipically consumes about 150-300mA on a Raspberry Pi B+ I use to prototype.

When the same wall charger is connected directly to the microUSB port on the RPi, everything works flawlessly.

18650 battery is a Samsung INR 18650 25R.

What could be causing the current drop? I'm considering replacing the MT3608 with an USB DC-DC Booster 0.9v-5v (https://www.ebay.com/itm/132487410767) but running out of ideas...

  • \$\begingroup\$ possibly that DC-DC converter cannot supply enough current does it work if you connect it directly to the output terminals of the TP4056 board. \$\endgroup\$ Jun 24, 2019 at 3:46
  • \$\begingroup\$ Did not try that, mainly because I wouldn't be able to provide 5v out of the 18650 so I need to boost that up \$\endgroup\$
    – vazquezjm
    Jun 24, 2019 at 11:26
  • 1
    \$\begingroup\$ I mean the boost converter, replace the mosfet with a wire to the TPS \$\endgroup\$ Jun 25, 2019 at 10:01
  • \$\begingroup\$ Oh, yes. Yesterday tried that and worked flawlessly. Looks like the problem is the mosfet...Thx \$\endgroup\$
    – vazquezjm
    Jun 25, 2019 at 11:48

1 Answer 1


You are using IRFP9240. This is not suitable MOSFET for this task. This MOSFET requires higher Vgs than you are providing. You are going to have Vgs around 3.6-4.2V. IRFP9240 requires around 10V to fully open (or at least 5V to be usably open).
Try different MOSFET with much lower Vgs(th). For example something like PMV48XP (I just randomly googled, you can find plenty of suitable MOSFETs).

  • \$\begingroup\$ I removed the switching circuit (TP4056 to MT3608) and RPi boots! Now I need to find a suitable Mosfet as you suggested \$\endgroup\$
    – vazquezjm
    Jun 24, 2019 at 22:29
  • \$\begingroup\$ Do you think a Vgs of 10v will do the job? \$\endgroup\$
    – vazquezjm
    Jun 24, 2019 at 22:36
  • \$\begingroup\$ @vazquezjm you do not have 10V in your circuit. So you have to find mosfet with lower Vgs(the). \$\endgroup\$ Jun 25, 2019 at 5:18
  • \$\begingroup\$ It looks like IRF4905 will do the work: pdf1.alldatasheet.com/datasheet-pdf/view/68156/IRF/IRF4905.html \$\endgroup\$
    – vazquezjm
    Jun 25, 2019 at 16:06
  • \$\begingroup\$ @vazquezjm no, it has the same Vgs(th). Why are you looking for huge bulky power mosfet? I would recommend you to search for a mosfet in SOT-23 package (or the like). Small mosfets tend to have smaller Vgs(th). \$\endgroup\$ Jun 25, 2019 at 18:53

Your Answer

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

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