Hey,
ich habe vor einiger Zeit den ESP8266 entdeckt. Nun habe ich ein paar kleine Dinge, wie z.B. Steckdosensteuerung oder eine Steuerung meines LED-Stripes, umgesetzt.
Nun möchte ich das ganze aber irgendwie verbinden und auch erweiterbar halten.
Geplant ist erstmal ein zentrales System in Node.js zu schreiben, welche das Handling übernimmt. Als Protokoll, um mit den ESPs zu kommunizieren, würde ich einfach MQTT.
Bei der Architektur des ganzen Systems bin ich mir aber nicht sicher, da jeder ESP Aufgaben aus einem "Pool" haben kann wie z.B..:
Nr. 1 hat LED und 433 Steuerung
Nr. 2 hat nur 433
etc.
Hier mal ein paar meiner Brainstorming Ideen:
- Alle ESPs haben die selbe Software und die Zentrale speichert die Informationen bzgl. der PIN-Belegung und der eigentlichen Funktion. -> M.Mn. nach sehr Fehleranfällig, aber am einfachsten
- Ein ESP sendet dem Server seinen Hostnamen beim Start. Der Server schaut dann in der Datenbank, ob vorhanden. Wenn ja -> PIN-Belegung etc. weitergeben für setup. Wenn nein -> Benachrichtigung + Eintrag für ESP ohne Funktion
- Webinterface für Art CronJobs und API (Grundgerüst bereits vorhanden)
- Möglichkeiten Sensordaten in InfluxDB zu speichern
- Wie den ESP ansprechen? (MQTT, klar, aber wie nennt man die Events? Feature technisch oder doch nach ESP-Hostnamen?)
Ist das so sinnvoll? Was würdet ihr vorschlagen?
Wie modular ließe sich so etwas gestalten?
Habe aktuell ein Brett vorm Kopf und kann mir keine sinnvolle Struktur überlegen.
(Die Programmierung ist definitv kein Problem, nur die Strukturierung des Ganzen)
Falls ihr Fragen zu meinem Brainstorming habt, sagt Bescheid, dann versuche ich das Ganze nochmal ausführlich zu umschreiben.
Freue mich auf eure Ideen!
- Cludch