Skip to content
Projekte
2025 • Embedded Systems / IoT

FreeRTOS IoT Sensorknoten

ESP32-S3 Knoten liest Umweltdaten mit separaten RTOS-Tasks.

Eine C++ basierte Firmware-Architektur, die FreeRTOS nutzt, um Sensor-Timing, Benutzereingaben und Telemetrie gleichzeitig zu verarbeiten, ohne die Ausführung zu blockieren. Entwickelt für die ESP32-S3 Plattform.

Firmware Architektur

Das System ist in priorisierte Tasks unterteilt, die über Queues und Event Groups interagieren:

  • Task Scheduling: Hochpriorisierter 'SensorTask' für präzises DHT22-Timing, entkoppelt vom Netzwerk.
  • ISR & Queues: Tastendrücke lösen Interrupts (ISRs) aus, die Nachrichten an die 'InputTask'-Queue senden (kein Polling).
  • Task Communication: 'TelemetryTask' konsumiert Daten aus der Sensor-Queue und puffert sie für MQTT-Versand (mit Exponential Backoff).

Zuverlässigkeit & Performance

Uptime > 99,9% in lokalen Dauertests (7 Tage Dauerbetrieb).

Tech Stack

C++ · FreeRTOS · ESP32-S3 · MQTT · CMake · BLE

Links

Quellcode ansehen (GitHub)