Sichere BLE-MQTT-Monitoring-Plattform
Entwickelt eine Raspberry-Pi-5-Monitoring-Plattform, die BLE-Sensordaten erfasst, den Transport ueber TLS-abgesichertes MQTT schuetzt, Ereignisse in Node-RED verarbeitet, Metriken in InfluxDB speichert und in Grafana visualisiert.




Ueberblick
Dieses Projekt fuehrt mehrere Aufgaben in ein durchgaengiges System zusammen, das lokal auf einem Raspberry Pi 5 laeuft. Statt BLE, MQTT, Dashboards und Speicherung als getrennte Uebungen zu zeigen, ist der Stack als eine deploybare Monitoring-Plattform mit sicherer Nachrichtenuebertragung, Observability und GitHub-sicherem Secret-Handling aufgebaut.
Problem
Getrennte aufgabenartige Teilschritte vermitteln keine wirkliche Engineering-Tiefe. Das System musste zu einer zusammenhaengenden Plattform mit sicherem Transport, Secret-Management, Verarbeitung, Speicherung, Dashboards und einer sicher publizierbaren Repository-Struktur zusammengefuehrt werden.
Loesung
Ich habe BLE-Collector, Mosquitto-Broker, Node-RED-Flow, InfluxDB und Grafana zu einem Podman-Compose-Stack auf dem Raspberry Pi 5 zusammengefuehrt. Der MQTT-Verkehr ist mit X.509-Zertifikaten geschuetzt, Grafana- und InfluxDB-Zugangsdaten werden ueber Podman-Secrets injiziert, Node-RED-Credentials aus der hartkodierten Konfiguration herausgeloest und das oeffentliche Repository mit .env.example, .gitignore und einem wiederverwendbaren create_secrets.sh-Workflow ausgestattet.
Architektur
Node
BLE-Sensorknoten senden Umgebungs-Telemetrie von ESP32-basierten Geraeten in den lokalen Gateway-Pfad.
Edge
Der Raspberry Pi 5 hostet containerisierte BLE-Ingestion, Mosquitto, Node-RED, InfluxDB und Grafana als lokalen Monitoring-Stack, verwaltet mit Podman Compose.
Cloud
Das Design ist local-first und benoetigt keine Public Cloud; verarbeitete Telemetrie kann spaeter bei Bedarf an entfernte Dashboards oder Alerting-Systeme weitergeleitet werden.
Sicherheit
Gegenseitiges TLS mit X.509-Zertifikaten schuetzt den MQTT-Verkehr, Podman-Secrets kapseln Admin-Passwoerter und Token-Schluessel, und das GitHub-Repository schliesst lokale Env-Dateien, generierte Tokens und privates Zertifikatsmaterial aus.
Zuverlaessigkeit
Entkoppelte Services, Restart-Policies, Health Checks und ein wiederholbarer Secret-Bootstrap machen die Plattform nach Servicefehlern, Host-Wechseln oder frischen Pi-Setups leichter neu ausrollbar.
Wesentliche Merkmale
- BLE-Ingestion auf dem Raspberry Pi 5 mit MQTT als Rueckgrat des Transports
- Mosquitto abgesichert mit TLS und Client-Zertifikaten
- Node-RED-Verarbeitung, InfluxDB-Zeitreihenspeicherung und Grafana-Dashboards
- Podman-Compose-Orchestrierung mit Podman-Secrets und GitHub-sicherer Repository-Struktur
Ergebnisse und Wirkung
- Mehrere getrennte Aufgaben in eine zusammenhaengende Monitoring-Plattform ueberfuehrt
- Ein oeffentliches GitHub-Repository veroeffentlicht, ohne Secrets oder privates Key-Material mitzuliefern
- Ein staerkeres Portfolio-Signal fuer Systemintegration, Observability und sicheres Deployment auf dem Raspberry Pi geschaffen
Tech-Stack
Artefakte
Verwandtes Projekt
Die angrenzende Fallstudie zeigt, wie dieses Projekt in die groessere Portfolio-Story passt.
Telemetrie-, Verarbeitungs- und Dashboard-Schicht
Entwickelt die Node-RED-, InfluxDB- und Grafana-Schicht, die MQTT-Telemetrie in gespeicherte Metriken und operatornahe Dashboards ueberfuehrt.