GEA Introduces Two Open-Source AI Apps for an ESP32-S3 Watch Board
Summary
GEA has released Amuse and Spark, two open-source conversational applications that run on the Waveshare ESP32-S3 Touch AMOLED 2.06 watch-shaped board; Amuse also supports the 1.8-inch sibling board. Both applications are written in TypeScript, JSX, and CSS, then compiled into native firmware with GeaStack. Spark is a voice agent that opens a WebSocket directly from the board to OpenAI's Realtime API, identified in the article as gpt-realtime-2.1. It streams microphone audio to the service and plays responses as they arrive, with full-duplex audio allowing users to interrupt the agent. Spark includes four selectable characters, KITT, Nova, Echo, and Flora, each defined by its own voice, persona, UI component, stylesheet, and optional Canvas animation. The conversation logic runs in a Worker that GeaStack compiles alongside the interface. Amuse presents five live video characters, Zuck, Alfred, Felipe, Jojo, and Todd, using LemonSlice avatars with ElevenLabs voices. It creates a hosted session, but requires a Python 3.11-or-later bridge on the same network to relay microphone, audio, and video between the board and the session; one bridge can serve several boards. Native echo cancellation keeps the microphone open while an avatar speaks. The repositories include setup instructions using npm, GeaStack, and ESP-IDF. The article warns that API credentials are written into firmware and advises keeping environment files and built binaries private. Both projects are intended to be forked and customized with new personas, characters, or boards.