# Can I use a P-channel MOSFET to switch a lower voltage?

I have a BLE module. The reset is pulled up to 1.8V. The IOVDD is 3.3V. I need to use a programmer that can reset the module but the programmer is 3.3V. Is it ok to use the circuit below to make the programmer reset the module? (The MOSFET has Rds 0.15@Vgs=2.5V, Vgs(th)=0.85V)

• Write down your expectation and simulate. Commented Jun 7, 2023 at 9:20
• Looks fine to me. Remember to choose a MOSFET so that Vgs=-1.8V is enough to turn it on (as much as you need it to be turned on). The Vgs when NRST goes low is -1.8V and not -3.3V. Commented Jun 7, 2023 at 9:23
• When NRST=0V, the PMOS will pull down the voltage close to VTH i.e., 0.85V. It will not go to 0V. To get the exact voltage, you need to simulate the condition. With this voltage, you then need to check if the BLE module can be reset properly. I would not take this risk, I would use an NMOS instead and invert the gate control.
– sai
Commented Jun 7, 2023 at 9:51
• @sai , good catch, reset VIL is 0.3*DVDD (0.3*1.8=0.54 max). Could you provide the NMOS alternative? Commented Jun 7, 2023 at 10:57

When NRST=0V, the PMOS will pull down the voltage close to VTH i.e., 0.85V. It will not go to 0V. To get the exact voltage, you need to simulate the condition. With this voltage, you then need to check if the BLE module can be reset properly. Since you confirmed that VILmax is 0.54V max, it won't work as you rightly concluded.

Edit: Here's a possible solution using NMOS. However, do look into the diode solution proposed by Spehro; that seems to be much easier to implement.

• Do you recommend to use open-drain logic gate, instead? Commented Jun 7, 2023 at 12:07
• I updated my answer showing the NMOS option.
– sai
Commented Jun 7, 2023 at 15:38
• 74LVC1G07 will do just that. Thanks for suggestion. Commented Jun 7, 2023 at 19:55
• Yes, sure, you can use that. BTW, is NRST in your diagram an open-drain output?
– sai
Commented Jun 8, 2023 at 1:26
• Then, there is a possibility to connect that to the BLE's reset without any circuitry in-between. Probably the only point to check would be whether the J-Link loads the reset pin when it's supply is absent.
– sai
Commented Jun 16, 2023 at 1:32

You'd be better off to use a Schottky diode. For example, at 1mA a 1N5819 would pull the /RESET input down to the NRST voltage + less than 200mV.

The p-channel MOSFET will pull it down to something like Vgs(th). Vgs(th) is typically specified at a very low current such as 250uA so if R? draws more than 250uA it won't even get that low.

Incidentally, the classic solution (which potentially has less voltage drop than a diode) is to use a single "1.8V" n-channel MOSFET with gate tied to +1.8, source to the module and drain to the 0/3.3V signal.