MTA STM32U5 Subway LED Display
Project information
- Category: Embedded Systems, IoT, Real-Time Display
- Client: Personal Project
- Project date: June 2026
- Project URL: MTA STM32U5 Subway LED Display
- Platform: STM32U585, MXCHIP EMW3080 Wi-Fi, HUB75 32x16 LED matrix
- Role: Firmware and systems architect
- Stack: FreeRTOS, lwIP, mbedTLS, GTFS-Realtime, Protobuf
- Build: GNU Arm Embedded Toolchain
Real-time MTA LED Display on STM32U5
This project is a subway arrival display built on an STM32U585 MCU, designed to fetch encrypted MTA GTFS-Realtime data over MXCHIP Wi-Fi and render train arrival times on a 32x16 HUB75 LED panel. The firmware integrates FreeRTOS task orchestration, secure TLS networking, custom protobuf parsing, RTC synchronization, and high-performance LED matrix rendering.
The system boots with MCU peripheral and RTOS initialization, then starts a network engine, logging consumer, LED UI task, and MTA client. Once Wi-Fi and SNTP time sync are established, the firmware polls MTA feed endpoints, extracts C/G route arrival times, converts them to minute values, and streams them to the HUB75 framebuffer with smooth vertical scrolling.
Key Highlights
- Integrated MXCHIP Wi-Fi module with lwIP and secure HTTPS via mbedTLS.
- Built a custom GTFS-Realtime protobuf client for MTA C/G train arrival data.
- Designed a HUB75 LED matrix driver with double-buffered bitplane rendering and DMA-friendly GPIO updates.
- Implemented SNTP time synchronization and RTC updates for accurate timestamp display.
- Architected a modular FreeRTOS task topology for UI, networking, logging, and data processing.
Technical Stack
- STM32U585 MCU, B-U585I-IOT02A board
- FreeRTOS with CMSIS-RTOS V2
- MXCHIP EMW3080 Wi-Fi via SPI and GPIO control plane
- lwIP network stack, DHCP, SNTP, HTTPS
- mbedTLS TLS client and hardware RNG entropy
- HUB75 32x16 RGB LED matrix rendering
Why this matters
This project demonstrates a full embedded-to-cloud pipeline: secure device connectivity, live transport data ingestion, low-latency display rendering, and robust task synchronization on a constrained MCU platform. It blends hardware design, firmware engineering, and networking into a polished real-time IoT solution.