AppleTV (iOS13) suddenly not available on 0.99.2

Hi All,

After a restart of HA my AppleTV (iOS 13) is not seeing anymore.
Add Discovery and enable apple_tv to see if I can rediscover it again. But nothing.

What can I do to reactivate AppleTV again?

Cheers
Peter

1 Like

Yep same here

As stated here: https://alerts.home-assistant.io/#apple_tv_tvos13.markdown

"Apple TV integration incompatible with tvOS 13

Updating your Apple TV to tvOS 13 will cause the Apple TV media player integration for Home Assistant to no longer work.

The current version of the integration relies on the legacy DAAP-protocol which is being phased out in tvOS 13 in favor of the MediaRemoteTV protocol (MRP) going forward. This is a known issue which will require an update to the pyatv python library.

If you wish to continue using the Apple TV media player integration in Home Assistant, it’s recommended to hold off on installing tvOS 13 at this time. On your Apple TV device, navigate to Settings > System > Software Updates and turn off auto updates."

This might be of interest (I have not used this myself):
https://github.com/chamberlain2007/apple_tv_mrp

as well as:

Ah thanks, that’s a handy site

Revert back to tvos 12.x is also not possible anymore. Apple stopped signing of older tvos versions. So where stuck and must wait

Coming week I’ll try the script that’s mentioned above… Will give it a try!!
Hope it work and my light will dim again when watching a movie or serie:)

The last step is not working

Run the apple_tv_mrp.apple_tv_mrp_authenticate service with the entity_id of the new media_player entity. Your Apple TV will show a PIN on it:

Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/components/websocket_api/commands.py", line 130, in handle_call_service
    connection.context(msg),
  File "/usr/src/homeassistant/homeassistant/core.py", line 1234, in async_call
    await asyncio.shield(self._execute_service(handler, service_call))
  File "/usr/src/homeassistant/homeassistant/core.py", line 1259, in _execute_service
    await handler.func(service_call)
  File "/config/custom_components/apple_tv_mrp/__init__.py", line 169, in async_service_handler
    await atv.pairing.start()
  File "/config/custom_components/apple_tv_mrp/pyatv_mrp/mrp/__init__.py", line 322, in start
    await self.pairing_procedure.start_pairing()
  File "/config/custom_components/apple_tv_mrp/pyatv_mrp/mrp/pairing.py", line 44, in start_pairing
    self._atv_salt = pairing_data[tlv8.TLV_SALT]
KeyError: '2'

Any news on AppleTV on iOS 13?
Would be great to get it working!
Thanks!

4 Likes

I am just putting another voice forward waiting for a fix :slightly_smiling_face:

One more vote for getting this fixed! I had all my AV equipment controllable via network integrations until Apple decided to pull the rug out. Had to revert back to infrared control for my AppleTV.

Apple TV is the only broken integration in my setup. Is there a custom solution meanwhile the official integration gets fixed?

Is there going to be an official support?

Probably, but it looks like its several weeks away:

3 Likes

Hi Guys

I am having difficulty with authentication. When i select “apple_tv_mrp.apple_tv_mrp_authenticate” and select the media player apple tv 4k and press “call service” in services, it does nothing and does not show up the pin on apple tv. I have scanned the apple tv for the Host and port and entered these into configuration.yaml however it is not asking for the pin on apple tv
any help would be appreciated
cheers
Bruce