Using Pololu Pushbutton Power Switch SV


I use the Pololu Pushbutton Power Switch to run an Arduino project. It allows me to use four AA batteries as a power source. The user pushes a button to power the unit on. After a short amount of time, the Arduino powers itself off via the Power Switch’s “off” input, and it is ready for the next cycle. This makes the batteries last a very long time (almost shelf life), due to the extremely low standby current draw of the Pushbutton Power Switch.

I’m working on another Arduino project, and rather than a pushbutton, I’d like to use a photocell to operate the Power Switch. It needs to turn on when the sun goes down, and back off when the sun comes up. I’ve tried using a photocell to do this, but the Power Switch doesn’t like the “slow” change from bright to dark. It requires a quick pulse to power on/off.

Any ideas on how I can achieve this with a photocell?



Hello, Jim.

You do not need anything nearly as complicated as the Pololu power switch for your project: if it did work, it would turn your Arduino on every other night instead of every night, anyway. If you Google for things like “night light mosfet circuit” you can find a bunch of simple circuits that are probably pretty close to what you want. Here’s one:


Hi Paul:

Thanks for the reply.

I tried the circuit you quoted - it works with a light or LED, but it won’t work properly to gate the supply power to an Arduino, as it “turns on” too slowly.

As the sun goes down, the power to the Arduino slowly starts rising, and the Arduino acts very erratic when it doesn’t have the full supply voltage.

I need something that is completely off, then, at the trigger point, turns completely ON. The circuit you provided the link to is at an “in-between” state for about 10 minutes at dusk and dawn.

Got any other ideas?

Thanks for you help,



There are plenty of more complicated circuits that add “hysteresis”, requiring the light to go a bit past the set point before they turn on. But maybe it would be enough for you to have the Arduino monitor the sensor voltage with an analog input. It could wait in a simple while loop until the light level passes a threshold that you define in the program.