The PiWatcher (Rev. 3) is a very small board that helps you fully shut down or reboot a Raspberry Pi, in case of an incident or simply for power saving purposes. You can even program your PiWatcher to shut down and automatically reboot your Pi a few minutes or hours later.
In essence, the PiWatcher is a programmable watchdog circuit for the Raspberry Pi.
The board must be fitted on the first 6 pins of the Raspberry GPIO header and plugged into a micro USB power supply suitable for the Raspberry Pi in use. Based on instructions it receives through I2C, the PiWatcher can then be instructed to:
The board also features a miniature tact switch to allow manual control.
It has been tested to work with:
Warning: The PiWatcher may not operate correctly if the Raspberry Pi is connected to some power-hungry peripherals such as an SSD hard drive, or with peripherals that have a separate power supply.
The PiWatcher does not seem to currently work on the Raspberry Pi 5, due to bugs in the I2C hardware drivers on the Pi. This will hopefully get fixed soon.
The PiWatcher is designed to solve 2 problems with power management on the Raspberry Pi.
First, if you shut down a Raspberry Pi through software, for example by issuing a shutdown
or halt
command,
your Raspberry Pi will cease to operate, but it does not completely shut down. Instead, it enters a quiescent state
where it continues to eat 30 to 50mA, sometimes more depending on connected peripherals. This is wasteful and can
become an issue in battery powered systems.
The PiWatcher can be programmed to fully cut power to the Raspberry Pi after a certain delay of inactivity. For
example, you can tell the PiWatcher to cut power 10 seconds after a shutdown
command has been issued, giving
the Raspberry Pi enough time to cleanly power off.
The second issue with power management has to do with the ability to recover from situations where a Raspberry Pi becomes stuck in an unrecoverable state. While in theory, this should not happen, a long-running Raspberry Pi can get 'stuck' or 'freeze', due to software or hardware failures or even environmental factors such as heat. In some cases the least unsatisfactory approach to deal with this issue is to simply switch off and on again the Raspberry Pi, enabling the application to continue and/or send out an alert.
The PiWatcher can be programmed to automatically power cycle a Raspberry Pi if it does not receive a 'heartbeat' from the device after a user selectable delay. This can allow some critical applications to continue to operate without human intervention.
Furthermore, the PiWatcher can be programmed to wait for a certain delay, ranging from a few seconds to about 36 hours, before rebooting your Raspberry Pi after a shutdown. The PiWatcher has an LED. When the Raspberry Pi is powered on, the LED is continuously on. When the Raspberry Pi is powered off, the LED blinks slowly.
The PiWatcher also has a useful micro tact-switch:
When your Raspberry Pi is running:
When your Raspberry Pi is shut down, a short press on the button will restart the Raspberry Pi.
The PiWatcher is fully controlled with a command line utility called piwatcher
. It is very simple to use.
For more details, including software download instructions, see our documentation here.
The board comes with an unsoldered 2x3 female pin header. You will need to provide your own Raspberry Pi.
The board does not come with standoffs. If you need some, look for M2.5, 11mm.
Rev 2 of the PiWatcher was released in January 2020 and offers the following enhancements over Rev 1:
Rev 3 is only a minor PCB redesign.
An alternative version of the PiWatcher where the USB connector is replaced with a terminal block is also available on Lectronz.
This product is open-source/open-hardware.
We ship twice a week, typically on Tuesdays and Fridays.