Apple TV + Home Assistant: The Complete Control Guide

Apple TV is already one of the best streaming boxes you can buy. Pair it with Home Assistant and it becomes a smart home powerhouse. Control playback from your dashboard, trigger automations when a movie starts, dim the lights automatically, and send remote commands without picking up the Siri Remote. This guide covers everything from setup to advanced automations.

Check Your Devices Media Player Guide

Why Apple TV Is Great for Home Assistant

Most streaming devices are black boxes. You hit play and that is about all you can control from the outside. Apple TV is different. Thanks to Apple's protocols running on your local network, Home Assistant can see exactly what is playing, send remote commands, control volume, and even detect when the TV is on or off. No cloud hacks, no screen scraping, no weird workarounds.

๐ŸŽฎ

Full Remote Control

Every button on the Siri Remote is available as a service call. Navigate menus, select items, adjust volume, all from automations or your dashboard.

๐Ÿ“ก

100% Local

The integration talks directly to your Apple TV over your LAN. No internet needed, no Apple account required for basic control. Fast and private.

๐ŸŽฌ

Now Playing Info

See what is playing, including title, artwork, app name, and playback state. Build automations that react to specific content or apps.

๐Ÿ 

HomeKit Bridge

Apple TV doubles as a HomeKit hub. Expose your Home Assistant devices to Apple Home and control them through Siri, even when you are away from home.

How to Set Up Apple TV in Home Assistant

The Apple TV integration is built into Home Assistant. No HACS, no custom components, no add-ons needed. Here is the step-by-step process.

1

Make Sure Both Devices Are on the Same Network

Your Home Assistant server and Apple TV need to be on the same local network (same subnet). If you have VLANs set up, make sure mDNS/Bonjour traffic can pass between them. Most home networks work out of the box.

2

Add the Integration

Go to Settings โ†’ Devices & Services โ†’ Add Integration and search for "Apple TV." Home Assistant will scan your network and show any Apple TVs it finds. Select yours.

3

Enter the Pairing Code

A PIN code will appear on your TV screen. Type it into Home Assistant. You may need to do this twice: once for the MRP protocol (media controls) and once for AirPlay (audio streaming). Both are worth setting up.

4

Done. Check Your Entities

After pairing, you will get a media_player entity and a remote entity. The media player shows what is playing and accepts playback controls. The remote lets you send button presses. You are ready to build automations.

Tip: If Home Assistant does not discover your Apple TV automatically, check that your Apple TV is awake (not in deep sleep) and that mDNS traffic is not being blocked by your router or firewall.

What the Integration Gives You

Once paired, you get two entities with a ton of capabilities. Here is what each one does.

Media Player Entity

This is your main control surface. It shows the current state and accepts playback commands.

State Information

  • Playing, paused, idle, or standby
  • Current app (Netflix, Disney+, YouTube, etc.)
  • Media title and artist
  • Album artwork (shows on dashboards)
  • Media type (movie, music, TV show)
  • Playback position and duration

Controls

  • Play and pause
  • Next and previous track
  • Volume up, down, and mute
  • Turn on and turn off
  • Seek to position
  • Select source (launch apps)

Remote Entity

This gives you access to every button on the Siri Remote. Perfect for navigating menus and triggering specific actions.

CommandWhat It Does
up / down / left / rightNavigate menus and lists
selectConfirm selection (like pressing the clickpad)
menuGo back one screen
homeReturn to the home screen
home_holdOpen the Control Center
play_pauseToggle play/pause
skip_forward / skip_backwardJump forward or back 10 seconds
volume_up / volume_downAdjust TV volume (via HDMI-CEC)

Which Apple TV Models Work?

All Apple TV models work with Home Assistant, but the integration method differs slightly.

ModelProtocolMedia ControlsRemoteAirPlay
Apple TV 4K (2022, 2021)MRPFullFullAirPlay 2
Apple TV HD (2015)MRPFullFullAirPlay 2
Apple TV 3rd Gen (2012)AirPlayLimitedNoAirPlay 1

Recommendation: If you are buying new, get the Apple TV 4K (2022). It has the fastest chip, Thread border router support (great for Matter devices), and the best integration experience. The Wi-Fi only model works just as well as the Ethernet version for Home Assistant purposes.

5 Apple TV Automations You Will Actually Use

These are not just cool demos. These are automations people set up and never turn off because they make daily life genuinely better.

๐ŸŽฌ

