Dokumente

Technische Beschreibungen, Spezifikationen und Notizen für Entwickler und Systemadministratoren.

Für Nutzer

  • Benutzerhandbuch — Installation der App, Aufspielen des Programms auf den Controller, Kopplung, Gastschlüssel, Automatik und Sicherheit.
  • Controller-Konfigurator — die Wahl, wie Telefon und Controller miteinander sprechen.
    • BLE-Controller — nimmt Befehle über Bluetooth ohne Internet entgegen, läuft mit Batterien und löst nur aus, wenn das Telefon in der Nähe ist (ESP32 / S3 / C3 / C6).
    • Internet-Controller — immer online, öffnet das Objekt von überall (ESP32 / ESP8266 — Shelly Plus 1, NodeMCU, Wemos D1; Raspberry Pi Zero W / 3 / 4 / 5, Python und GPIO).
  • Integrationen ohne Austausch des Programms — Tasmota, ESPHome, Home Assistant und Shelly binden sich über einen Entrixy-Webhook an.

Architektur und Protokolle

  • Architektur v2 — das Gesamtschema Client–Server–Controller, Datenflüsse und Nachrichtenformate.
  • E2EE-Architektur — Ende-zu-Ende-Verschlüsselung: was wo verschlüsselt wird (AES-256-GCM auf dem Gerät).
  • BLE — Bedrohungsmodell — was ein Angreifer, der den Funk mithört, kann und was nicht (ECDH X25519 mit HMAC-SHA256).
  • BLE — Zeitsynchronisation — wie der Controller die aktuelle Zeit erfährt, um das Gültigkeitsfenster von Gastschlüsseln zu prüfen.

Quelltexte der Firmware und Skripte

  • /esp32-example/ — das BLE-Programm (NimBLE, Tiefschlaf). Die Vorlage für den Konfigurator /esp/ble/.
  • /esp32-ws-example/ — das WLAN-Programm für den ESP32 (WSS-Client und Relais). Die Vorlage für den Konfigurator /esp/socket/ im ESP32-Modus.
  • /integrations/esp8266/ — das WLAN-Programm für den ESP8266. Die Vorlage für den Konfigurator /esp/socket/ im ESP8266-Modus.
  • /integrations/raspberry-pi/ — das WLAN-Skript in Python für den Raspberry Pi. Die Vorlage für den Konfigurator /esp/socket/ im Pi-Modus.
  • /integrations/nodejs/ — ein WLAN-Client in Node.js für Server ohne Bildschirm und OpenWRT-Router. Der Konfigurator baut ihn noch nicht, das Protokoll ist aber kompatibel.

Design und Oberfläche

Betrieb des Servers

Tests

  • Testplan — 191 Szenarien, davon 37 kritisch für den Produktivserver. Abgedeckt sind BLE-Kopplung, WebSocket-Präsenz, Gastschlüssel, Geo-/WLAN-/Zeitbedingungen, Webhooks (Telefon und Server), Wiederherstellung nach Neustart und Lokalisierung.