01 · Eigene Module
- ESP32-Module sprechen direkt miteinander — kein Router, kein WLAN-Passwort
- Sensoren frei gewählt: Präsenz, Temperatur, Feuchte, Rauch, Wetter
- Firmware selbst geschrieben, geflasht und geändert
// Gesellenstück D-001 — Konzept & Aufbau
Eine eigene Zentrale auf dem Raspberry Pi 4, eigene Sensormodule über ESP-NOW, fremde Geräte über MQTT — eine Oberfläche, eine Datenbank, keine Hersteller-App. Diese Seite ist die Projektpräsentation: was festgelegt ist, wie es aufgebaut wird und wann es fertig sein muss.
// 01 — Überblick
Fertige Smart-Home-Pakete funktionieren — bis man einen Sensor braucht, den es dort nicht gibt, oder bis das Herstellerkonto wegfällt. Dieses Projekt dreht den Weg um: zuerst die Zentrale und die Daten, dann die Geräte. Eigene Module liefern genau das, was gebraucht wird, fremde Geräte werden eingebunden statt nachgebaut.
| Bereich | Festlegung | Begründung |
|---|---|---|
| Zentrale | Raspberry Pi 4 | eine eigene Zentrale im Haus, alles bleibt lokal (D-001) |
| Eigene Module | ESP-NOW | Modul zu Modul ohne Router, kleine Datenpakete |
| Strecke Gateway → Pi | UART, JSON-Zeilen | seriell und lesbar, leicht zu debuggen |
| Fremde Geräte | MQTT | Shelly und WLED sprechen es ab Werk (D-013) |
| Software der Zentrale | Python · FastAPI · SQLite | API, Datenbank und Funk in einem Stack (D-014) |
| Oberfläche | Web-UI im Browser | läuft auf Pi, Tablet und Modul C (D-003) |
| Automatik | eigene Regel-Engine | Regeln liegen in der Datenbank, nicht im Code (D-004) |
| Hardware | ESP32-SMD-WROOM-Module | klein und direkt auf die eigene Platine (D-015) |
| Zugang | einfacher Login | keine Nutzerverwaltung, die niemand braucht (D-012) |
| Stand | Konzept & Entscheidungen | Hardware und Code folgen ab Herbst 2026 |
// 02 — System
Vier Ebenen, ein Weg: Sensoren melden, das Gateway sammelt, die Zentrale speichert und entscheidet, die Oberfläche zeigt. Fremde Geräte stehen im gleichen Bild wie die eigenen Module — nur über einen anderen Transportweg.
Ebene 4Bedienung
Ebene 3Zentrale · Raspberry Pi 4
Ebene 2Transport
Ebene 1Feld
// 03 — Module
Die eigenen Module sind auf Aufgaben zugeschnitten statt auf Stückzahlen: eines für den Raum, eines fürs Wetter draußen, eines zum Bedienen. Das Gateway ist das Bindeglied zwischen Funkwelt und Zentrale. Gebaut ist noch keines davon — hier stehen die geplanten Fähigkeiten.
Deckenmodul für den Raum: erkennt Präsenz, misst Temperatur und Luftfeuchte und wacht über einen Rauchmelder. Oben an der Decke stört es niemanden und sieht den ganzen Raum.
Sensorik: Präsenz · Temperatur · Feuchte · Rauch
Funk: ESP-NOW zum Gateway
Außenmodul für die Daten, die drinnen fehlen: Temperatur, Helligkeit, Wind und Regen. Daraus entstehen später die Regeln, die Rollladen und Licht steuern.
Sensorik: Temperatur · Licht · Wind · Regen
Funk: ESP-NOW zum Gateway
Kein eigener Bildschirm-Code: Modul C zeigt dieselbe Web-UI wie Pi und Rechner, nur im Taschenformat. Damit ist die Oberfläche an einem Ort gepflegt und trotzdem überall dabei.
Anzeige: Touch-Display mit Akku
Weg: WLAN zur Zentrale, Web-UI im Browser
Sammelt alle Module per ESP-NOW und gibt sie als JSON-Zeilen über UART an den Pi — und schickt Befehle denselben Weg zurück. Der einzige Übergang zwischen Funk und Zentrale.
Funk: ESP-NOW-Master
Leitung: UART 115200, eine JSON-Zeile pro Datensatz
Shelly und WLED werden nicht nachgebaut, sondern eingebunden: ein kleiner Python-Dienst (paho-mqtt) abonniert ihre Themen und legt ihre Zustände in dieselbe Datenbank.
Anbindung: MQTT-Broker im eigenen Netz
Weg: paho-mqtt → SQLite → Web-UI
// 04 — Aufbau
Aufgebaut wird Modul für Modul: erst Platine und Firmware, dann Gehäuse, dann der Einbau. Die Dokumentation läuft dabei mit — ein nachträglich geschriebenes Testprotokoll ist wertlos.
| Dokument | Inhalt | Warum es früh entsteht |
|---|---|---|
| Projektplan | Meilensteine, Zeitbudget, Feature-Freeze | Der Plan hält den Umfang fest |
| Funktionsbeschreibung | Module, Fähigkeiten, Nicht-Ziele | Beschreibt das Prüfungsziel in Worten |
| Schaltplan | je Modul ein Plan, Platine und Anschlüsse | Ohne ihn ist die Platine nicht prüfbar |
| Stückliste (BOM) | Bauteil, Menge, Bezugsquelle | Lieferzeiten einplanen — und Kosten belegen |
| CAD-Zeichnung | Gehäuse und Halterungen | Beim Drucken ohnehin erstellt |
| Testprotokoll | Messmittel: Multimeter, Netzwerkanalyse, Stoppuhr, serielle Konsole | Jede Anforderung bekommt einen Nachweis |
| Code-Auszüge | Prinzipstellen statt Vollabdruck | Erklärt im Fachgespräch mehr als eine Seitenzahl |
// 05 — Daten
Das ist die Reihenfolge, in der die Zentrale gebaut wird. Die Oberfläche kennt nur die API — deshalb lässt sich das Backend später umbauen, ohne dass man es merkt. Und deshalb stehen alle Werte an einer Stelle: in einer SQLite-Datenbank auf dem Pi.
| Tabelle | Inhalt | Anmerkung |
|---|---|---|
| devices | ID, Name, Klasse (eigen/fremd), Raum, Symbol | eigene und fremde Geräte in einer Tabelle |
| capabilities | Kennung, Anzeigename, Typ, Einheit, min/max, steuerbar | daraus entstehen die Widgets |
| measurements | Zeitstempel, Gerät, Kennung, Wert | der Verlauf für Grafiken |
| automations | Bedingung, Aktion, aktiv | Regeln aus dem Web-UI (D-004) |
| events | Zeitstempel, Art, Quelle, Text | Ereignisliste im UI |
| meta | Schema-Version | Migrationen werden nummeriert angewandt |
| später | users, alarms, settings, devices.room_id, devices.icon | Platzhalter schon jetzt angelegt (R-05) |
// 06 — Zeitplan
Der Plan rechnet mit rund 1200 bis 1550 Stunden bis Juni 2027 — inklusive Gehäuse, Schaltplänen, Fertigung und Dokumentation. Weil das viel Zeit ist, liegt das Risiko nicht im Umfang, sondern in der Unschärfe. Deshalb gibt es ein Datum, ab dem nichts Neues dazukommt: den Feature-Freeze am 30.04.2027.
Kernpunkte und Entscheidungen festschreiben, danach Features und Schnittstellen — die Basis für alles Weitere.
Erster Aufbau auf Steckbrett: Funkstrecke, Sensorik und Übergabe an den Pi prüfen, bevor Platinen entstehen.
mmWave-Anwesenheit, Temperatur und Feuchte, Rauchmelder; dazu das Deckengehäuse (D-017).
Temperatur, Helligkeit, Sonnenstand, Wind und Regen — samt Gehäuse für draußen.
Mobiles Touch-Terminal mit Akku, parallel das Gateway als ESP-NOW-Master am Raspberry Pi.
Geräte melden sich selbst an, die Zentrale legt Fähigkeiten an — ab hier wächst die Datenbank mit echten Werten.
Generische Widgets aus den Fähigkeiten: ein Design für Kiosk, Modul C, Handy und Rechner.
Regel-Engine im UI bedienbar machen, Shelly zuerst, WLED danach (D-013). Ende des Monats: Freeze.
Dauerlauf, Messprotokolle, Fehler beheben — jede Anforderung bekommt ihren Nachweis.
Stücklisten, CAD, Schaltpläne und Code-Auszüge zusammenstellen. Die letzten sechs Wochen gehören nicht der Software.
// Wochen je Arbeitspaket — längerer Balken = längerer Block (Maximum 8 Wochen)
| Zeitraum | Schwerpunkt | Aufwand | Summe |
|---|---|---|---|
| Okt – Dez 2026 | Konzept, Backend-Basis, erste Hardware | 10–20 h/Woche · ~13 Wochen | ≈ 130–260 h |
| Jan – Jun 2027 | Vollzeit-Fokus: Bau, Oberfläche, Tests | 40–50 h/Woche · ~26 Wochen | ≈ 1040–1300 h |
| bis zur Abgabe | inkl. Gehäuse, Schaltpläne, Fertigung und Dokumentation | 9 Monate | ≈ 1200–1550 h |
// 07 — Kontakt
Jede Festlegung trägt eine Nummer — D-… für Entscheidungen, R-… für Regeln. Deshalb lässt sich jede Frage genau an der Stelle beantworten, an der sie entstanden ist. Wer den Stand mitverfolgen will, findet den Code auf GitHub.
Gebaut ist noch nichts: Das Projekt steht bei Konzept und Entscheidungen, die Hardware folgt ab Herbst 2026. Bis dahin wächst diese Seite mit — jede getroffene Entscheidung kommt hier dazu.