Hardware

Der Hub

Der Hub bringt die Anlage ins Netzwerk, die Module brauchen keins. Er sitzt im Schaltkasten, regelt auch ohne Server und hält den Kasten selbst trocken und frostfrei.

Auf dieser Seite

Aufgaben

  • Gateway zwischen Bus und MQTT über TLS. Puffert Messwerte, wenn die Verbindung zum Server fehlt, und liefert sie nach.
  • Modulverwaltung: Erkennung, Adressvergabe, Ausfallüberwachung, Verteilung von Updates.
  • Regler mit Sollwerten vom Server. Ein Regler darf Sensoren und Aktoren verschiedener Module verknüpfen.
  • Sicherheitsschicht, vom Server nicht überstimmbar: Verriegelungen, Plausibilität der Messwerte, Wirkungsüberwachung, Watchdog, autonomer Betrieb.
  • Updates mit Rückfall auf die alte Version, wenn die neue sich nicht meldet.

Board

Controller
ESP32-S3 mit PSRAM
Empfohlenes Board
ESP32-S3-DevKitC-1 N16R8
Flash
16 MB, zwei App-Partitionen für Updates
PSRAM
8 MB
Netzwerk
WLAN, dazu Ethernet über W5500
Modulbus
CAN über Transceiver, z. B. SN65HVD230
Zusatzport
RS485 für Modbus-Sensoren, z. B. MAX3485
Strommessung
INA226 für Gesamtstrom und die eigenen Ausgänge
Speicher
LittleFS
Watchdog
10 s
Statuslicht
RGB-LED (WS2812) des DevKitC-1 an GPIO 48 oder 38

Warum mit PSRAM

Der Puffer für den Betrieb ohne Server braucht Platz. Mit PSRAM bekommt er 256 KB, das reicht weit über die geforderten 1000 Einträge hinaus. Ohne PSRAM sind es 24 KB, etwa 200 Einträge, und größere Anlagen passen nicht in den Speicher für die Konfiguration.

WLAN und Netzwerkkabel

Steckt ein Kabel, nutzt der Hub das Kabel, sonst WLAN. Beides spricht dieselbe Firmware. Mit passendem Board ist auch die Versorgung über das Netzwerkkabel möglich, für die Elektronik, nicht für Heizung und Antriebe.

Schneller Start

Seit 0.10.0 verbindet sich der Hub nach einem Neustart sofort per MQTT über TLS mit der Adresse, unter der er den Server zuletzt gefunden hat, ohne sie vorher über HTTPS zu prüfen. Das Zertifikat prüft MQTT genauso. Kommt in 20 Sekunden keine Verbindung zustande, prüft er die Adresse und sucht sonst weiter. Das WLAN startet mit Kanal und Access Point der letzten Verbindung; klappt das in 6 Sekunden nicht, sucht es alle Kanäle ab. Die Konsole nennt die Zeiten der Schritte (SB-BOOT … ms).

Statuslicht

Seit Firmware 0.10.0 zeigt die RGB-LED auf dem ESP32-S3-DevKitC-1 den Zustand des Hubs. Es gilt der erste zutreffende Zustand von oben:

Farbe Rhythmus Bedeutung
Weiß blinkt schnell „Blinken“ am Hub, zum Finden
Blau blinkt langsam Einrichtungs-WLAN offen
Rot dauernd Störung an einem Ausgang oder Sensor
Violett dauernd autonom, kein Server
Gelb blinkt verbindet, oder wartet auf die Übernahme
Grün dauernd online

Die LED sitzt an GPIO 48 (DevKitC-1 v1.0 und die meisten Nachbauten, Voreinstellung) oder an GPIO 38 (v1.1). Ein Admin stellt das in den Einstellungen des Hubs unter „LED“ um oder schaltet sie ab, ohne Neustart. „LED testen“ zeigt alle Farben nacheinander. Bleibt die LED dunkel, GPIO 38 wählen und noch einmal testen.

Der Hub ist zugleich das erste Modul

Ein kleines Projekt kommt ohne Zusatzmodule aus. Der Hub hat eigene Ein- und Ausgänge und beschreibt sich selbst wie jedes andere Modul.

