// PROJECT 002

AWS-Connected Fleet Telematics Gateway

Linux-based OBD-II telematics device with Yocto BSP, MQTT telemetry to AWS IoT Core, over-the-air firmware updates via AWS Greengrass v2, and real-time anomaly detection running on edge.

Embedded LinuxYoctoAWS IoTMQTTPythonOBD-IIC
VEHICLE OBD-II / CAN i.MX8M GATEWAY Linux 6.1 / Yocto Greengrass v2 TFLite anomaly det. LTE · WiFi · BLE CAN AWS CLOUD IoT Core / MQTT Greengrass OTA DynamoDB (telemetry) Lambda (alerts) S3 (OTA bundles) MQTT/TLS FLEET DASHBOARD React · Grafana OTA FLOW: S3 bundle → Greengrass → SWUpdate → A/B swap → U-Boot rollback Avg delta update: 18MB · Cellular cost: ~0.4 USD/device · Rollback: auto on 3 failed boots
2,000+Devices Deployed
<50msTelemetry Latency
OTAGreengrass v2
99.7%Uptime
SoCNXP i.MX8M Mini · ARM Cortex-A53 @ 1.6GHz
OSYocto Kirkstone · Linux 6.1 LTS
ConnectivityLTE Cat-4 · Wi-Fi 802.11ac · BLE 5.0
OBD InterfaceISO 15765-4 CAN · ISO 9141 · J1850
CloudAWS IoT Core · Greengrass v2 · S3 · DynamoDB
OTASWUpdate · A/B partitions · signed .swu bundles
Edge AIAnomaly detection — TFLite · 8 fault classes

Project Overview

Built a production fleet telematics gateway deployed in 2,000+ commercial vehicles. The device reads OBD-II data from the vehicle CAN bus, processes it locally for anomaly detection, and streams telemetry to AWS IoT Core over LTE with sub-50ms end-to-end latency.

Yocto BSP Development

Created a custom meta-fleet-gw Yocto layer for the NXP i.MX8M Mini SoC:

AWS Greengrass OTA Pipeline

# Greengrass component — telemetry publisher
ComponentName: com.fleet.TelemetryPublisher
ComponentVersion: 2.1.0

Manifests:
  - Platform: {os: linux}
    Lifecycle:
      Run:
        Script: |
          python3 /opt/fleet/telemetry_daemon.py             --endpoint $AWS_IOT_ENDPOINT             --topic fleet/{device_id}/telemetry             --interval 1000

Edge Anomaly Detection

Trained a 4-class TFLite model on Engine RPM, throttle position, coolant temp, and MAF sensor data to detect: harsh braking, over-revving, idling excess, and sensor fault. Running at 4ms inference on Cortex-A53 — triggers cloud alert within 200ms of anomaly detection.

Results

← Previous
EV Battery Management System
Next →
BLE Asset Tracking System
← All Projects