Monitoring Your Raspberry Pi’s Power Supply with a Simple Script

Learn how to create a script that monitors and logs the input voltage of your Raspberry Pi, ensuring optimal performance and safety. …


Updated August 20, 2023

Need help with your Raspberry Pi?
Contact Me!

Do you love silly Raspberry Pi Projects?
Check out my this YouTube Channel!


Learn how to create a script that monitors and logs the input voltage of your Raspberry Pi, ensuring optimal performance and safety.

Step 1: Enable the VCGENCMD Interface

First, make sure the VCGENCMD interface is enabled on your Raspberry Pi. This interface allows you to access hardware-related information from the command line. To enable it, follow these steps:

  1. Open the terminal and run sudo raspi-config
  2. Navigate to “Interfacing Options” and select “VCGENCMD”
  3. Enable VCGENCMD and reboot your Pi for the changes to take effect

Step 2: Create a Python Script

Now, we’ll create a simple Python script that reads the input voltage every few seconds and logs it to a file.

  1. Open a text editor and create a new file named voltage_monitor.py
  2. Add the following code:
import time
import os

logfile = "/home/pi/voltage.log" # Change this to your desired log location
interval = 5 # Logging interval in seconds

while True:
    voltage = os.popen("vcgencmd measure_volts core").readline().replace("volt=","").rstrip()
    with open(logfile, "a") as f:
        f.write("{}: {}\n".format(time.strftime("%Y-%m-%d %H:%M:%S"), voltage))
    time.sleep(interval)
  1. Customize the logfile and interval variables as needed
  2. Save and exit the text editor

Step 3: Run the Script

Make the script executable by running chmod +x voltage_monitor.py in the terminal. Then, run it with ./voltage_monitor.py. The input voltage will now be logged to your specified file every few seconds.

To check the input voltage at any time, open the logfile with a text editor and look for the most recent entry. If you notice any significant fluctuations or drops, consider using a higher quality power supply or adding additional capacitance to your Pi’s power rail.

Remember, monitoring your Raspberry Pi’s input voltage is an important step towards ensuring optimal performance and preventing damage due to power fluctuations. With this simple Python script, you can easily keep track of your Pi’s voltage levels and make adjustments as needed.