91bfcff1fe20243332b802cc887ab19745560398
Aorus
Description
installe un service qui creer des entites pour home assistant:
- etat de la batterie
- button pour eteindre le pc
- reboot
- eteindre l'ecran
- cpu
- memory
- adresse ip
- cpu frequency
Prérequis
installation de python3 et de python-env:
sudo apt install python3-venv
python3 -m venv monenv
activation de l'environnement:
source monenv/bin/activate
Installation
git clone http://10.0.1.200/pilot/aorus.git
cd aorus
Création de l'environnement:
python3 -m venv monenv
Activation de l'environnement:
source monenv/bin/activate
Installation des paquets additionnels:
pip install -r requirements.txt
Test du programme
python3 main.py
Sortie de l'environnement:
deactivate
Installation en temps que service
authorisation de shutdown: ajouter a la fin du fichier
sudo visudo
gilles ALL=(ALL) NOPASSWD: /sbin/shutdown
gilles ALL=(ALL) NOPASSWD: /sbin/reboot
gilles ALL=(ALL) NOPASSWD: /usr/bin/tee /sys/devices/system/cpu/cpu0/cpufreq/scaling_setspeed
Installation du service en manuel:
sudo cp mqtt_pilot.service /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable mqtt_pilot.service
sudo systemctl start mqtt_pilot.service
sudo systemctl status mqtt_pilot.service
lancer l'installation du service:
sudo ./install.sh
PILOT v2 (Rust) ✅ FUNCTIONAL
Status: Core implementation complete and tested. Ready for feature development.
Quick Start
# Start MQTT broker (Docker required)
./scripts/start_mqtt_broker.sh
# Run pilot v2
./scripts/run_pilot.sh
# In another terminal, monitor messages
./scripts/monitor_mqtt.sh
# Send a test command
docker exec pilot-mosquitto mosquitto_pub -t "pilot/pilot-device/cmd/screen/set" -m "OFF"
Documentation
- Implementation Status - What's implemented and what's missing
- Development Roadmap - Planned features and priorities
- Testing Results - End-to-end test validation
- Architecture - MQTT contract and module structure
- Deployment Guide - Systemd service setup
- Usage Guide - How to use pilot v2
Configuration
Example config: config/config.example.yaml
Key settings:
- MQTT broker connection
- Telemetry interval (default: 10s)
- Commands allowlist
- Dry-run mode (safety during development)
- Platform backends (power and screen control)
Development
# Run tests
cd pilot-v2 && cargo test
# Build release
cd pilot-v2 && cargo build --release
# Check code
cd pilot-v2 && cargo check
Features (v2)
Working:
- ✅ MQTT connectivity with LWT
- ✅ YAML configuration
- ✅ Telemetry (CPU, memory, IP, battery*)
- ✅ Power commands (shutdown, reboot, sleep)
- ✅ Screen control (on/off)
- ✅ Home Assistant auto-discovery
- ✅ Command allowlist and cooldown
- ✅ Dry-run mode for safe testing
* Battery telemetry: Linux only, auto-detected
Planned (see roadmap):
- CPU temperature
- Battery support for Windows
- GPU telemetry
- Windows backend implementation
- TLS/SSL support
- Integration tests
Description
Languages
HTML
68.1%
D
21%
Rust
9.5%
Python
0.8%
JavaScript
0.3%
Other
0.3%