Monitor, configure and control connected equipment
–
devices
–
online
–
offline
–
revoked
Add device
Adding a device registers it and grants its MQTT topic access. Then,
with the board plugged in over USB (Chrome or Edge):
1. flash the shared firmware —
flashing needs Chrome or Edge
— then 2. click 📶 Wi-Fi setup on the device's row to send
it Wi-Fi credentials and its certificate over the same cable.
After adding, run this on the machine to enroll it
(Linux / Raspberry Pi, as root — installs a bash agent, nothing else needed):
Windows (PowerShell as Administrator, nothing to install):
It starts reporting CPU / RAM / disk / temperature within a minute.
A recorder can’t run an agent, so a small always-on box on the NVR’s
network polls it and forwards to the Hub. After adding, run this on
that box (as root), filling in the recorder’s LAN IP and admin login:
It reports up/down, HDD status and capacity within a minute or two.
A site gateway is the always-on home box that watches your whole LAN.
After adding, run this on it (as root), listing hosts to watch as
name=ip pairs:
It reports host up/down, internet health, and new-device alerts.
A phone runs the Hub Collector Android app (foreground service) and reports
location, battery health, and its sensors. Add it above — a one-time
ingest token is minted automatically and shown here (once):
— add the phone to generate its token —
Get the app on the phone: Download APK
(open this page on the phone, or scan a QR pointing to it). Install it →
open it → enter Hub URL , the token above, interval 30 →
Start. The app then self-updates: when a newer build is published it shows a "tap to install" notification. →
Start → grant Location/Notifications, set Location “Allow all the time”
+ battery unrestricted.
Phone app — Hub Collector (Android)
Published build: checking…
direct link:
Install once on the phone; it then self-updates when a newer build is published
(phone/build-apk.sh <versionCode>) — the app shows a “tap to install” notification.
Firmware
Compiles the current ESP32 firmware source on the Hub and publishes it,
so online boards on an older build are offered Update to … in
their health panel. Bump FW_VERSION in the source first, or
this republishes the same version.
published: …
Device
Status
Last seen
Send command
Actions
WhatsApp link
…
On your phone: WhatsApp → Linked devices → Link a device → scan this:
Unofficial WhatsApp Web link — use a dedicated number, not your personal main line.
Recipients
…
Alert rules
Threshold rules watch any telemetry field on any device. e.g. l1_v min 190 / max 250 · l1_w max 3000 · batt_val min 3.3.
Recent alerts
…
Automations
…
Each automation is When (a trigger) → Do (an action). Fires are rate-limited by the cooldown.
New automation
When (trigger)
Do (action)
A relay action targets an ESP32 (over MQTT) or a Pi/gateway pin (declared in its Relays panel) by name. New-device alerts are also a built-in toggle in the Alerts tab.
Location — for sunrise/sunset triggers
Share “” with users
…
Add widget
Gauge & tank use min–max as the scale; graph plots the last 24 h; stat shows the live number. Server fields include cpu_pct, ram_pct, disk_pct, speed_down_mbps, speed_up_mbps, and speed_ping_ms. Adding a speed field automatically enables a 30-minute test on computer/gateway agents.
Users
…
Owner controls security. Administrator manages Hub. Operator can use assigned devices. Viewer has read-only assigned access. Every request is checked by the backend.
Access for “”
Access is denied unless explicitly granted by role, capability and resource assignment.
API keys — read-only, for your AI / scripts
…
Leave both blank for a full read-only key. Pick devices and/or list sensors (telemetry fields) to limit exactly what this key can read.
Keys are read-only — telemetry + alerts via /api/v1 only. No device control, config, or user access. Shown once at creation, so copy it then. Your AI sends it as Authorization: Bearer <key>. Endpoints: /api/v1/devices, /api/v1/devices/:id/latest, /api/v1/devices/:id/history, /api/v1/alerts.