Movie Night: Dim Lights When Playing

When your Apple TV starts playing, dim the living room lights to 10%. When you pause or stop, bring them back to 80%. Classic cinema mode without touching a light switch.

Show YAML
automation:
  - alias: "Movie Night - Dim on Play"
    trigger:
      - platform: state
        entity_id: media_player.apple_tv
        to: "playing"
    condition:
      - condition: time
        after: "18:00:00"
    action:
      - service: light.turn_on
        target:
          entity_id: light.living_room
        data:
          brightness_pct: 10
          transition: 3

  - alias: "Movie Night - Brighten on Pause"
    trigger:
      - platform: state
        entity_id: media_player.apple_tv
        from: "playing"
        to: "paused"
    action:
      - service: light.turn_on
        target:
          entity_id: light.living_room
        data:
          brightness_pct: 80
          transition: 2
๐Ÿ“บ

Turn Off Everything When Apple TV Sleeps

When the Apple TV goes to standby (after the screensaver timeout or manually), turn off the TV, the sound bar, and the ambient lights. One action shuts down the whole entertainment setup.

Show YAML
automation:
  - alias: "Shut Down Entertainment on Apple TV Sleep"
    trigger:
      - platform: state
        entity_id: media_player.apple_tv
        to: "standby"
        for:
          minutes: 2
    action:
      - service: media_player.turn_off
        target:
          entity_id:
            - media_player.samsung_tv
            - media_player.soundbar
      - service: light.turn_off
        target:
          entity_id: light.tv_backlight
๐Ÿ””

Doorbell Notification on Screen

When someone rings the doorbell, pause whatever is playing and send a notification to the TV with a camera snapshot. You see who is at the door without getting up.

Show YAML
automation:
  - alias: "Doorbell - Pause TV and Notify"
    trigger:
      - platform: state
        entity_id: binary_sensor.front_door_button
        to: "on"
    condition:
      - condition: not
        conditions:
          - condition: state
            entity_id: media_player.apple_tv
            state: "standby"
    action:
      - service: media_player.media_pause
        target:
          entity_id: media_player.apple_tv
      - service: notify.mobile_app_apple_tv
        data:
          message: "Someone is at the front door"
          data:
            push:
              sound: default
๐ŸŒ™

Bedtime: Sleep Timer with Fade

Watching something before bed? This automation waits 45 minutes, then gradually reduces volume and turns everything off. No more waking up to a TV blaring at 3 AM.

Show YAML
script:
  bedtime_tv_timer:
    alias: "Bedtime TV Timer"
    sequence:
      - delay:
          minutes: 45
      - repeat:
          count: 5
          sequence:
            - service: remote.send_command
              target:
                entity_id: remote.apple_tv
              data:
                command: volume_down
            - delay:
                seconds: 3
      - service: remote.send_command
        target:
          entity_id: remote.apple_tv
        data:
          command: home_hold
      - delay:
          seconds: 2
      - service: media_player.turn_off
        target:
          entity_id: media_player.apple_tv
๐ŸŽต

AirPlay Music to Apple TV on Voice Command

Use Home Assistant's voice control (or a dashboard button) to start playing music through your Apple TV and connected sound system. Great for when your phone is in the other room.

Show YAML
script:
  play_music_apple_tv:
    alias: "Play Music on Apple TV"
    sequence:
      - service: media_player.turn_on
        target:
          entity_id: media_player.apple_tv
      - delay:
          seconds: 3
      - service: media_player.play_media
        target:
          entity_id: media_player.apple_tv
        data:
          media_content_type: "music"
          media_content_id: "https://your-music-stream-url"

Apple TV on Your Dashboard

The default media player card in Home Assistant already looks good with Apple TV. It shows artwork, playback controls, and the current app. But you can take it further.

Mini Media Player Card

Install the Mini Media Player card from HACS for a compact, beautiful media control. It fits nicely on wall-mounted tablet dashboards and shows artwork, volume slider, and source selection in one small card.

Remote Control Card

Build a virtual Siri Remote using a grid of button cards. Each button calls remote.send_command with the matching command. Put it on a wall tablet and you will never lose the remote again.

Conditional Cards

Use conditional cards to show the media player only when the Apple TV is active. When it is in standby, show a "Turn On" button instead. Keeps your dashboard clean and contextual.

Bonus: Use Apple TV as a HomeKit Hub

