Low Current MOSFET Switch

Hi there,

I'm trying to switch power to a GSM module with a MOSFET because the OFF state of the module is still like 80uA, which I think I can reduce significantly. I'm thinking the best way to do this is with a P-channel MOSFET that I switch directly with an Arduino pin. With a high-side switch like this I need to use a pull-up resistor between the MOSFET gate and the source to prevent floating logic. However, I'm wondering if I can just set the Arduino to be normally HIGH on the gate pin and remove the resistor, because when the Arduino switches to low there will be parasitic current through the pull-up resistor, which would be something like 0.4mA. So I'm thinking to just remove the pull-up resistor and just control the gate logic so that it's never floating.

One thing though: the Arduino will be going to sleep most of the time, but won't the pins stay at the last value before it went to sleep? For example, if the pin was set HIGH, it will remain HIGH with the Arduino sleeping?

Is this a bad idea? Thanks!

androidfanboy: So I'm thinking to just remove the pull-up resistor and just control the gate logic so that it's never floating.

Except while the bootloader is running after power-up.

...current through the pull-up resistor, which would be something like 0.4mA...

Use a bigger resistor.

Would it really matter if the MOSFET "bounced" while the Arduino is booting up? It's probably so fast that it won't make a difference. Can it be an issue?

I think I might just end up using a larger resistor, but I can't go too large because the leakage current of the MOSFET might contribute to a larger voltage drop. Think 100k is acceptable?

androidfanboy:
It’s probably so fast…

Optiboot takes one second.

Think 100k is acceptable?

The math is simple. The inputs include: battery size (as in amp hours), current consumption when active, current consumption when idle, and the ratio of active to idle. Changing the pullup resistor changes the active current consumption. Find a value that does not significantly affect your desired battery life.

I understand the battery life calculations, but I was mainly concerned with voltage drop from the leakage current. There's a limit to how large R can be.

Also, I might be using a raw ATmega chip that I flash without the bootloader, so then I won’t have a 1s delay upon hitting reset.

Hi, Prototype it and find out.

Tom.. :)