https://github.com/aranbarri/rmon
RMON is a lightweight, terminal-based system monitor for Raspberry Pi, with real-time display of CPU, memory, GPIO states, I2C devices, and more.
https://github.com/aranbarri/rmon
gpio-pins i2c monitoring nmon raspberry-pi rmon sensors
Last synced: about 1 year ago
JSON representation
RMON is a lightweight, terminal-based system monitor for Raspberry Pi, with real-time display of CPU, memory, GPIO states, I2C devices, and more.
- Host: GitHub
- URL: https://github.com/aranbarri/rmon
- Owner: aranbarri
- Created: 2025-06-07T16:20:00.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-06-07T19:30:45.000Z (about 1 year ago)
- Last Synced: 2025-06-07T19:31:48.672Z (about 1 year ago)
- Topics: gpio-pins, i2c, monitoring, nmon, raspberry-pi, rmon, sensors
- Language: Python
- Homepage:
- Size: 6.84 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
````
_____ __ __ ____ _ _
| _ \| \/ |/ __ \| \ | |
| |_) | |\/| | | | | \| |
| _ <| | | | | | | |\ |
|_| \_\_| |_|\____/|_| \_|
````
# RMON – Raspberry Pi Terminal Monitor
**RMON** is a terminal-based system monitor for **Raspberry Pi**, inspired by `nmon`, with real-time display of CPU, memory, GPIO states, I2C devices, and more.

---
## Features
- `nmon`-style system monitoring in the terminal (via `curses`)
- Per-core CPU usage and memory load shown with vertical bars
- Real-time status of **GPIO** pins (input mode, ON/OFF)
- **I2C** device detection using `i2cdetect`
- **RaspMesh** detection (checks for `bat0` mesh interface)
- System metrics: CPU temperature, frequency, voltage
---
## Requirements
- Raspberry Pi OS or similar (tested on Pi 3, 4, 5)
- Python 3.x
- Root privileges (`sudo`)
- Packages:
- `psutil`
- `RPi.GPIO`
- `curses` (built-in)
- `i2cdetect` from `i2c-tools`
---
## Installation
```bash
sudo apt update
sudo apt install python3-pip i2c-tools
pip3 install psutil RPi.GPIO
```
Clone and run:
```bash
git clone https://github.com/aranbarri/rmon.git
cd rmon
sudo python3 rmon.py
```
> `sudo` is required to access GPIO and I2C.
---
## 🔍 What It Monitors
| Section | Metric |
|--------:|----------------------------------------|
| CPU | Per-core load with vertical bars |
| MEM | RAM usage percentage |
| DISK | Used and free disk space |
| NET | Sent/received bytes |
| SYS | CPU temp, frequency, voltage, mesh |
| I2C | Devices detected via `i2cdetect` |
| GPIO | States of GPIO pins (ON/OFF/N/A/RES) |
> GPIO pins monitored: BCM 4–27 (excluding 2 and 3, reserved for I2C)
---
## 📝 License
MIT License. Free to use, modify, and share.