Skip to main content
Home Assistant Companion App: Setting Permissions

Home Assistant Companion App: Setting Permissions

A Guide to Managing Permissions in the Home Assistant App on Android

- - Reading time of 3 mins

Tags:

home-assistantandroid-permissionssmart-homemobile-app-configuration

Content:

615 words76 sentences66 paragraphs

License:

CC BY-NC-ND 4.0

Home Assistant Companion app requires specific Android permissions and system configurations to enable reliable sensor functionality. The primary challenge is Android's aggressive battery optimization and background restrictions, which prevent sensors from updating when the app isn't actively in use. This comprehensive guide covers all sensor-specific requirements, system-level configurations, and manufacturer-specific settings needed for proper operation.

Home Assistant Companion app requires specific Android permissions and system configurations to enable reliable sensor functionality. The primary challenge is Android's aggressive battery optimization and background restrictions, which prevent sensors from updating when the app isn't actively in use. This comprehensive guide covers all sensor-specific requirements, system-level configurations, and manufacturer-specific settings needed for proper operation.

Preface

Home Assistant Companion app requires specific Android permissions and system configurations to enable reliable sensor functionality. The primary challenge is Android's aggressive battery optimization and background restrictions, which prevent sensors from updating when the app isn't actively in use. This comprehensive guide covers all sensor-specific requirements, system-level configurations, and manufacturer-specific settings needed for proper operation.

Step-by-step configuration procedure

Phase 1: Basic app installation and permissions

  1. Install Home Assistant Companion app (Full version from Google Play Store recommended)
  2. During onboarding, grant ALL requested permissions including location, notifications, and storage
  3. Immediately navigate to Settings > Apps > (App management) > Home Assistant > Permissions > Location
  4. Select "Allow all the time" and enable "Precise location" if available

Phase 2: Battery optimization configuration

  1. Open Settings and navigate to Settings > Battery > Battery Optimization
  2. Select "All Apps" from dropdown menu
  3. Find Home Assistant and select "Don't Optimize"
  4. Navigate to Settings > Apps > (App management) > Home Assistant > Battery
  5. Set to "Unrestricted" and enable "Allow Background Activity"

Phase 3: Manufacturer-specific settings

  • Based on device manufacturer, apply additional configurations from the manufacturer-specific sections above. These settings are critical for reliable operation and often reset after firmware updates:
  • Samsung: Enable app power management, background usage limits, and disable adaptive battery
  • Xiaomi: Enable autostart, set no restrictions in battery management, and lock app in recent apps menu
  • Huawei: Enable auto-launch, add to protected apps, and manage manually

Essential Permissions

Battery and Power Monitoring sensors

Battery Level, Battery State, and Charger Type sensors are enabled by default and require no special Android permissions. Home-assistant However, battery optimization exemption is critical for reliable operation. This single setting prevents Android from killing background sensor updates:

Location and device tracking sensors

The Background Location sensor uses Google's Fused Location API and updates every 1-3 minutes, while Location Zone creates geofences supporting up to 100 zones. Location permission must be set to "Allow all the time" rather than "While using app" or "Only this time".

Critical Android System Configurations

Key configurations

  • Battery Optimization whitelist: Settings > Battery > Battery Optimization > All Apps > Home Assistant > Don't Optimize
  • Background data enabled: Settings > Apps > (App management) > Home Assistant > Data Usage > Background Data ON
  • Unrestricted battery usage: Settings > Apps > (App management) > Home Assistant > Battery > Allow Background Activity

IMPORTANT NOTE: Android 11+ introduces auto-reset of unused app permissions, meaning permissions may be reverted after periods of non-use. Users must periodically verify that location permissions haven't been automatically changed back to "While using app."

Device-specific settings

Samsung devices

  • Device Care > Battery > App Power Management > Home Assistant > Allow
  • Battery > Background Usage Limits > Never Sleeping Apps > Add Home Assistant
  • Disable "Adaptive Battery" and "Put Unused Apps to Sleep" daemon
  • Remove from "Sleeping Apps" and "Deep Sleeping Apps" lists

Xiaomi devices

  • Security App > Permissions > Autostart > Enable for Home Assistant
  • Battery > App Battery Management > Home Assistant > No Restrictions
  • Lock app in recent apps menu (drag down to lock)
  • Enable "Display Pop-up Windows While Running in Background"

Huawei devices

  • Battery > App Launch > Home Assistant > Manage Manually
  • Enable all three options: Auto-launch, Secondary launch, Run in background
  • Add to Protected Apps list for guaranteed background operation

Home Assistant Companion App

It is time to launch the Home Assistant Companion app and start enabling sensors in it, so that they are available for use. Going forward, all instructions will assume that you have already installed the app, granted the necessary permissions, and configured it to connect to your Home Assistant instance(s).

Enabling Sensors

  1. Open Home Assistant app > Settings > Companion App > Manage Sensors
  2. Enable required sensors individually (battery sensors enabled by default)
  3. For location sensors, configure accuracy settings and zone constraints
  4. Test sensor functionality by monitoring update frequency in Home Assistant

Battery drain and performance issues

Optimization Strategies

  1. Enable only sensors actually needed for your automations.
  2. Use "Normal" update frequency instead of "Fast Always" mode.
  3. Disable unnecessary sensors in Manage Sensors menu of the Home Assistant Companion app.
  4. Consider using "Zone Name Only" location mode for privacy and battery savings.

Emanuele Fabrizio

Profile picture of blog's author Emanuele Fabrizio

Written by Emanuele Fabrizio, a culinary virtuoso and former military officer who traded camo for a chef's hat. Residing in München, he orchestrates symphonies of flavor, blending air traffic control precision with gourmet artistry. Fluent in four languages, this tech-savvy epicurean is dedicated to crafting accessible websites, ensuring everyone can savor the digital world as easily as they do a perfectly cooked Italian dish..