← Back to Projects

Autonomous Smart Firetruck & Real-Time IoT Dashboard

IoT, Robotics & Infrastructure Integration Project

In this collaborative IoT project, our team of 5 students built an autonomous smart firetruck robot. The physical firetruck uses an ESP32 microcontroller, flame sensors to detect fire direction, and a motor-pump system to extinguish target fires.

As the Integration & DevOps Engineer, I designed the system's infrastructure. I connected the hardware sensors to the backend by writing WebSocket STOMP clients, streaming live metrics (such as flame status and water tank levels) to the web dashboard. For deployment, I built automated CI/CD pipelines in GitHub Actions and deployed our containerized services across Staging and Production environments in OKD (OpenShift Kubernetes Distribution).

Deployment & Pipeline Topology Explorer

Interactive map of the software delivery pipeline and OKD routing. Click on the nodes to see deployment configurations, yaml specs, and firmware codes.

Deployment Topology
OKD / KUBERNETES CONTAINER CLUSTERSTAGING ENVIRONMENTPRODUCTION ENVIRONMENTPush main => Deploy StagingPush tag v* => Deploy ProductionWebSocket Stream (STOMP)STOMP PushSTOMP PushGitHub RepositorySource ControlGitHub ActionsCI/CD PipelinesESP32 FiretruckIoT Client NodeStaging IngressOKD RouterStaging FrontendNext.js PodStaging BackendSpring Boot PodStaging DatabaseDatabase PodProd IngressOKD RouterProd FrontendNext.js PodProd BackendSpring Boot PodProd DatabaseDatabase Pod
Click on any node in the architecture map above to inspect the integration pipeline, firmware protocols, and OKD configurations.

Infrastructure & Integration Details

  • Container Orchestration (OKD)

    Configured namespaces, deployment pods with replicas, services, and route resources to route ingress traffic to the React and Spring Boot servers.

  • Automated CI/CD

    Built multi-stage workflows in GitHub Actions to compile packages, trigger tests, build Docker containers, and issue commands to the cluster API.

  • WebSocket Telemetry

    Wrote firmware WebSocket libraries on ESP32 to push telemetry payloads containing device IDs, water capacity percentages, and status alerts.

  • Reliability & Fallbacks

    Configured persistent heartbeats on the hardware client. If no signal is received by the broker within 30 seconds, it triggers an offline warning on the dashboard.