esp_garden git · master
Distributed ESP sensor and actuator system (garden)
C++ 70.7% Markdown 18% C 10.7%git clone https://git.christianimmanuel.de/embedded/esp_garden.gitwget https://git.christianimmanuel.de/embedded/esp_garden/archive/esp_garden.tar.gzPlan Sprint 5
Kapitän: Christian Fischer
Aufgabe 1: Implementierung der Konfigurationsübertragung
Dieser Aufgabe wurde bereits erledigt https://git.ide3.de/hsnr/mic/esp_garden/-/commit/a5c6d5046f2be9be21775dc12e560c3f36c69cb0
Verantworliches Teammitglied: Christian Fischer
Erwarteter Zeitaufwand: 18h
Beschreibung
Implementierung des Empfangens von Konfigurationen des ESP-Sensors über ESP-Server und Datenbank.
- Beim ersten Starten des ESP-Sensor werden die einzelnen Konfigurationen der Sensoren vom ESP-Server erfragt. Der ESP-Server leitet die Anfrage an die Api-Schnittstelle weiter und wartet auf Antwort.
- Bei erfolgreicher Antwort leitet der ESP-Server die einzelnen Konfigurationen an den ESP-Sensor weiter.
- Der ESP-Sensor speichert die erhaltenen Konfigurationen im Flash-Speicher
- Nach einem Neustart oder nach einem Tiefschlaf lädt der ESP-Sensor die alten Konfiguration aus dem Flash-Speicher
- Das erfragen der Konfiguration ist über einen Api-Token abgesichert.
- Bei einer Änderung der Konfiguration antwortet die Api-Schnittstelle nach Erhalt von ESP-Sensor-Daten mit den Sensor-Namen der geänderten Konfigurationen. Der ESP-Server Leitet diese Namen an den ESP-Sensor weiter, sodass dieser die neuen Konfigurationen erfragen kann. (Ich bin nicht glücklich über diese Lösung, da eine Weitere Anfrage benötigt wird, aber derzeit ist es eine sichere Lösung sodass die Konfigurationen an ihrem Ziel ankommen)
Definition von „Spaß“
- Programmieren
- Strukturieren
- Organisieren
- Grübeln, Forschen, Verzweifeln
- Lernen
- Vollenden
- Erfolg & Scheitern
Definition von „erledigt“
Siehe Aufgabenbeschreibung.
Aufgabe 2: Verbindung von C und Assembler auf Hardwareebene
Verantworliches Teammitglied: David Schüring
Beschreibung
Entwickeln Sie eine funktionale LED-Kommunikationslogik, die über Assembler gesteuert und durch C-Code eingebunden werden kann.Erstellen Sie ein klares, modular aufgebautes CSS-Design zur Darstellung der Daten.
-Die Registeradressen für die LED-Steuerung müssen bekannt oder spezifiziert werden. -Die Schnittstelle zwischen Assembler und C (z. B. Funktionsaufrufe, Speicherbereiche) ist eindeutig zu definieren. -Die Weboberfläche muss auf die bereitgestellten Datenformate abgestimmt sein (z. B. JSON, einfache Statuswerte). -Die LED soll abhängig vom Kommunikationsstatus angesteuert werden – z. B. beim Senden, Empfangen, bei Fehlern oder Inaktivität.
Definition von „Spaß“
Definieren Sie die Aspekte der Aufgabe (falls möglich) die Motivation und Spaß bei der Ausführung der Aufgabe bringen könnten. Was könnte die Aufgabe interessant machen? Was könnte man daraus lernen?
Kreative Gestaltungsmöglichkeiten durch visuelles CSS-Design Direktes Feedback durch LED-Ansteuerung sichtbar machen Lernchance: Registerzugriffe, Speichersteuerung, visuelle UI-Prinzipien Erfolgserlebnis durch funktionierende, sichtbare Systemintegration
Definition von „erledigt“
Legen Sie die Bedingungen fest, unter denen die verantwortliche Person die Aufgabe als erledigt betrachten kann.
Die Aufgabe zur LED-Steuerung gilt als abgeschlossen, wenn die LED zuverlässig über Assembler-Routinen angesteuert werden kann und diese Routinen korrekt aus dem C-Code heraus aufgerufen werden.
Die Aufgabe zum Weboberflächen-Design gilt als abgeschlossen, wenn alle relevanten Statusinformationen klar, übersichtlich und verständlich dargestellt sind.
Beide Komponenten (LED-Steuerung und Webdarstellung) müssen dokumentiert, getestet und nutzbar sein.