PiDoctor Raspberry Pi System Health Monitor & Diagnostics Utility
To monitor your Raspberry Pi system’s health, you can use PiCockpit’s app PiDoctor. PiDoctor will also allow you to learn many details about your Raspberry Pi, including where it was manufactured, how much RAM it has, and so on.
Note: PiDoctor used to be stand-alone, but is now part of picockpit-client. The stand-alone version of PiDoctor (PiDoctor OS) has been discontinued, in favor of the version included in picockpit-client which has live diagnostics capabilities, and increases the number of available diagnostic modules. If you still want the historical version, scroll down to the bottom of this page and look at the FAQ.Raspi Berry’s Historical development explanation
Using PiDoctor to diagnose your Raspberry Pi
How to run all Raspberry Pi health tests
PiDoctor, as the other PiCockpit apps is included for free for up to 5 Raspberry Pis.
- Log into PiCockpit (sign up if you do not have an account yet, it is free)
- Open the My Raspberry Pis page to access your Raspberry Pi overview
- Click on the Raspberry Pi you want to diagnose
4. Click on PiDoctor
You will see the following screen:
5. Click on Run all Tests
Basic information (RAM and CPU) will now be displayed:
You can now scroll down through the page to see the test results for the individual modules, or click on any of the quick access buttons to jump to the system test module you’re interested in:
How to run an individual Raspberry Pi health check module
Each module has a button at the bottom, which allows you to run just the tests of this module. For example, have a look at the USB test:
There also is an “auto reload” toggle switch in the upper corner, which allows you to have the test run automatically each 10 seconds. This is useful for continuous monitoring of changes.
Available system health test modules
The WLAN module allows you to scan the WiFi networks in your Raspberry Pi’s neighbourhood, determine which one it is linked to, and the strength. By clicking on details, you’ll be able to see the full technical details of the network:
In the “advanced information” section, many additional commands are present which you can see the output of. Some of them will only be run if you click “Run this test”:
The search allows you to quickly find matching lines in the output:
The network module shows you your Raspberry Pi’s current IP addresses, network links, and the known neighbours.
Some additional information is available in the advanced information section:
System is one of the most powerful and extensive Raspberry Pi system test modules in PiCockpit.
The first part, Basic system information, shows you some important overview information:
- Serial number of your Raspberry Pi
- your Raspberry Pi model
- the SoC temperature of your Raspberry Pi (monitor the CPU temperature using this, or use PiStats to see updates every second!)
- the GPU RAM
- the current CPU frequency – this is useful if you are overclocking your Raspberry Pi
- the current CPU voltage
- status for the Raspberry Pi camera – diagnose camera issues to see if the Raspberry Pi supports and detects the camera
- the SD card manufacturing date
Using the next part, Throttling & under-voltage, you can diagnose vital information about your Raspberry Pi:
- is your Pi power supply strong enough? Watch out for under-voltage
- is your Raspberry Pi running too hot? Watch out for soft temperature limit, ARM frequency cap and Throttling
In case there are issues (currently or previously), PiCockpit will show these here. For example, for the ARM frequency cap being triggered:
The Block devices & files systems (storage space) module is collapsed initially, but can be expanded by clicking on the arrow:
You’ll be able to see all partitions, their size, and the used space for mounted partitions. This will allow you to determine if you are running out of space on your root partition on your Raspberry Pi.
The root partition is always mounted under / – in our case the last partition, mmcblk0p7Raspi Berry’s helpful Linux knowledge
Click on any entry to see even more details:
Here you could click the show all toggle to show even more details (probably for interest only for people wanting to dive deep into technical details):
Using this section you can diagnose which filesystem (fstype) a partition has, which /dev/ path it has (for example /dev/mmcblk0p1), it’s mountpoint, size, usage and label amongst other information.
There are two styles of Raspberry Pi revision codes, PiCockpit can handle both. The new-style revision code will give more details:
- Raspberry Pi model
- Raspberry Pi model revision
- Raspberry Pi RAM
- Raspberry Pi processor (SoC which is used)
- Raspberry Pi CPU
- Manufacturer – you can find out in which country your Raspberry Pi was manufactured here
There are also some additional flags you can see in PiDoctor’s System / Raspberry Pi revision code part:
- Overvoltage allowed
- OTP programming allowed
- OTP reading allowed
- Warranty bit
The advanced information includes additional diagnostics, presented in text form:
The video module allows you to check which monitors are attached to your Raspberry Pi, and which modes (video and audio) they support. For Raspberry Pi 4 and 400, both HDMI ports are supported.
As you can see in the screenshot, this monitor supports audio output:
PCM supported: Max channels: 2, Max samplerate: 48kHz, Max samplesize 16 bits.
Click on CEA modes and DMT modes to expand and view the available monitor modes – this is useful for setting the Raspberry Pi screen resolution in config.txt, if you have trouble seeing the output:
The PiDoctor USB module will allow you to monitor which USB devices are attached to your Raspberry Pi and retrieve details about them:
Click on the arrow(s) to expand the hierarchy of USB devices:
Click on the device you are interested in to get more details:
The software module in PiDoctor will show you which PiCockpit client version you have – it is important to keep the picockpit-client up-to-date (use PiControl to update it from within PiCockpit’s webinterface).
And also, it will allow you to see the currently running processes (ps aux output) and search them by name:
Note that these results / the list of processes are not updated live – if you want them to be periodically refreshed, click on auto reload (this will reload them every 10 seconds):
There are some additional tests in advanced information:
You can access the output of the following commands here:
- dmesg (Kernel message buffer)
- vcdbg log msg
- vcgencmd version
- lsmod (loaded kernel modules)
- ps aux (raw output)
You’ll be able to search through the results quickly, by entering the text you are looking for in the search above the output of the particular advanced information output you are interested in:
Disabling tests in PiDoctor
If you want to disable tests, for security reasons, for example, you should remove the corresponding .json definition files from
Adding custom tests to PiDoctor
Adding custom tests is possible by adding additional .json module definitions. Look at the examples in the code which are present, be sure to define your own unique handles, and restart picockpit-client.
I will add more documentation for creating your own tests here, if people request me to.
Note, the custom tests will always be shown as “Advanced information”, since no custom UI has been built for them. If you require your own customisation / UI for a particular feature, please get in touch with us for a quote.
How can I get PiDoctor for my Raspberry Pi?
It’s really easy:
- Register for an account with picockpit.com, your web-based Raspberry Pi management platform. It’s free of charge for up to 5 Raspberry Pis
- Follow the installation instructions for PiCockpit. (You will create an API key and install picockpit-client on your Raspberry Pi)
- Now you can simply access PiDoctor from the web interface of the browser of your choice, as described on this page
PiDoctor is not showing up under additional tools, how do I access it?
PiDoctor has been merged into PiCockpit – please install the picockpit-client on your Raspberry Pi, and access the PiDoctor app.
The classic, stand-alone PiDoctor version has been discontinued.
How can I download the EDID? It used to be available in the classic PiDoctor software.
Currently extracting the EDID is not implemented in the new PiDoctor App. A lot of output you would want the EDID for is implemented though, please have a look at the screenshots above.
For instructions, how to read your monitor’s EDID on a Raspberry Pi manually, click here.
Can I download the historical stand-alone version of PiDoctor?
You can download the last legacy stand-alone version of PiDoctor here (Version 2.1.18). The software is provided as is, without warranty of any kind.
With the historic version, you can use the same SD card with many different Pis in sequence – it will create a JSON log file for every Pi you’ve tested, extracting different data.
This blog post might come in handy as notes how to use PiDoctor legacy.
- pidoctor-2.1.18.tar.gz (109 MB)
- readme+hashes.txt (1.8 kB)
- pidoctor-2.1.18.img.zip (128 MB), this is what you want if you want to write an image to an SD card
- pidoctor-2.1.18.zip (109 MB)
These download links contain the same base software, based on Alpine Linux – in different formats for your convenience. When in doubt, go for the .img.zip and write the image using tools such as Etcher.
Please note the following limitations:
- the legacy PiDoctor version does not support the Pi 4 or Pi 400 (the new version of PiDoctor, as part of the PiCockpit platform supports all Raspberry Pis and will continue to be updated)
- the legacy version cannot be installed on an existing operating system – you need to put it on it’s own SD card
- the online evaluation tool has been discontinued, so you will have to look at the raw JSON file yourself – unfortunately this file format is not compatible with the new PiCockpit platform v2
- we are not able to provide unpaid support for the legacy version – however, if you want us to build a solution around it for your business & are willing to pay for consulting & development, please get in touch
Do you still have questions / need support?
Please get in touch with us, we aim to help you get started quickly with PiCockpit.