Crates.io | rustberry-poe-monitor |
lib.rs | rustberry-poe-monitor |
version | 1.0.1 |
source | src |
created_at | 2023-11-21 22:55:03.814568 |
updated_at | 2023-11-21 23:43:45.143899 |
description | A simple PoE Monitor for Raspberry Pi Waveshare PoE HAT (B) |
homepage | |
repository | https://github.com/jackra1n/RustBerry-PoE-Monitor |
max_upload_size | |
id | 1044702 |
size | 508,690 |
RustBerry-PoE-Monitor is a Rust-based monitoring and control tool for the Raspberry Pi, specifically designed for use with the Waveshare PoE HAT (B).
This tool provides real-time monitoring of your Raspberry Pi's system statistics, including IP address, memory usage, CPU load, and more, displayed on the PoE HAT's OLED display. Additionally, it offers fan control to maintain optimal operating temperatures.
First, you will need the binary file. You can either download the pre-built binaries or download it using cargo.
Pre-built binaries are available for download on the releases page
To be able to run the binary anywhere on your system, you can move it to /usr/local/bin
:
sudo mv rustberry-poe-monitor /usr/local/bin
Install with cargo
:
cargo install rustberry-poe-monitor
You should be able to run the binary file now:
rustberry-poe-monitor
There are 2 CLI arguments available:
--temp-on
- The temperature at which the fan should turn on (default: 60)--temp-off
- The temperature at which the fan should turn off (default: 50)Example:
rustberry-poe-monitor --temp-on 65 --temp-off 55
To run the program on startup, you can create a systemd service:
sudo nano /etc/systemd/system/rustberry-poe-monitor.service
Paste the following into the file:
[Unit]
Description=RustBerry PoE Monitor
After=network.target
[Service]
ExecStart=/home/yourUser/.cargo/bin/rustberry-poe-monitor
User=yourUser
Restart=always
RestartSec=30
[Install]
WantedBy=multi-user.target
Then enable the service:
sudo systemctl daemon-reload
sudo systemctl enable rustberry-poe-monitor.service
sudo systemctl start rustberry-poe-monitor.service
For building for Rasberry Pi I'm using cross
cross build --target=aarch64-unknown-linux-gnu --release
Just run the binary file
./rustberry-poe-monitor