A gping-inspired terminal visualization tool for monitoring real-time hardware sensor data from HWInfo.
[Software Name] is a terminal visualization tool designed to monitor real-time hardware sensor data from HWInfo. The software provides a clean, gping-inspired interface for tracking and analyzing critical system metrics.
Key Features:
Real-time monitoring of hardware sensors with configurable refresh rates
Unit-based filtering for organizing and visualizing sensors by measurement type
Dual Y-axes charts for displaying different units on the same graph
Responsive design that adapts to terminal size and supports compact mode
Fuzzy sensor matching for partial name searches with suggestions
Rich statistics including min, max, average, and 95th percentile values
Ideal for tech enthusiasts, system administrators, and gamers who need a clear and intuitive way to visualize hardware performance data in real-time. The tool can be installed via winget or other package managers, making it accessible across multiple platforms while maintaining its terminal-based simplicity.
README
π₯οΈ HWInfo TUI
A gping-inspired terminal visualization tool for monitoring real-time hardware sensor data from HWInfo.
# top left pane
hwinfo-tui monitor sensors.CSV "CPU Package Power" "Total System Power" "GPU Power" --time-window 120 --refresh-rate 1
# bottom left pane
hwinfo-tui monitor sensors.CSV "Physical Memory Load" "Total CPU Usage" "GPU D3D Usage" --time-window 120 --refresh-rate 1
# top right pane
hwinfo-tui monitor sensors.CSV "Core Temperatures" "CPU Package" "GPU Temperature" --time-window 120 --refresh-rate 1
# bottom right pane
hwinfo-tui monitor sensors.CSV "Core Thermal Throttling" "Core Critical Temperature" "Package/Ring Thermal Throttling" --time-window 120 --refresh-rate 1
β¨ Features
Real-time Monitoring: Live sensor data visualization with configurable refresh rates
gping-inspired UI: Clean interface with statistics table and interactive chart
Unit-based Filtering: Automatically groups sensors by units, supports up to 2 units simultaneously
Dual Y-axes: Charts can display different units on left and right axes
Clean Interface: Focused visualization without unnecessary interactive distractions
Responsive Design: Automatically adapts to terminal size with compact mode
Fuzzy Sensor Matching: Partial sensor name matching with suggestions
: Min, max, average, and 95th percentile calculations
git clone https://github.com/hwinfo-tui/hwinfo-tui.git
cd hwinfo-tui
./setup.sh
Manual Setup
git clone https://github.com/hwinfo-tui/hwinfo-tui.git
cd hwinfo-tui
# Create and activate virtual environment
python -m venv venv
# Windows
venv\Scripts\activate
# Linux/macOS
source venv/bin/activate
# Install in development mode
pip install -e .
π Quick Start
Generate HWInfo CSV: Configure HWInfo to log sensor data to a CSV file
Run HWInfo TUI: Monitor your desired sensors
# Basic usage - monitor CPU temperature
hwinfo-tui monitor sensors.csv "CPU Package"
# Monitor multiple temperature sensors
hwinfo-tui monitor sensors.csv "Core Temperatures (avg)" "GPU Temperature" "CPU Package"
# Mixed units - CPU usage and temperature
hwinfo-tui monitor sensors.csv "Total CPU Usage" "Core Temperatures"
# Custom settings
hwinfo-tui monitor sensors.csv "GPU Temperature" --refresh-rate 0.5 --time-window 600
π‘ Usage Examples
Single Unit Monitoring
# All temperature sensors
hwinfo-tui monitor sensors.csv "Core Temperatures (avg)" "GPU Temperature" "CPU Package"
# All percentage sensors
hwinfo-tui monitor sensors.csv "Total CPU Usage" "GPU Core Load" "GPU Memory Usage"
Dual Unit Monitoring
# Temperature and percentage
hwinfo-tui monitor sensors.csv "Core Temperatures (avg)" "Total CPU Usage" "GPU Temperature"
# Power and temperature
hwinfo-tui monitor sensors.csv "CPU Package Power" "CPU Package" "GPU Power"
Discover Available Sensors
# List all sensors in CSV
hwinfo-tui list-sensors sensors.csv
# Filter by unit
hwinfo-tui list-sensors sensors.csv --unit "Β°C"
# Limit results
hwinfo-tui list-sensors sensors.csv --limit 20
π Command Line Reference
Main Command
Usage: hwinfo-tui [OPTIONS] COMMAND [ARGS]...
A gping-inspired terminal visualization tool for monitoring real-time
hardware sensor data from HWInfo
+- Options -------------------------------------------------------------------+
| --version Show version information and exit |
| --install-completion Install completion for the current shell. |
| --show-completion Show completion for the current shell, to |
| copy it or customize the installation. |
| --help Show this message and exit. |
+-----------------------------------------------------------------------------+
+- Commands ------------------------------------------------------------------+
| monitor Monitor hardware sensors in real-time |
| list-sensors List all available sensors in the CSV file. |
+-----------------------------------------------------------------------------+
Monitor Command
Usage: hwinfo-tui monitor [OPTIONS] CSV_FILE SENSOR_NAMES...
Monitor hardware sensors in real-time
+- Arguments -----------------------------------------------------------------+
| * csv_file FILE Path to HWInfo sensors.csv file |
| [default: None] |
| [required] |
| * sensor_names SENSOR_NAMES... One or more sensor names to monitor |
| (supports partial matching) |
| [default: None] |
| [required] |
+-----------------------------------------------------------------------------+
+- Options -------------------------------------------------------------------+
| --refresh-rate -r FLOAT RANGE Update frequency in |
| [0.1<=x<=60.0] seconds (0.1-60.0) |
| [default: 1.0] |
| --time-window -w INTEGER RANGE History window in seconds |
| [10<=x<=7200] (10-7200) |
| [default: 300] |
| --theme -t TEXT Color theme |
| (default/dark/matrix) |
| [default: default] |
| --help Show this message and |
| exit. |
+-----------------------------------------------------------------------------+
List Sensors Command
Usage: hwinfo-tui list-sensors [OPTIONS] CSV_FILE
List all available sensors in the CSV file.
This command helps you discover sensor names for monitoring.
+- Arguments -----------------------------------------------------------------+
| * csv_file FILE Path to HWInfo sensors.csv file [default: None] |
| [required] |
+-----------------------------------------------------------------------------+
+- Options -------------------------------------------------------------------+
| --unit -u TEXT Filter sensors by unit (e.g., |
| 'Β°C', '%', 'W') |
| [default: None] |
| --limit -l INTEGER RANGE [1<=x<=1000] Maximum number of sensors to |
| display |
| [default: 50] |
| --help Show this message and exit. |
+-----------------------------------------------------------------------------+
HWInfo TUI automatically filters sensors based on their units to create clean, readable charts:
Single Unit: All sensors with the same unit (e.g., all temperatures in Β°C)
Dual Units: Up to 2 different units displayed on separate Y-axes
Auto-exclusion: Sensors with incompatible units are automatically excluded with clear warnings
Example Unit Filtering
# This command would exclude the [W] sensor and show a warning
hwinfo-tui monitor sensors.csv "Core Temperatures" "Total CPU Usage" "CPU Power"
# Output: "Excluded sensor 'CPU Power [W]' with unit [W] - chart limited to units [Β°C] and [%]"
# Windows Command Prompt
activate.bat
# Windows PowerShell
.\activate.ps1
# Linux/macOS
source ./activate.sh
# Run tests
pytest
# or: .\test.ps1 (PowerShell with extra features)
# Run the app
hwinfo-tui --help
hwinfo-tui monitor sensors.csv "CPU"