CASE 01 / Embedded firmware / real-time audio / SIP-RTP
ESP32-S3 Connected Voice Device
Building and debugging a real-time voice device across firmware, codecs, audio timing, packet transport, PBX integration and hardware behavior.
This project sits at the intersection of embedded firmware, audio engineering, networking, VoIP, hardware integration, and product engineering. The device uses an ESP32-S3 with ES7210 microphone and ES8311 speaker codecs, communicates over SIP/RTP, and connects to a PBX-based telephony backend.
The symptom is not the layer.
A call that connects is not necessarily a usable voice system. Crackle can originate in I2S scheduling, buffer starvation, sample-rate conversion, clocking, RTP jitter, packet timing, codec configuration or playback. Echo can originate in acoustic coupling, AEC reference routing, channel mapping, gain or processing configuration.
Trace the complete path.
How I worked the problem.
- 01
Separated capture, processing, transport, timing and playback instead of treating every symptom as a generic audio-quality problem.
- 02
Used controlled A/B firmware builds, serial logs, packet captures and repeated calls to isolate one section of the media path at a time.
- 03
Worked across I2S audio, codec integration, microphone/reference routing, AEC, jitter buffering, clocked playback, SIP registration and PBX behavior.
- 04
Extended the work into Wi-Fi provisioning, device identity, OTA architecture, power behavior, e-paper UI, physical controls and schematic review.
Make the system observable enough to explain.
The work produced a stable ESP32-S3 SIP/RTP voice path after iterating through audio timing, channel routing, AEC, buffering and playback problems. The important result was not merely placing a call; it was making the complete media path observable enough to diagnose failures across layers.
Artifacts that carry the technical story.
The case study is structured around real engineering evidence rather than generic product imagery.