Project

Singapore Polytechnic Internship

A remote monitoring dashboard for a fleet of autonomous vehicles.

JavaScriptExpress.jsReactMUIGoogle Maps PlatformffmpegIP Live StreamNode-REDMQTTMySQL

Overview

During my internship at Singapore Polytechnic, I worked on a remote monitoring dashboard for a fleet of autonomous vehicles. The team previously used a local Node-RED dashboard, but that setup was limited because it could only monitor one vehicle at a time.

As the fleet grew, there was a need for a central dashboard that could monitor multiple vehicles remotely. My project focused on building that dashboard and connecting the different data sources into one web-based system.

Motivation

The main goal was to make vehicle monitoring more scalable and accessible. Instead of relying on a local dashboard near the vehicle, supervisors needed a way to view vehicle data, camera feeds, and historical logs from a browser.

This made the project a mix of full-stack development, IoT data handling, database logging, and video streaming.

Implementation

I built a full-stack web application with a JavaScript backend and a React frontend. The backend received data from the vehicles, processed it, and stored it in a MySQL database hosted on Huawei Cloud.

The frontend displayed live vehicle information in a dashboard format. This included GPS location, speed, temperature, humidity, sensor readings, historical charts, and live camera feeds.

For the video stream, I worked with IP camera feeds and used ffmpeg to convert them into HLS format so they could be viewed through the web dashboard.

Key Features

  • Remote monitoring dashboard for multiple autonomous vehicles
  • Live GPS tracking with Google Maps Platform
  • Real-time sensor readings such as speed, humidity, and temperature
  • Historical charts for logged vehicle data
  • MySQL database for storing sensor logs
  • MQTT-based data pipeline for vehicle sensor data
  • IP camera feed converted to HLS using ffmpeg
  • Customizable sensor status colour coding for quick visual checks
  • React-based frontend using MUI components
  • Telegram and Email notifications

Tech Stack

  • JavaScript for the backend and frontend logic
  • Express.js for the server
  • React for the dashboard interface
  • MUI for UI components
  • Google Maps Platform for live vehicle tracking
  • MQTT for sensor data transmission
  • MySQL for data storage
  • Huawei Cloud for database hosting
  • ffmpeg for converting IP camera streams
  • Node-RED for vehicle-side sensor management
  • react-chartjs-2 for data visualisation

Outcome

The final dashboard allowed supervisors to monitor multiple autonomous vehicles remotely from a central web interface. It brought together live location tracking, sensor readings, historical charts, and camera feeds into one system.

The project also used widely adopted technologies like React, Express, MQTT, and MySQL, making the system easier to maintain and build upon compared to a purely local dashboard setup.

A GitHub repository is not available because the internship code was not permitted to be made public.