Skip to content
Projects
Current IoT and Edge ProjectImplemented2026

Secure BLE MQTT Monitoring Platform

Built a Raspberry Pi 5 monitoring platform that ingests BLE sensor data, secures transport with TLS-enabled MQTT, processes events in Node-RED, stores metrics in InfluxDB, and visualizes them in Grafana.

IoTMonitoringSecurityMQTT

Core stack

Raspberry Pi 5PythonPodman ComposeMosquitto MQTTNode-RED
Secure BLE MQTT Monitoring Platform image 1
Secure BLE MQTT Monitoring Platform image 2
Secure BLE MQTT Monitoring Platform image 3

Key results

TLS / X.509
Secured MQTT transport
Podman Compose
Containerized services
InfluxDB
Time-series storage
Grafana
Telemetry visualization

Case Snapshot

Role

End-to-end IoT integration: BLE ingestion, secure MQTT transport, containerized services, telemetry processing, time-series storage, dashboarding and operational documentation.

Scope

I combined the BLE collector, Mosquitto broker, Node-RED flow, InfluxDB, and Grafana into a Podman Compose stack on Raspberry Pi 5. MQTT traffic is protected with X.509 certificates, Grafana and InfluxDB credentials are injected...

Constraints

Mutual TLS with X.509 certificates protects MQTT traffic, Podman secrets isolate admin passwords and token keys, and the GitHub repository excludes local env files, generated tokens, and private certificate material. Decoupled...

Architecture

System design flow

Technical Decisions

  • BLE ingestion on Raspberry Pi 5 with MQTT as the backbone transport
  • Mosquitto secured with TLS and client certificates
  • Node-RED processing, InfluxDB time-series storage, and Grafana dashboards
  • Podman Compose orchestration with Podman secrets and GitHub-safe repo structure

Challenges

  • Separate homework-style steps do not communicate real engineering depth. The system needed to be combined into one coherent platform with secure transport, secret management, processing,...
  • Mutual TLS with X.509 certificates protects MQTT traffic, Podman secrets isolate admin passwords and token keys, and the GitHub repository excludes local env files, generated tokens, and...
  • Decoupled services, restart policies, health checks, and a repeatable secret bootstrap script make the platform easier to redeploy after service failures, host changes, or fresh Pi setups.

Lessons Learned

  • Turned several separate assignments into one coherent monitoring platform
  • Published a public GitHub repository without shipping secrets or private key material
  • Shows systems integration, observability, and secure deployment on Raspberry Pi

Future Improvements

  • Update diagrams when the architecture changes materially.
  • Keep documentation concise: align README, architecture decisions, and screenshots.

Tech Stack

Raspberry Pi 5PythonPodman ComposeMosquitto MQTTNode-REDInfluxDBGrafanaBLETLSX.509

Artifacts

Related Project

Follow the adjacent case study to see how this project connects with the rest of the work.

Telemetry Processing and Dashboard Layer

Built the Node-RED, InfluxDB, and Grafana layer that transforms MQTT telemetry into stored metrics and operator-facing dashboards.