Hardware monitor web application made for Steroid, providing real time usage metrics from your PC to your wallpaper.
- CPU metrics and information.
- GPU details
(Including Intel Integrated Graphics)
. - Memory usage.
- Network names and usage.
- Hard Drives information and usage.
- .NET 4.7.X (Latest if possible)
- Python 3.8.X (Above will run with
--pre
version of pythonnet but might cause memory leaks) - PIP
pip install -r requirements.txt
Must run under Root/Administrator/System.
If not built with PyInstaller
python ./steroid-service.py
If built or downloaded the latest release, you must open a terminal as Administrator in the steroid folder
, and then:
cd dist/steroid-service
start steroid-service.exe
CTRL + C to exit.
pyinstaller steroid-service.spec --collect-data pythonnet
Steroid service works as an internal web API hosted on http://localhost:7666, waiting for a GET method on these paths:
Endpoint | Return format |
---|---|
/cpu | Object Object |
/gpu | Array Object |
/network | Array Object |
/memory | Object Object |
/filesystem | Array Object |
This service application can run both UAC enabled or disabled.
GPU is UNFISHED and needs AMD testers to provide console output.
LibreHardwareMonitor sets it's own unique interface, and every hardware has it's own HardwareType
and Name
:
Hardware:
HardwareType | Name | Privileges |
---|---|---|
0 | Motherboard | User |
1 | SuperIO | Admin |
2 | CPU | User |
3 | Memory | User |
4 | GpuNvidia | User |
4 | GpuAmd | User |
4 | GpuIntel | User |
6 | Storage | Admin |
7 | Network | User |
? | Cooler | Admin |
? | EmbeddedController | Admin |
? | Psu | Admin |
? | Battery | Admin |
Hardware components marked as Admin are requested under Administrator privileges.
Sensors:
SensorType | Value | Format | Privileges |
---|---|---|---|
0 | Voltage | V | Admin |
1 | Current | A | Admin |
2 | Power | W | User/Admin |
3 | Clock | Mhz | User/Admin |
4 | Temperature | °C | User/Admin |
5 | Load | % | User |
6 | Frequency | Hz | User |
7 | Fan | RPM | Admin |
8 | Flow | L/h | Admin |
9 | Control | % | User |
10 | Level | % | User |
11 | Factor | 1 | Admin |
12 | Data | GB | User |
13 | SmallData | MB | User |
14 | Throughput | B/s | User |
15 | TimeSpan | Seconds | User |
16 | Energy | mWh | Admin |
User/Admin privileges means it is only available for Users under determined conditions, like the GPU.
Why not adding all the other features that LibreHardwareMonitor has?
Some features are too unstable or are not worth the effort, mostly considering that this is just a metrics provider and not ideal or suited for like, for example, fans frequency of the motherboard or PSU information provided by just a few power supplies.
Brought to you thanks to flask, pythonnet, pyinstaller and LibreHardwareMonitor libraries.
You guys rock, and thank you reader for coming here 🔥