Apple TV doesn't show up as TV in HomeKit

Hello there!
I try to get my Apple TV and Sonos Beam available in HomeKit with player controls (as TV and speaker).

First they showed up as buttons, so i configured the HomeKit Bridge integration by YAML and added entity_config with feature_list like the documentation does:

homekit:
  name: "Home Assistant Bridge"
  filter:
    include_domains:
      - alarm_control_panel
      - climate
      - cover
      - fan
      - humidifier
      - group
      - light
      - lock
      - media_player
      - scene
      - switch
      - vacuum
      - water_heater
    exclude_entities:
      - switch.zigbee2mqtt_bridge_permit_join
  entity_config:
    media_player.appletv:
      feature_list:
        - feature: on_off
        - feature: play_pause
        - feature: play_stop
        - feature: toggle_mute
    media_player.sonosbeam:
      feature_list:
        - feature: on_off
        - feature: play_pause
        - feature: play_stop
        - feature: toggle_mute

Now they are available in HomeKit as tiles, but not as a TV or speaker.

Older posts used a device_class property in the entity_config, but that seems to be no longer the case today. If i look up device_class for both entities in dev tools, Apple TV hasn’t one and Sonos has speaker.

Restarted and run the action to reset the accessories, no change.
Any ideas?

Hi @christoph83
Let me first ask you a question, why is it necessary for you to integrate the Apple TV into Homekit via Home Assistant? Surely Apple Like should be able to do that automatically in the Apple ecosystem? (At least that’s how it is for me).

Be that as it may. I think it’s because you’re trying to transfer the Apple TV to Homekit in your normal Homekit Bridge. However, separate bridges must be created for each (individual) media player in “Accessory Mode”. Here it is described:

1 Like

Hi @alexsaas,
thanks for your reply, i actually overlooked that in the docs. I will give it a try!

Regarding your question: i didn’t thought so much about it. As you said, i guessed it must be easy to integrate it with HomeKit (as all is Apple). One thing is that you have all the controls (media player, but also your lights) right at your fingertips when using an iPhone und you open the control center.

Tried it. Doesn’t work for me. Tried it completely via configuration.yaml first and also via the auto config in the integration view.

I have one Bridge configured in configuration.yaml, domain media_player not included. Added another auto config in the integration and selected domain media_player, mode accessory, include, entity: media_player.appletv.

After pairing, Apple TV shows up as 3 switches. :frowning:

Hey @christoph83.

I think it’s also a bit down to how Apple handles media players. These do appear in Apple Home, but there you can turn them on and off at most, mainly only to show status. However, the control is carried out as desired by Apple, via the media control in the control center of the iPhone, for example. I can remember that I tried with my LG TV via the Homekit Bridge and it was really a cramp. Via Apple Home, I can only turn it on and off, as well as see the status. Control via the control center was really not stable. So i didn’t do that. Just like with my AV receiver, I use the native apps or Home Assistant for operation.

But as I said, my Apple TV appears natively without Home Assistant (Homekit Bridge) in Apple Home (Status), but control is only possible via the media control in Control Center or Remote App.

I hope it was somewhat understandable.

But that’s exactly how it should be and that’s how it is with me. In the Control Center, I see and control the Apple TV (natively) via the media control and the lights from the Homekit Bridge via Apple Home.

By the way: you should only use one method for the Homekit Bridge. Either via the UI or via the configuration.yaml. Mixing both will lead to errors sooner or later.

1 Like

Thx, i think i’ll do the same. Kick it out of HA and just use it directly from Apple Home.

1 Like