The Home Assistant Companion App for iPhone is one of the most underrated pieces of the HA ecosystem. Most people install it, use it to control their dashboard, and never touch the settings again. They're missing most of what it does.

The Companion App is also a sensor platform. It feeds your phone's location, battery level, activity type (walking, driving, stationary), Wi-Fi network, and a dozen other data points into HA as sensors. Those sensors power some of the most useful automations you can build. And it connects to iOS Shortcuts, which means you can trigger any HA automation or script via Siri — "Hey Siri, I'm leaving" to run your Away scene, or "Hey Siri, movie time" to dim the lights and close the blinds.

Here's how to get it fully set up.


Step 1: Setting Up Remote Access (Nabu Casa vs Manual)

The app works great on your local network automatically. For remote access — controlling your home from work, triggering geofencing automations, etc. — you need either Nabu Casa or manual port forwarding.

Nabu Casa ($7/month): The easiest path. Subscribe at home.nabu.casa, enable the Nabu Casa Cloud integration in HA (Settings → Devices & Services → Home Assistant Cloud), and the app automatically gets remote access configured. It also gives you remote Alexa/Google integration without port forwarding. If you're paying for any smart home subscription already, replace it with this.

Manual (free): Port forward port 8123 (or use a reverse proxy like nginx or Caddy) from your router to your HA device. Then in the HA Companion App, you set your external URL to your public IP or a dynamic DNS domain. Free but more complex, and exposes your HA directly to the internet if not properly secured (use a reverse proxy with SSL).

Tailscale (free, recommended): Install Tailscale as an add-on in HA and on your iPhone. This creates a secure WireGuard VPN between your devices. No port forwarding, no public exposure — your phone connects to HA via the Tailscale network wherever you are. The HA add-on makes this very easy. This is my preferred method.


Step 2: Download and Connect the App

Get Home Assistant from the iOS App Store (by Nabu Casa, Inc.). Open it and enter your HA URL (http://homeassistant.local:8123 on local network, or your external URL for remote). Log in with your HA account credentials.

Allow the app to access your location, motion data, and notifications when prompted. These enable the sensor features. Grant "Always" location permission — "While Using" won't power the geofencing automations.


Home Assistant Companion App

Step 3: Configuring iPhone Widgets

Widgets are one of the most practical features. Add an HA widget to your iPhone home screen or Today View and control devices without opening the app.

Adding a widget:

  1. Long-press on your iPhone home screen → Add Widget
  2. Scroll to find Home Assistant
  3. Choose widget size (small, medium, or large)
  4. After adding, long-press the widget → Edit Widget to configure which entities it shows

Widget types available:

  • Entity State: Shows the current state of any entity (light on/off, temperature, lock status)
  • Action: A button that performs a specific action (runs a script, triggers automation, toggles an entity)
  • Controls: Grid of toggle buttons for multiple entities

For my main screen, I have a medium widget with four buttons: All Lights Off, Bedtime scene, Away mode, and the current thermostat temperature. It's the most-used thing on my phone.

Lock Screen Widgets (iOS 16+): HA also supports lock screen widgets. A tiny circular widget showing your thermostat temp or front door status right on the lock screen is genuinely useful.


Step 4: Location-Based Automations

This is where the app gets powerful. Go to App Configuration (the person icon in the bottom-right of the HA app) → Location.

Enable Background Location. This allows HA to receive your location even when the app isn't open. You'll see location entities appear in HA: device_tracker.your_name_iphone with a state of "home" or "not_home," plus latitude/longitude attributes.

Geofencing automations: In HA, create automations triggered by the device tracker entering or leaving your home zone:

Trigger: device_tracker.your_name_iphone changes to not_home Action: Run your Away scene (turn off all lights, set thermostat to eco mode, lock the front door)

Trigger: device_tracker.your_name_iphone changes to home Action: Run your Welcome Home scene (turn on entry lights, set thermostat to comfort, unlock if you want)

Distance-based pre-arrival: Get even more specific using the latitude/longitude zone attributes. Create a zone at 1 mile from your home and trigger your pre-arrival routine (thermostat warm-up, garage door opening) when you enter that outer zone.

Multiple person tracking: Each household member with the app installed shows up as a separate device tracker. Create automations that check whether ALL household members are away before activating security mode.


Step 5: Siri Shortcuts Integration

The HA Companion App integrates with iOS Shortcuts. This means you can trigger any HA action with a Siri voice command.

Go to the Shortcuts app on your iPhone. Create a new Shortcut. Add the Home Assistant action. Choose what to trigger: call a script, run an automation, or turn an entity on/off.

Name the shortcut something Siri-friendly. Tap the three dots → Add to Siri and record your phrase.

Shortcuts I actually use:

  • "Hey Siri, leaving work" → Triggers a script that starts my commute mode (sets thermostat to warm up, sends me an ETA notification, unlocks the door)
  • "Hey Siri, movie time" → Runs a scene that dims living room lights to 15%, closes all blinds, and sets the TV mode
  • "Hey Siri, good morning" → Runs the morning routine (blinds open, lights at 80% daylight, coffee maker on via smart plug, weather announcement via TTS)
  • "Hey Siri, all lights off" → Much faster than opening any app

Adding HA actions to iOS Control Center: In iOS 18+, you can add custom Control Center tiles. Use the Home Assistant actions as a tile. I have "Away mode" in my Control Center — tap it before leaving and HA handles everything.


Step 6: Apple Watch Dashboard

The Companion App extends to Apple Watch. After the app is installed and connected, go to App Configuration → Apple Watch in the iPhone app to configure the watch dashboard.

You add action buttons — each button triggers a script or toggles an entity. The Watch app shows these as a scrollable list. Tap once to execute.

What I have on my watch:

  • Front door lock/unlock (the most useful one — I arrive at my door with my hands full and just tap the watch)
  • All lights off
  • Away mode on/off
  • Current thermostat temperature display
  • Garage door open/close

The watch actions work both on your local network and via remote access. They go through the same Nabu Casa or Tailscale connection as the phone app.

Complications: You can also add HA entity states as watch face complications. Current temperature showing on your watch face is subtly useful — especially if it's showing the thermostat or an outdoor sensor.


The Sensor Platform: More Than You Think

Before we finish, here's the full list of what the iPhone app sends to HA as sensors. Go to App Configuration → Sensors in the app to see and enable them:

  • Location (latitude, longitude, state as home/not_home)
  • Battery level and battery state (charging/discharging)
  • Wi-Fi Network — great for detecting when you're at work vs. home
  • Activity (walking, running, driving, cycling, stationary)
  • Steps (daily step count)
  • Focus mode — which iOS Focus mode is active
  • Screen brightness
  • Volume level
  • Notifications enabled status
  • Pedestrian activity

The Focus mode sensor is particularly useful — create an HA automation that runs a "Do Not Disturb" scene (dim lights, silence speakers) when your iPhone's Sleep Focus activates at night.

The Wi-Fi SSID sensor can trigger a "just arrived home" automation when your phone connects to your home network — faster and more reliable than GPS-based geofencing for detecting home arrival.

The Companion App turns your iPhone into a sensor hub for your home automation system. Most people use 10% of what it can do. Now you have a roadmap to using the rest.