New in version 2026.8.4-minimal
Full release change log: https://github.com/home-assistant/android/releases/latest
The Home Assistant Companion app allows you to access your Home Assistant instance on the go. Home Assistant is the smart home solution focused on privacy, choice, and sustainability. It runs locally in your home via a device like the Home Assistant Green or Raspberry Pi.
This app connects to all the most powerful features of Home Assistant,
- One app to control the whole home - Home Assistant is compatible with the biggest brands in the smart home, connecting to thousands of smart devices and services.
- Discover automatically and quickly configure new devices - such as Philips Hue, Google Cast, Sonos, IKEA Tradfri and Apple Homekit compatible devices.
- Automate everything - Make all the devices in your home work in harmony - have your lights dim when you start watching a movie, or turn off your heat when you’re away from home.
- Keep your home’s data in the home - use it privately to see past trends and averages.
- Connect to open standards with hardware add-ons - including Z-Wave, Zigbee, Matter, Thread, and Bluetooth.
- Connect Anywhere - If you would like to access this app while away from home, the most secure and simple way to get started is Home Assistant Cloud.
The app unlocks your smartphone or tablet as a home automation tool,
- Securely share your location, using it to automate heating, security, and so much more.
- Can share your phone's sensors with Home Assistant for automations including information on: steps taken, battery level, connectivity, next alarm, and many more.
- Get notifications on what's happening in your home, from detecting leaks to doors left open, you have full control over what it tells you.
- Android Auto functionality lets you control your home from the dash of your car - open the garage, disable the security system, and more.
- Build your own widgets to control any device in your home with a tap.
- Text or talk to your local voice assistant on your device.
- Wear OS compatibility, with support for notifications, sensors, tiles and watchface complications.
Join the over 1 million users and empower your home with better privacy, choice and sustainability.
Compatible with: Airthings, Amazon Alexa, Amcrest, Android TVs, Apple HomeKit, Apple TV, ASUSWRT, August, Belink WeMo, Bluetooth, Bose SoundTouch, Broadlink, BTHome, deCONZ, Denon, Devolo, DLNA, Ecobee, Ecovacs, Ecowitt, Elgato, EZVIZ, Fritz, Fully Kiosk, GoodWe, Google Assistant, Google Cast, Google Home, Google Nest, Govee, Growatt, Hikvision, Hive, Home Connect, Homematic, HomeWizard, Honeywell, iCloud, IFTTT, IKEA Tradfri, Insteon, Jellyfin, LG Smart TVs, LIFX, Logitech Harmony, Lutron Caseta, Magic Home, Matter, MotionEye, MQTT, MusicCast, Nanoleaf, Netatmo, Nuki, OctoPrint, ONVIF, Opower, Overkiz, OwnTracks, Panasonic Viera, Philips Hue, Pi-hole, Plex, Reolink, Ring, Roborock, Roku, Samsung TVs, Sense, Sensiba, Shelly, SmartThings, SolarEdge, Sonarr, Sonos, Sony Bravia, Spotify, Steam, SwitchBot, Synology, Tado, Tasmota, Tesla Wall, Thread, Tile, TP-Link Smart Home, Tuya, UniFi, UPnP, Verisure, Vizio, Wallbox, WebRTC, WiZ, WLED, Xbox, Xiaomi BLE, Yale, Yeelight, YoLink, Z-Wave, Zigbee
Versions
Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.
Download F-Droid
-
arm64-v8a
armeabi-v7a
x86
x86_64
This version requires Android 6.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
access location in the background
This app can access location at any time, even while the app is not in use.
-
access approximate location only in the foreground
This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
-
access precise location only in the foreground
This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
-
android.permission.ACCESS_LOCAL_NETWORK
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
access Do Not Disturb
Allows the app to read and write Do Not Disturb configuration.
-
view Wi-Fi connections
Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
-
recognize physical activity
This app can recognize your physical activity.
-
pair with Bluetooth devices
Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
-
access Bluetooth settings
Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices.
-
advertise to nearby Bluetooth devices
Allows the app to advertise to nearby Bluetooth devices
-
connect to paired Bluetooth devices
Allows the app to connect to paired Bluetooth devices
-
discover and pair nearby Bluetooth devices
Allows the app to discover and pair nearby Bluetooth devices
-
directly call phone numbers
Allows the app to call phone numbers without your intervention. This may result in unexpected charges or calls. Note that this doesn't allow the app to call emergency numbers. Malicious apps may cost you money by making calls without your confirmation.
-
take pictures and videos
This app can take pictures and record videos using the camera while the app is in use.
-
allow Wi-Fi Multicast reception
Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "dataSync"
Allows the app to make use of foreground services with the type "dataSync"
-
run foreground service with the type "location"
Allows the app to make use of foreground services with the type "location"
-
run foreground service with the type "microphone"
Allows the app to make use of foreground services with the type "microphone"
-
run foreground service with the type "remoteMessaging"
Allows the app to make use of foreground services with the type "remoteMessaging"
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
android.permission.MANAGE_ASSISTANT_AUDIO
-
change your audio settings
Allows the app to modify global audio settings such as volume and which speaker is used for output.
-
control Near Field Communication
Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
android.permission.POST_PROMOTED_NOTIFICATIONS
-
query all packages
Allows an app to see all installed packages.
-
read the contents of your shared storage
Allows the app to read the contents of your shared storage.
-
read phone status and identity
Allows the app to access the phone features of the device. This permission allows the app to determine the phone number and device IDs, whether a call is active, and the remote number connected by a call.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
record audio
This app can record audio using the microphone while the app is in use.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
Schedule precisely timed actions
This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
-
This app can appear on top of other apps
This app can appear on top of other apps or other parts of the screen. This may interfere with normal app usage and change the way that other apps appear.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
control vibration
Allows the app to control the vibrator.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
modify or delete the contents of your shared storage
Allows the app to write the contents of your shared storage.
-
modify system settings
Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_BASAL_BODY_TEMPERATURE
-
android.permission.health.READ_BASAL_METABOLIC_RATE
-
android.permission.health.READ_BLOOD_GLUCOSE
-
android.permission.health.READ_BLOOD_PRESSURE
-
android.permission.health.READ_BODY_FAT
-
android.permission.health.READ_BODY_TEMPERATURE
-
android.permission.health.READ_BODY_WATER_MASS
-
android.permission.health.READ_BONE_MASS
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_ELEVATION_GAINED
-
android.permission.health.READ_FLOORS_CLIMBED
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_HEART_RATE_VARIABILITY
-
android.permission.health.READ_HEIGHT
-
android.permission.health.READ_HYDRATION
-
android.permission.health.READ_LEAN_BODY_MASS
-
android.permission.health.READ_OXYGEN_SATURATION
-
android.permission.health.READ_RESPIRATORY_RATE
-
android.permission.health.READ_RESTING_HEART_RATE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_VO2_MAX
-
android.permission.health.READ_WEIGHT
-
set an alarm
Allows the app to set an alarm in an installed alarm clock app. Some alarm clock apps may not implement this feature.
-
com.google.android.gms.permission.ACTIVITY_RECOGNITION
-
io.homeassistant.companion.android.minimal.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
55 MiB
PGP Signature
|
Build Log
-
arm64-v8a
armeabi-v7a
x86
x86_64
This version requires Android 6.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
access location in the background
This app can access location at any time, even while the app is not in use.
-
access approximate location only in the foreground
This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
-
access precise location only in the foreground
This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
-
android.permission.ACCESS_LOCAL_NETWORK
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
access Do Not Disturb
Allows the app to read and write Do Not Disturb configuration.
-
view Wi-Fi connections
Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
-
recognize physical activity
This app can recognize your physical activity.
-
pair with Bluetooth devices
Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
-
access Bluetooth settings
Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices.
-
advertise to nearby Bluetooth devices
Allows the app to advertise to nearby Bluetooth devices
-
connect to paired Bluetooth devices
Allows the app to connect to paired Bluetooth devices
-
discover and pair nearby Bluetooth devices
Allows the app to discover and pair nearby Bluetooth devices
-
directly call phone numbers
Allows the app to call phone numbers without your intervention. This may result in unexpected charges or calls. Note that this doesn't allow the app to call emergency numbers. Malicious apps may cost you money by making calls without your confirmation.
-
take pictures and videos
This app can take pictures and record videos using the camera while the app is in use.
-
allow Wi-Fi Multicast reception
Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "dataSync"
Allows the app to make use of foreground services with the type "dataSync"
-
run foreground service with the type "location"
Allows the app to make use of foreground services with the type "location"
-
run foreground service with the type "microphone"
Allows the app to make use of foreground services with the type "microphone"
-
run foreground service with the type "remoteMessaging"
Allows the app to make use of foreground services with the type "remoteMessaging"
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
change your audio settings
Allows the app to modify global audio settings such as volume and which speaker is used for output.
-
control Near Field Communication
Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
android.permission.POST_PROMOTED_NOTIFICATIONS
-
query all packages
Allows an app to see all installed packages.
-
read the contents of your shared storage
Allows the app to read the contents of your shared storage.
-
read phone status and identity
Allows the app to access the phone features of the device. This permission allows the app to determine the phone number and device IDs, whether a call is active, and the remote number connected by a call.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
record audio
This app can record audio using the microphone while the app is in use.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
Schedule precisely timed actions
This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
-
This app can appear on top of other apps
This app can appear on top of other apps or other parts of the screen. This may interfere with normal app usage and change the way that other apps appear.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
control vibration
Allows the app to control the vibrator.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
modify or delete the contents of your shared storage
Allows the app to write the contents of your shared storage.
-
modify system settings
Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_BASAL_BODY_TEMPERATURE
-
android.permission.health.READ_BASAL_METABOLIC_RATE
-
android.permission.health.READ_BLOOD_GLUCOSE
-
android.permission.health.READ_BLOOD_PRESSURE
-
android.permission.health.READ_BODY_FAT
-
android.permission.health.READ_BODY_TEMPERATURE
-
android.permission.health.READ_BODY_WATER_MASS
-
android.permission.health.READ_BONE_MASS
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_ELEVATION_GAINED
-
android.permission.health.READ_FLOORS_CLIMBED
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_HEART_RATE_VARIABILITY
-
android.permission.health.READ_HEIGHT
-
android.permission.health.READ_HYDRATION
-
android.permission.health.READ_LEAN_BODY_MASS
-
android.permission.health.READ_OXYGEN_SATURATION
-
android.permission.health.READ_RESPIRATORY_RATE
-
android.permission.health.READ_RESTING_HEART_RATE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_VO2_MAX
-
android.permission.health.READ_WEIGHT
-
set an alarm
Allows the app to set an alarm in an installed alarm clock app. Some alarm clock apps may not implement this feature.
-
com.google.android.gms.permission.ACTIVITY_RECOGNITION
-
io.homeassistant.companion.android.minimal.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
54 MiB
PGP Signature
|
Build Log
-
arm64-v8a
armeabi-v7a
x86
x86_64
This version requires Android 6.0 or newer.
It is built and signed by F-Droid, and guaranteed to correspond to this source tarball.
Permissions
-
access location in the background
This app can access location at any time, even while the app is not in use.
-
access approximate location only in the foreground
This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
-
access precise location only in the foreground
This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
-
android.permission.ACCESS_LOCAL_NETWORK
-
view network connections
Allows the app to view information about network connections such as which networks exist and are connected.
-
access Do Not Disturb
Allows the app to read and write Do Not Disturb configuration.
-
view Wi-Fi connections
Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
-
recognize physical activity
This app can recognize your physical activity.
-
pair with Bluetooth devices
Allows the app to view the configuration of the Bluetooth on the phone, and to make and accept connections with paired devices.
-
access Bluetooth settings
Allows the app to configure the local Bluetooth phone, and to discover and pair with remote devices.
-
advertise to nearby Bluetooth devices
Allows the app to advertise to nearby Bluetooth devices
-
connect to paired Bluetooth devices
Allows the app to connect to paired Bluetooth devices
-
discover and pair nearby Bluetooth devices
Allows the app to discover and pair nearby Bluetooth devices
-
directly call phone numbers
Allows the app to call phone numbers without your intervention. This may result in unexpected charges or calls. Note that this doesn't allow the app to call emergency numbers. Malicious apps may cost you money by making calls without your confirmation.
-
take pictures and videos
This app can take pictures and record videos using the camera while the app is in use.
-
allow Wi-Fi Multicast reception
Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
-
run foreground service
Allows the app to make use of foreground services.
-
run foreground service with the type "dataSync"
Allows the app to make use of foreground services with the type "dataSync"
-
run foreground service with the type "location"
Allows the app to make use of foreground services with the type "location"
-
run foreground service with the type "microphone"
Allows the app to make use of foreground services with the type "microphone"
-
run foreground service with the type "remoteMessaging"
Allows the app to make use of foreground services with the type "remoteMessaging"
-
have full network access
Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
-
change your audio settings
Allows the app to modify global audio settings such as volume and which speaker is used for output.
-
control Near Field Communication
Allows the app to communicate with Near Field Communication (NFC) tags, cards, and readers.
-
android.permission.PACKAGE_USAGE_STATS
-
show notifications
Allows the app to show notifications
-
android.permission.POST_PROMOTED_NOTIFICATIONS
-
query all packages
Allows an app to see all installed packages.
-
read the contents of your shared storage
Allows the app to read the contents of your shared storage.
-
read phone status and identity
Allows the app to access the phone features of the device. This permission allows the app to determine the phone number and device IDs, whether a call is active, and the remote number connected by a call.
-
run at startup
Allows the app to have itself started as soon as the system has finished booting. This can make it take longer to start the phone and allow the app to slow down the overall phone by always running.
-
record audio
This app can record audio using the microphone while the app is in use.
-
ask to ignore battery optimizations
Allows an app to ask for permission to ignore battery optimizations for that app.
-
Schedule precisely timed actions
This app can schedule work to happen at a desired time in the future. This also means that the app can run when you're not actively using the device.
-
This app can appear on top of other apps
This app can appear on top of other apps or other parts of the screen. This may interfere with normal app usage and change the way that other apps appear.
-
use biometric hardware
Allows the app to use biometric hardware for authentication
-
use fingerprint hardware
Allows the app to use fingerprint hardware for authentication
-
control vibration
Allows the app to control the vibrator.
-
prevent phone from sleeping
Allows the app to prevent the phone from going to sleep.
-
modify or delete the contents of your shared storage
Allows the app to write the contents of your shared storage.
-
modify system settings
Allows the app to modify the system's settings data. Malicious apps may corrupt your system's configuration.
-
android.permission.health.READ_ACTIVE_CALORIES_BURNED
-
android.permission.health.READ_BASAL_BODY_TEMPERATURE
-
android.permission.health.READ_BASAL_METABOLIC_RATE
-
android.permission.health.READ_BLOOD_GLUCOSE
-
android.permission.health.READ_BLOOD_PRESSURE
-
android.permission.health.READ_BODY_FAT
-
android.permission.health.READ_BODY_TEMPERATURE
-
android.permission.health.READ_BODY_WATER_MASS
-
android.permission.health.READ_BONE_MASS
-
android.permission.health.READ_DISTANCE
-
android.permission.health.READ_ELEVATION_GAINED
-
android.permission.health.READ_FLOORS_CLIMBED
-
android.permission.health.READ_HEALTH_DATA_IN_BACKGROUND
-
android.permission.health.READ_HEART_RATE
-
android.permission.health.READ_HEART_RATE_VARIABILITY
-
android.permission.health.READ_HEIGHT
-
android.permission.health.READ_HYDRATION
-
android.permission.health.READ_LEAN_BODY_MASS
-
android.permission.health.READ_OXYGEN_SATURATION
-
android.permission.health.READ_RESPIRATORY_RATE
-
android.permission.health.READ_RESTING_HEART_RATE
-
android.permission.health.READ_SLEEP
-
android.permission.health.READ_STEPS
-
android.permission.health.READ_TOTAL_CALORIES_BURNED
-
android.permission.health.READ_VO2_MAX
-
android.permission.health.READ_WEIGHT
-
set an alarm
Allows the app to set an alarm in an installed alarm clock app. Some alarm clock apps may not implement this feature.
-
com.google.android.gms.permission.ACTIVITY_RECOGNITION
-
io.homeassistant.companion.android.minimal.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
Download APK
54 MiB
PGP Signature
|
Build Log