






Ava Pro – Implementing the Home Assistant ESPhome Android kiosk terminal project in just 18MB, integrating satellite voice, local voice processing, Bluetooth proxy, LAN calling and Sendspin multi-room music synchronization, Mod store customization...
I am the author of Ava Pro, a fully self-contained voice satellite and kiosk project for Android 5–16, built around ESPHome. First of all, I would like to thank everyone for every recommendation, share, and piece of honest feedback. Without the long-term testing by community members and the frank discussions and comments on Reddit, there would be no Ava Pro today. By continuously pointing out those small but impactful issues in daily use, everyone has gradually given me the confidence to seriously introduce this project to more people.
I have been developing Ava Pro for over half a year. Since it is called a voice assistant, the voice experience has always been its most important focus. To ensure it runs smoothly on older phones, low-spec tablets, and smart displays, I restructured the wake-word detection, echo cancellation, noise reduction, gain control, and voiceprint functions, and rewrote many performance-sensitive paths in C/C++.
For this reason, I restructured the dual wake-word engine. The first engine retains the lightweight and mature microWakeWord; the second engine, vsWakeWord, offers capabilities significantly different from the original Ava Pro. It follows the ONNX/openWakeWord model approach but does not cram the complete ONNX Runtime, training tools, and general-purpose operators into the device. Those components are powerful but contain many capabilities that are completely unnecessary for wake-word detection. Packaging them as-is would not only significantly increase the installation size but also waste the limited memory and processing resources of older devices. Therefore, I reimplemented a lightweight ONNX model reader in C++, parsing only the structures and operators truly needed by the wake-word model, and rewrote the related feature extraction and model execution functions.
Furthermore, Ava Pro combines a custom-tuned software echo cancellation system, intelligent noise reduction, intelligent gain control, and lightweight 16-dimensional voiceprint matching. It can reduce playback bleed during voice interactions, suppress persistent background noise, and perform speaker matching without requiring high-performance hardware. Many performance-sensitive speech paths have also been rewritten in C/C++. The open-source components used were not simply bundled into the installation package; instead, they were individually refactored, trimmed, recompiled, and compressed according to how Ava Pro actually uses them. This is why the Lite APK has remained below 20 MB for a long time.
Therefore, even with voice, dashboard, music, Bluetooth, calling, and numerous expansion capabilities, the official Ava Pro Lite APK remains below 20 MB and is currently around 18 MB. This makes it considerably smaller than many similar kiosk and voice-panel applications. The 20 MB limit is not a random number; it is a long-term boundary I have set for Ava Pro. We cannot keep adding features at the expense of the already limited storage on older devices. After installing Ava Pro, these devices should still have enough room for Home Assistant, music players, and other genuinely useful Android apps.
Ava Pro has gradually grown to fit real-world home environments, including a Quick Entity panel, home screen, widgets, browser, Bluetooth proxy, presence detection, LAN voice and video calls, and Music Assistant/Sendspin multi-room synchronization, with per-device sync delay, a five-band equalizer, and lyric timing adjustments. Every feature can be disabled individually, and even the voice pipeline is optional.
The screen experience has also been refined: Smart AOD, pixel shift, and background load reduction work together to reduce the risk of burn-in and unnecessary power consumption during extended screen use. The redesigned Dawn Wallpaper brings together wallpaper, time, weather, and Home Assistant status to create a more comfortable experience when viewed from across the room. I especially encourage existing Ava Pro users to experience these changes firsthand, as many features cannot be fully covered in a single introduction.
Integration for beginners is straightforward: install Ava Pro, grant the microphone and overlay permissions, and then enable General Services. Next, in Home Assistant, go to Settings → Devices & Services → Add Integration, search for ESPHome, and select the automatically discovered Ava Pro device. No MQTT or HACS is required. You can also install HA STT and HA Edge TTS from the Mod Store to create your own voice pipeline through Wyoming.
Special thanks to video creator Lone Baggie.
Without his long-term hands-on use, recordings, and feedback, there would be no Ava Pro today.
You can first watch his real-world usage video.
Then use his shared Home Assistant Blueprints and HTML Views.
Together, they can help you quickly build your own Ava Pro kiosk.
Bluetooth proxy and LAN video calling are distinctive extensions, but they are not Ava Pro’s main focus. Its true and ongoing focus remains on how voice, dashboards, and everyday interactions can be naturally integrated into the home.
If you encounter any problems or find something unclear, please leave a comment and let me know. I genuinely want to hear what still needs improvement, and I will do my best to address it.