# AquaMaster Button-Simulator Kleine Node.js-/Express-App zum Simulieren der vier Funktaster (`start1`, `stop1`, `start2`, `stop2`) gegen den MQTT-Broker des AquaMasters. ## Installation ```bash cd tools/button-simulator npm install npm start ``` UI öffnen: ## Bedienung 1. Mit dem WLAN des AquaMasters verbinden (Default-AP-IP: `192.168.10.1`). 2. In der UI die Broker-URL prüfen (`mqtt://192.168.10.1:1883`) und auf **Verbinden** klicken. 3. MAC-Adressen der vier virtuellen Buttons ggf. anpassen — die Default-MACs `AA:BB:CC:DD:EE:01..04` funktionieren für einen frischen Anlernlauf: - Im Web-UI des Masters **Anlernmodus starten** - Im Simulator nacheinander **Start 1 → Stop 1 → Start 2 → Stop 2** drücken - Der Master speichert die MACs und ordnet sie den Rollen zu 4. Danach lassen sich mit denselben Buttons Timerläufe auslösen. ## Was die App sendet | Topic | Auslöser | Payload | |---------------------------|---------------------------|--------------------------------| | `aquacross/button/` | PRESS-Button | `{"type":1|2,"timestamp":ms}` | | `aquacross/battery/` | Slider / Auto-Heartbeat | `{"voltage":mV}` | | `heartbeat/alive/` | Auto-Heartbeat | `{"timestamp":ms}` | `type=2` wird für Start-Rollen (start1/start2) gesendet, `type=1` für Stop-Rollen (stop1/stop2) — genau wie es `src/communication.h` erwartet. Heartbeat und Battery werden standardmäßig alle 3 s automatisch publiziert, sobald eine Verbindung besteht. Intervall/Abschaltung per Formular unten. ## Environment-Variablen - `PORT` — Webserver-Port (Default: `3000`) - `BROKER_URL` — vorbelegte Broker-URL