-
-
Notifications
You must be signed in to change notification settings - Fork 20
Mod Store
The Mod Store installs and manages extension modules for Ava. Mods add new features, device-specific hardware support, and custom integrations, all without modifying Ava itself.
0.6.2 reorganized the store into Catalog, Manage, and Updates pages; added offline ZIP import; and improved catalog refresh with regional mirror routing. 0.6.7 adapted the Mod update footer to available width so author names are no longer squeezed out.
Mods are lightweight Java modules that run inside Ava's process. They can expose new entities to Home Assistant, add device-specific hardware controls, or extend Ava with entirely new capabilities like AI assistants and Zigbee gateways.
What Mods Can Do:
- Add support for special hardware devices (smart screens, smart speakers, LED controllers)
- Expose sensors, switches, buttons, and text entities to Home Assistant
- Add GPIO, system interface, and service call capabilities
- Extend device attributes and automation flows
- Add custom Ava interaction logic
- Integrate open-source components like AI assistants and Zigbee coordinators
Two categories of mods:
- Device Support — hardware-specific mods for particular devices or chip platforms
- Features — general-purpose mods that work on any compatible Android device
- Go to Settings -> Advanced -> Mod Store
- Browse available mods
- Install, enable, disable, or manage mods
The Mod Store is now split into three pages:
| Page | Description |
|---|---|
| Catalog | Browse the online catalog of available mods and install new ones. |
| Manage | View, configure, enable/disable, import from ZIP, or uninstall mods already on the device. |
| Updates | Check for and install new versions of installed mods. |
Installed mods are loaded from the local registry first, while online catalog refresh now has its own loading state. Even when a device is offline, the network is slow, or the store is temporarily unavailable, you can immediately open Manage and enable, disable, or configure your existing mods.
- Go to Settings -> Advanced -> Mod Store
- Find the mod in the Available list
- Tap to download
- The voice service will restart to apply changes
- Find the mod in the Installed list
- Tap Enable or Disable
- The voice service restarts to apply changes
- Tap Update on an installed mod when a new version is available
- The voice service restarts to apply changes
- Find the mod in the Manage page
- Tap the mod → Uninstall
- Confirm deletion
You can install or update a mod from a local ZIP file without any network connection.
- Go to Settings → Advanced → Mod Store → Manage
- Tap Import mod
- Select a ZIP file from the device
- Ava validates the package and installs/updates the mod
The importer validates the package contents and accepts packages whose files are either at the ZIP root or inside one top-level folder. Importing the same mod ID again replaces the existing files while preserving its enabled state and configuration, then continues through the normal permission check and voice-service restart flow.
Local import is independent from the online store: it never reads the online catalog and is not blocked when the store fails to load. Imported mods stay independently managed and are not taken over by automatic store updates.
Some mods have configurable options. After installing a mod:
- Find the mod in the Installed list
- Tap Manage
- Configure available options
- If no options are available, "This module has no configurable options" is shown
Configuration options include toggles, text fields, number inputs, and dropdown selectors. Changes take effect after the voice service restarts.
Some mods require additional permissions:
- If a mod requires a permission that hasn't been granted, it cannot be enabled
- If permission is denied permanently, open app settings and allow the required permission for that module
- Some mods require ADB or root access for hardware-level operations
In Chinese- and Russian-language environments, catalog refresh tries several GitHub mirror routes concurrently and selects the first successful connection. Subsequent mod downloads reuse that route, fail over through the other mirrors if necessary, and finally fall back to GitHub directly. This reduces long waits at the loading state and interrupted downloads in regions where GitHub access is less reliable.
Other languages prefer GitHub directly with the same mirror fallback.
Mods can be enabled, disabled, and reloaded via ADB broadcast without opening the Ava UI:
# Enable a mod adb shell am broadcast -a com.example.ava.ACTION_SET_MOD_ENABLED --es mod_id echo_dot_led --ez mod_enabled true # Reload all enabled mods adb shell am broadcast -a com.example.ava.ACTION_RELOAD_MOD
See Mod Development for full broadcast reference.
| Topic | Description |
|---|---|
| Mod Catalog | All available mods with detailed descriptions, configurations, and use cases |
| Mod Development | Complete developer guide — manifest spec, entity types, manager API, voice pipeline, device hooks, build, publishing |
- Wait for the catalog page to finish its own refresh, or swipe down to refresh
- Check network connection
- If the store is unreachable, open Manage to work with already-installed mods or import from ZIP
- Mods may not be available for your device
- Check network access; in zh/ru regions, Ava will try mirrors automatically
- Check repository URL
- Check module configuration
- Try again later
Yes. In Mod Store → Manage → Import mod, select a valid mod ZIP from the device. See Import a Mod from ZIP above.
- Check if the mod requires additional permissions
- Grant the required permission
- If permission was denied permanently, open app settings and allow it
- Some mods require root or ADB provisioning
Android 14+ refuses to load writable DEX/JAR files. 0.7.3 fixes this: JARs are marked read-only immediately after writing, checked again before loading, and existing installations are automatically repaired. If a mod was installed on an older Android version and stops loading after a system update to 14+, simply re-enable it — Ava repairs the permissions automatically.
This is expected. After enable, disable, or update, the voice service restarts automatically to apply changes. This ensures the mod is properly loaded or unloaded.
Yes. See Mod Development for the complete developer guide. Source code, build scripts, and examples are at https://github.com/knoop7/ava-mods.
Back to Home
- Quick-Start
- System-Requirements
- Voice-Control
- Chorus-Wake
- ESPHome-Encryption
- HA-Direct-Connection
- Browser
- Screensaver
- Floating-Windows
- Home-Launcher
- Home-Screen-Widgets
- Notification-Scenes
- Quick-Entity
- Sensors
- Backup
- Sendspin
- Bluetooth
- Voice-Messages-Calls
- Music-Playback
- Camera
- Screen-Control
- Intent-Launcher
- ADB-Commands
- Mod-Store
- Ava-Fleet