I’d like to share BPU, a high-speed serial streaming engine I built using ESP32 devices.
BPU is a small experimental project that demonstrates a reliable data pipeline:
ESP32-WROOM → ESP32-S3 → PC
Data is transmitted over UART at 921600 baud, framed with COBS, validated with CRC16, and visualized in real time on the PC using Python and matplotlib.
The main goal of this project was to stress-test embedded streaming reliability under high throughput and noisy conditions.
Features:
- COBS framing (0x00 delimited packets) - CRC16-CCITT integrity validation - Sequence number checking - High-rate draw point generator - Real-time visualization - Throughput and error statistics
The system continuously sends drawing data from the WROOM, forwards it through the S3 as a USB bridge, and renders it live on the PC.
This helped me experiment with:
- Packet loss detection - Latency behavior - Error recovery - Buffer stability - Sustained throughput
Demo and source code are available here: https://github.com/choihimchan/bpu-stream-engine
This is still an early prototype and learning project, but I’d love to hear feedback, ideas, or suggestions for improvement.
Thanks for reading.