To anyone who wants to know...
I have a surefire way to drive P-Channel MOSFETs for miscellaneous 5v devices. This driver will support a maximum of 13amps, but the voltage drop is going to be somewhat significant. I'd recommend not using this for more than 3-4 amps of draw but it works with 300 WS2812b LEDs.
You will need the following:
- FQP27P06 (Enhancement type P-MOSFET)
- 2N3904 (NPN-BJT)
- 2x 4.7k Ohm, 1x 330 Ohm resistors
- A Arduino using 3.3v logic
Using this schematic, you can create your own driver.
What inspired me to do this is the 27P06 only draws around 500nA of current when the gate is pulled high. On the other hand, the WS2812b light strip drew about 60mA when idle. Here is how it works.
We use the BJT as not only an inverter so high is on and low is off (which a lot of library's that drive LEDs need), but also to source voltage from the same place that the MOSFET get's its power from. Using a common ground, we can switch the BJT on and off with the Arduino since it is current driven. Mind you, we don't need much. And since we have a common ground, we will also get our digital signal through to the LEDs. (Side note, you will need two BJT's to drive the data signal to the LEDs, which I will post in the next post)
The other 4.7k resistor ties the Arduino's output to ground in case the output floats so we don't waste energy. And finally, the 330 ohm resistor limits current draw to just 7mA. The SAMD21 that is on my Nano only supports a draw of up to 10mA so we want to stay under that.
Note: in the diagram, the load is the light bulb. Replace the light bulb with the device that needs lots of current ![]()
Be sure to check out my link to the 1-Way 5v Signal Driver!
