A self-built live translation device on an ESP32-S3: it listens, transcribes, translates, and shows both the original and the target language on a display — with a repeat function that speaks the translation back.
Status: work in progress. The firmware project and hardware bring-up are set up; the backend is still a scaffold. This is a personal project I build on alongside my studies.
| Part | Role |
|---|---|
| ESP32-S3 (DevKitC-1, 16 MB flash, PSRAM) | Main controller |
| I²S microphone | Audio capture |
| MAX98357 + 3 W / 4 Ω speaker | Audio output for the spoken translation |
| 1602A LCD | Text output (an OLED with a custom GUI is planned) |
- Firmware in the Arduino framework via PlatformIO
- Speech recognition through Whisper, currently via cloud APIs; self-hosting the models is the goal
- Python backend (scaffold) for transcription, translation, and TTS
- Development against an Ubuntu home server over SSH, with Docker
pio run -t upload # build and flash the firmware
pio device monitor # serial output at 115200 baudHandheld translators exist, but doing it end to end — microphone, embedded audio pipeline, model, display — is where the interesting problems are: latency, limited RAM, and audio quality on a microcontroller.
More of my work: sadowski-dos-santos.de