A complete ROS 2 system that converts live LiDAR point clouds into dynamic navigation mesh obstacles. Uses a C++/Python hybrid architecture: a C++ voxelizer ingests LiDAR at sensor rate, subtracts the static map with Chebyshev neighbourhood probes, and publishes only dynamic foreground points. A Python co-simulation node clusters those points into cylinders and injects them into a Detour tile cache — rebuilding only the overlapping tiles in under a millisecond each.
C C++ Python ROS 2 PCL Recast/Detour Open3D PyQt5 CMake
A dual-ESP32 CAN bus demonstration featuring DBC-driven code generation, an event-driven FreeRTOS architecture with graceful degradation, and an LVGL dashboard on a TFT touchscreen.
A custom over-the-air firmware update system that overwrites its own running flash partition from IRAM, eliminating the need for duplicate OTA partitions and maximizing application space.
Real-time dual-compressor HVAC control system with Arduino FreeRTOS and Python desktop GUI — thermal simulation, load balancing, and bidirectional serial communication.
A computer vision tracking system that maintains consistent object identities through occlusions and re-appearances by combining DeepSORT with DINOv2-based deep re-identification.
A browser-based VS Code-style IDE simulation that teaches embedded Linux development with the Yocto Project through 20 hands-on, simulated terminal steps — from host setup to a bootable ARM image.
A complete Yocto/Kirkstone BSP layer that builds a custom out-of-tree IIO kernel module simulating a 3-axis accelerometer, packages it into a bootable QEMU image, and runs a user-space reader via systemd — no hardware required.