knoop7/Ava-Pro

Ava turns any Android 5+ device into a voice-first Home Assistant kiosk. Native C++ under the hood, so a 10-year-old tablet still listens, talks, and runs the house - with AirPlay-grade audio in every room, all in sync.

Ava Pro – Home Assistant’s Android Companion

Ava Pro is a native Android app that turns any Android device (phones, tablets, fire‑sticks, car infotainment units, etc.) into a full‑featured Home Assistant client. It runs as a background service and provides on‑device voice interaction, Bluetooth proxying, intercom, sensor integration and UI overlays – all without needing MQTT, custom Home Assistant integrations or additional hardware like an ESP32.

Core ideas

  • On‑device AI – Voice wake‑word detection, voice‑print recognition and ambient‑sound classification run locally via ONNX Runtime / TensorFlow Lite, so no cloud calls are required.
  • Native performance – The engine is written in C++ and compiled as a regular Android app, giving near‑zero idle CPU usage and no overheating on wall‑mounted tablets.
  • Single‑install solution – One APK replaces the typical ESPHome BLE proxy, dedicated voice satellite, and intercom hardware.

Main features

Category What it does
Screen overlays Floating panels show voice feedback, clock, weather, media controls, quick‑switches – visible above any other app and dismissible at will.
Voice Custom wake‑words (dual‑wake), acoustic echo cancellation, <120 ms on‑device voice‑print identification, ambient‑sound detection (glass break, baby cry, doorbell, siren).
Bluetooth proxy Acts as an ESPHome BLE proxy, handling private address resolution, RSSI‑based distance filtering and screen‑off scanning – extending BLE coverage without extra hardware.
Audio LAN‑based intercom and voice messaging, loss‑less multi‑room sync via Sendspin, seamless audio across overlay transitions.
Display Multi‑layer floating UI, animated notifications, screensaver with adaptive‑on‑display, optional Home‑Launcher mode.
Camera Direct binary pipeline for snapshots and motion detection, exposed as Home Assistant sensors (no HTTP bridge).
Sensors Exposes ESPHome‑style sensors (light, magnetic field, proximity, battery, Wi‑Fi, storage, memory, uptime) with a foreground service that stays alive even with the screen off.
Fleet management UDP LAN discovery + ADB, remote screen control, shell access, log retrieval, config push, passcode‑protected deep‑link access.
Mods Runtime module loader (DexClassLoader) lets you add offline ZIP packs for DL‑DLNA, AirPlay, Edge TTS (400+ voices), offline STT, Zigbee gateway, biometric auth, GPS, on‑device AI, RTSP/MJPEG camera streaming, and device‑specific packs (Echo Show, Portal, etc.).

Getting started

  1. Install – Download the latest APK from the GitHub Releases page and install it on your Android device.
  2. Connect – Open Home Assistant; Ava appears automatically under Discovered ESPHome devices. Tap Add to pair.
  3. Extend – Pair with community‑built Home Assistant blueprints and HTML dashboards (e.g., @lone‑baggie’s repositories) for ready‑made scenes and polished UI.

Technical lineage & ecosystem

Ava Pro builds on the original brownard/Ava project and integrates tightly with:

  • Home Assistant & ESPHome (core home‑automation platform)
  • WebRTC, Music Assistant, Sendspin (audio streaming)
  • openWakeWord / microWakeWord (wake‑word models)
  • ONNX Runtime & TensorFlow Lite (on‑device inference)
  • GeckoView, Shizuku, Jetpack Compose, Media3 (Android UI & media stack)
  • Protocol Buffers, Opus (data serialization & audio codec)

License & community

The app is released under CC BY‑NC‑ND 4.0 – free to share with attribution, but not for commercial use or redistribution of modified versions. The repository includes a Wiki with practical guides and a badge linking to a DeepWiki AI‑docs page.


In short: Ava Pro turns any Android device into a low‑power, on‑device AI hub for Home Assistant, handling voice commands, BLE proxying, intercom, sensors and rich UI overlays without extra hardware or cloud services.

Related

  • Project
  • Project
  • Project
  • Project
  • Project