Kanal Inhalt
supply.u Versorgung gesamt
supply.i Gesamtstrom
case.temp Temperatur im Schaltkasten
case.rh Feuchte im Schaltkasten
in1, in2 zwei Kontakteingänge
sens.i Strom der Sensorversorgung
out1, out2 zwei Ausgänge 24 V, stufenlos, elektronische Sicherung 3 A

Jeder Ausgang bringt seine Kanäle für Strom, Spannung und Zustand mit.

Klima im Schaltkasten

Elektronik im Freien leidet unter Kondenswasser, Frost und Hitze. Der Hub misst im Kasten Temperatur und Feuchte. An seinen zwei Ausgängen hängen, wenn gewünscht, eine Heizmatte und ein kleiner Lüfter. Beides ist optional und voreingestellt an.

Temperatur im Kasten Heizmatte nichts läuft Lüfter −10 °C 5 °C 36 °C 50 °C Feuchte im Kasten heizt bis 70 % Heizmatte Lüfter 40 % 70 % 75 % 83 % 100 %
Schwellen für Heizmatte und Lüfter im Schaltkasten.
Merkmal Heizmatte an Ausgang 1 Lüfter an Ausgang 2
Leistung 10 W an 24 V kleiner Lüfter, etwa 0,1 A
Temperatur hält den Kasten über 5 °C läuft ab 36 °C
Feuchte heizt ab 75 % rF, bis 70 % erreicht sind läuft ab gut 83 % rF
Überwachung Strom und Erwärmung des Kastens nur Strom, der Hub hat keinen Tacho-Eingang

Wärme senkt die relative Feuchte. So schlägt sich an der Elektronik kein Wasser nieder. Über 25 °C heizt die Matte nicht mehr trocken, dann ist Heizen nicht der richtige Weg. Der Lüfter springt erst an, wenn Heizen allein die Feuchte nicht hält.

Frostwarnung, Hitzewarnung und Urlaubsmodus verschieben die Sollwerte des Kastens nicht. Sie sind für Pflanzen gedacht. Beim Lastabwurf werden Heizmatte und Lüfter zuletzt abgeschaltet.

Pinbelegung

Grundlage ist das ESP32-S3-DevKitC-1. Gemieden werden die Strapping-Pins 0, 3, 45 und 46, die USB-Pins 19 und 20, die Pins für Flash und PSRAM (26 bis 37) und die Konsole an 43 und 44.

Funktion GPIO
CAN TX, RX 4, 5
I²C SDA, SCL 17, 18
RS485 TX, RX, Richtung 15, 16, 7
Ethernet W5500: SCK, MOSI, MISO, CS, INT, RST 12, 11, 13, 10, 9, 14
1-Wire 6
Ausgang 1, Ausgang 2 (PWM) 39, 40
Eingang 1, Eingang 2 41, 42
Schaltbare Sensorversorgung 47
Status-LED, falls bestückt 21
RGB-LED des DevKitC-1 (Statuslicht) 48 (v1.0) oder 38 (v1.1)
Taster für das Einrichtungs-WLAN 1
Analogeingänge, frei 2, 8
Baustein am I²C-Bus Adresse
INA226 für Gesamtstrom und Versorgung 0x40
INA226 für Ausgang 1 0x41
SHT4x im Schaltkasten 0x44
INA226 für Ausgang 2 0x45

Einrichten

Ein neuer Hub öffnet ein eigenes, offenes WLAN mit dem Namen „SmartBeet-Hub-…“, ohne Passwort. Dort trägt man auf der Seite 192.168.4.1 das Heim-WLAN und den Einrichtungscode ein. Den Code zeigt die Oberfläche unter „Geräte“, am Ende mit dem Server-Schlüssel, an dem der Hub seinen Server erkennt. Die Server-Adresse bleibt im selben Netz leer, der Hub sucht den Server selbst.

Ein langer Druck auf den Taster öffnet das Einrichtungs-WLAN erneut. Online schließt es sich.

Der ganze Ablauf steht unter Erste Schritte.

    Durchsucht alle Seiten. Die Suche läuft im Browser, nichts wird übertragen.