Here is something a lot of people miss: you can go in both directions. Home Assistant controls your Apple TV, but your Apple TV can also give you access to Home Assistant devices through Apple Home.

How It Works

Enable the HomeKit Bridge integration in Home Assistant to expose selected devices (lights, switches, sensors, locks) to Apple Home. Your Apple TV automatically acts as the HomeKit hub, enabling remote access and Siri control even when you are away from home.

Why Bother?

It gives family members who use iPhones a native Apple Home experience without needing the Home Assistant app. They can say "Hey Siri, turn off the lights" and it works through your Home Assistant automations. Best of both worlds.

Thread Border Router

The Apple TV 4K (2022 Wi-Fi + Ethernet model) includes a Thread border router. This is useful for Matter devices that use Thread networking. Your Apple TV extends the Thread mesh and makes those devices reachable from both Apple Home and Home Assistant.

Common Issues and Fixes

Apple TV not discovered

Make sure your Apple TV is awake and on the same subnet as Home Assistant. Check that mDNS (Bonjour) traffic is not blocked. If using Docker, you need network_mode: host for discovery to work.

Integration becomes "unavailable" after a while

This usually happens when the Apple TV's IP address changes. Assign a static IP or DHCP reservation to your Apple TV in your router settings. Then reconfigure the integration with the new IP.

Volume controls do not work

Volume control goes through HDMI-CEC to your TV or sound bar. Make sure CEC is enabled on both your Apple TV (Settings, Remotes and Devices, Control TVs and Receivers) and your TV. Some TVs call CEC by different names: Samsung calls it Anynet+, LG calls it SimpLink, Sony calls it BRAVIA Sync.

Artwork not showing on dashboard

Some apps (particularly newer streaming services) do not always expose artwork data. Netflix, Disney+, and Apple TV+ usually work well. If artwork is missing, try pausing and resuming playback. The data sometimes takes a moment to appear after switching apps.

Pro Tips

๐Ÿ’ก

Use App Detection for Smart Lighting

The media player shows which app is active. Create different lighting scenes for different apps: dim for Netflix, normal for YouTube, colorful for Apple Music visualizations. Use a template trigger on the app_name attribute.

๐Ÿ”‡

Mute During Late Night Viewing

After 10 PM, automatically cap the volume when the Apple TV turns on. Send a few volume_down commands via the remote entity to bring it to a reasonable level. Your neighbors will thank you.

๐Ÿ“ฑ

Combine with Presence Detection

If the Apple TV has been playing for more than 2 hours and nobody is in the room (via mmWave sensor), auto-pause and send a phone notification asking if you want to keep watching.

๐ŸŽฎ

Gaming Mode

Detect when a game is running on Apple TV (the app name changes) and switch your TV to game mode via CEC or a broadlink IR blaster. Reduces input lag and changes the lighting to match the gaming vibe.

Ready to Connect Your Apple TV?

Before you start, check what devices you already have and get a personalized migration plan. Our free scan takes two minutes and shows you exactly which of your devices work with Home Assistant.

Take the Free Scan

Frequently Asked Questions

Can Home Assistant control my Apple TV?

Yes. Home Assistant has a built-in Apple TV integration that connects over your local network. You get full media controls (play, pause, skip, volume), remote commands (menu, home, select), artwork display on dashboards, and the ability to trigger automations based on what your Apple TV is doing. No cloud required.

Does the integration work locally without internet?

Yes. The integration communicates directly over your local network using Apple protocols (MRP for Apple TV 4K/HD, AirPlay for older models). No internet connection or Apple cloud services are needed for basic control and automation.

Can I use Apple TV as a HomeKit hub with Home Assistant?

Apple TV serves as a HomeKit hub on its own. You can expose Home Assistant devices to Apple Home using the HomeKit Bridge integration, and your Apple TV will act as the hub for remote access. This gives family members a native Apple Home experience while you keep the power of Home Assistant under the hood.

How do I pair Apple TV with Home Assistant?

Go to Settings, Devices and Services, then Add Integration and search for Apple TV. Home Assistant will discover your Apple TV on the network. Enter the PIN code that appears on your TV screen. The whole process takes about two minutes.

Can I send remote commands to Apple TV from Home Assistant?

Yes. The integration exposes a remote entity that supports all standard Apple TV remote buttons: up, down, left, right, select, menu, home, play/pause, skip forward, skip back, volume up, and volume down. You can use these in automations or trigger them from dashboard buttons.