Witty Pi 3 Rev2: Realtime Clock and Power Management for Raspberry Pi

by UUGear

Witty Pi 3 Rev2 adds RTC (DS3231SN) and power management to your Raspberry Pi, and can define complex ON/OFF sequence with simple script.

Witty Pi 3 Rev2 supports all Raspberry Pi models with 40-pin header, including A+, B+, 2B, Zero, Zero W, 3B, 3B+, 3A+ and 4B.


  • Power your Raspberry Pi with higher voltage (up to DC 28V).
  • Gracefully turn on/off Raspberry Pi with single tap on the button.
  • Fully cut the power of Raspberry Pi and all its USB peripherals after the shutdown.
  • Automatically synchronise time between realtime clock and Raspberry Pi.
  • Monitor the temperature around your Pi (thanks to the sensor in RTC chip).
  • Schedule the startup/shutdown of your Raspberry Pi.
  • Write a script to define complex ON/OFF sequence.
  • Shutdown Raspberry Pi when input voltage is lower than the threshold value.
  • Turn on Raspberry Pi when input voltage raise over the threshold value.
  • Long hold the button to force power cut (when the OS loses response).

Witty Pi 3 Rev2 uses DS3231SN as the realtime clock and ATtiny841 as the micro-controller. Thanks to the on-board DC/DC converter (MP4462), Witty Pi 3 Rev 2 can accept input voltage up to 28V.


  • Witty Pi 3 Rev2 board x 1
  • CR2032 battery x 1
  • M2.5 x 11mm Copper Standoff x 4
  • M2.5 screws x 8


  • Dimension: 65mm x 56mm x 19mm
  • Weight: 23g (net weight without battery)
  • Battery: CR2032 (for time and alarms keeping)
  • Power In: DC 5V (via micro USB) or DC 5.3V~26V (via XH2.54 connector, better no higher than 8V without additional heat sink)
  • Output Current: Up to 3A for Raspberry Pi and its peripherals
  • Static Current: ~1mA
  • Operating Temperature: -30℃~80℃ (-22°F~176°F)
  • Storage Temperature: -40℃~85℃ (-40°F~185°F)
  • Humidity: 0~80%RH, no condensing
  • Declaration of conformity


More information about this product can be found in its user manual: http://www.uugear.com/doc/WittyPi3Rev2_UserManual.pdf


The Software for Witty Pi 3 is written with BASH (Unix shell).

The source code is public on Github: https://github.com/uugear/Witty-Pi-3

To install the software, just run these two commands:

pi@raspberrypi:~ $ wget http://www.uugear.com/repo/WittyPi3/install.sh
pi@raspberrypi:~ $ sudo sh install.sh

After the installation is done, reboot your Raspberry Pi.

To launch the Witty Pi utility, just run these commands:

pi@raspberrypi ~ $ cd wittypi
pi@raspberrypi ~/wittypi $ ./wittyPi.sh

More details about software installation and usage could be found on the user manual.


If you have 1-Wire interface enabled and didn’t specify the GPIO pin for 1-Wire, it will use GPIO-4 and that conflict with Witty Pi. Witty Pi uses GPIO-4 to receive shutdown command, if GPIO-4 is also assigned to 1-Wire, Witty Pi’s software will receive shutdown command unexpectedly. If your Raspberry Pi always automatically shutdown itself after installing Witty Pi’s software, that most probably due to the conflict with 1-Wire interface.

When this happens, you most probably can not login your Raspberry Pi because it always shuts itself down before you get the chance to login. To solve this problem, you will need to take out the micro-SD card on your Raspberry Pi, and access its file system via a card reader. You need to edit the config.txt file in the “boot” volume to change the GPIO pin used by 1-Wire interface, or you can disable 1-Wire interface if you don’t need it for now. You need to find something like “dtoverlay=w1-gpio” in the file.

If you want 1-Wire to use GPIO-18, just change “dtoverlay=w1-gpio” to:


If you want to disable 1-Wire interface, just comment it out:


Save the file and eject your micro SD card, and put it back to your Raspberry Pi. Now your Raspberry Pi should be able to boot normally.


Witty Pi 3 Rev2 comes with the latest firmware (V1.03, ID=0x23), which can be downloaded from GitHub


You can now use the web app to create and debug the schedule script for Witty Pi.