$ ls ~/projects
Selected builds
Các dự án embedded, IoT và computer vision mình đã thực hiện — từ firmware FreeRTOS đến pipeline nhận diện thời gian thực bằng YOLOv8.
TFT Instrument Cluster Firmware on i.MX RT1170 (Zephyr RTOS)
2026 — Ongoing
- Building a Zephyr RTOS-based firmware for an automotive TFT instrument cluster running on an NXP i.MX RT1170 (Cortex-M7)
- Configured pinctrl and devicetree overlays for FlexSPI (NOR flash), SEMC (SDRAM), LPI2C, and CAN peripherals to bring up custom hardware
- Integrated a companion BLE + IMU module (TI SimpleLink CC2340 / CC2745) over UART/I2C for peer BLE communication and motion/crash detection
- Interfaced CAN bus (via TCAN1044A transceiver) for vehicle data reception, UDS diagnostics, and CAN sleep/wakeup handling
- Bringing up a cellular/GNSS modem (Quectel EC800G) over UART and USB for connectivity, location tracking, and telemetry data upload
- Rendering the cluster UI on a 480×272 RGB666 TFT LCD using LVGL running on top of Zephyr
- Porting USB CDC-ECM (virtual Ethernet over USB) using the CherryUSB stack on the RT1170's chipidea/EHCI-based USB controller, including cache-safe DMA buffer handling for the Cortex-M7 D-Cache
- Designed firmware architecture around Zephyr subsystems/managers: Fault Manager, Firmware Update Manager (A/B image), Persistent Storage, Provisioning & PKI, and Device System State management
tech: Zephyr RTOS · i.MX RT1170 · Devicetree/Pinctrl · CAN / CAN-FD · BLE (CC2340/CC2745) · LVGL · CherryUSB (CDC-ECM) · Quectel EC800G (Cellular/GNSS) · West · CMake
Vehicle Tracking System using IP Camera
Dec 2025 – Feb 2026
- Integrated RTSP camera stream into a Python application on Linux; built a real-time video pipeline using OpenCV
- Applied YOLOv8 object detection to identify and track vehicles; computed and logged X/Y coordinates for downstream analysis
tech: Python · OpenCV · YOLOv8 · NumPy · Linux
Smart Auto Door System — Firebase & Web-Based Remote Control
2024 – 2025
- Designed and implemented a full-stack smart door system on ESP32 running FreeRTOS, with preemptive multitasking handling sensor input, motor control, and cloud sync concurrently
- Architected multi-task firmware in C: dedicated FreeRTOS tasks for door logic, Firebase sync, sensor polling, and error handling — each isolated to prevent blocking
- Integrated Firebase Realtime Database for bidirectional state sync — door status, open/close commands, and access logs mirrored between device and cloud in real time
- Implemented domain-based web control: users access and operate the door via a custom domain URL backed by Firebase, controllable from any browser
- Built a fault detection & mistake-checking mechanism in C: validates sensor readings, detects stuck-door states, motor faults, and connectivity drops — triggers alerts and safe fallback modes automatically
- Supported dual-mode operation: fully automatic (PIR/proximity sensor triggers) and manual override via web UI
- Implemented debounce logic, fail-safe open/close limits, and a watchdog timer for reliable operation during power or network outages
tech: ESP32 · FreeRTOS · Embedded C · Firebase Realtime DB · Web Control · Motor Control · Fault Detection
Air Quality Monitoring System using ESP32 & Blynk
Jun 2025 – Aug 2025
- Collected real-time air quality data (dust, gas) using MQ-135 and GP2Y1014AU sensors; implemented multi-channel alerts: push notification, buzzer, and LED indicator
- Designed a monitoring dashboard on Blynk Cloud for live sensor visualization
tech: ESP32 · C/C++ · Blynk Cloud · IoT · Sensor Integration