[APP][Pro] Apple TV & HomePod

@DoctorBazinga Good thought, but no I can rule that one out :slight_smile: The companion link protocol is only used for connecting with an Apple TV. HomePods use AirPlay only.

Apple TV & HomePod 1.3.6

  • Updated the Apple Protocols library.

Oh, Ok.

My bad.

Thank you for the clarification and your answer.

Have a nice day.

1 Like

Apple TV & HomePod 1.4.0

  • A new flow trigger “Companion Link protocol connection failed” is introduced for Apple TV devices until a better solution is available. This new card can be used to restart the Apple TV & HomePod app automatically instead of doing it manually every time. A small delay before restarting is recommended.
  • Updated Apple Protocols SDK.

1 Like

Hello Bas,

Since the new version 1.4.0, my HomePod no longer has a connection, but both Apple TVs do. Restarting the app (several times) doesn’t help; the HomePod still has no connection. What could be the cause, and what else can I try?

@Asterix Weird, can you send a diagnostics report about 15 seconds after you’ve restarted the app? And maybe after that try to repair the HomePod?

Here is the diagnostic report:

490e7fe6-2369-47bf-95d8-8f6d50cdf257

I am not seeing any option to repair the device.

1 Like

Apple TV & HomePod 1.4.2

  • Changed a bunch of connection related code.
  • When one of the connections to the device is for some reason stalling, a disconnect is triggered and the app automatically reconnects.
  • New heartbeat mechanism for the companion link protocol.

Upcoming 1.5.0 (Somewhere next week)

  • This update will track when the app received updates from each device and when updates are not received for a long period, but the connection remains open, a disconnect is triggered and the app reconnects. This fixes that the AirPlay connection is buggy after a few days (~6 days).
  • Add re-pairing for all devices.
  • A new flow card for all devices for when the artwork url changes.
  • A new artwork url capability.
  • Block radio streaming urls as much as possible in audio streaming, will revisit this later.

Some side news, reached a personal goal of 2500 installs! :partying_face: And as of now, there are about 3600 devices paired in total :slight_smile:

5 Likes

Congratulations! It’s a great feeling when you realize people appreciate the time you invest in writing an app!

1 Like

@BasMilius, has a solution been found in the meantime?

I am also unable to add my HomePod Mini and Apple TV 4K (1st generation).
Both devices are recognized, but the spinning sun appears on the HomePod Mini for several minutes, and no PIN appears on the Apple TV screen.
All devices are on the same network and have a static IP address.
By the way, I also have a UniFi network.

Diagnostic report no.: e1d20826-4665-454d-b026-cdcadf5ba00b

1 Like

@DirkG Hmm, not really because I don’t have enough information about the issue. I can see that your Unifi network is at least not blocking anything (some people have mdns configured different in unify and that causes problems also), but I can see that your HomePod Mini is reporting that it’s busy…

2026-02-20T19:07:30.618Z [err] [ManagerDrivers] [Driver:homepod-mini] Error: Device is busy, try again in 2 seconds.
    at Object.bail (file:///app/node_modules/@basmilius/apple-encoding/dist/index.js:1611:11)
    at AccessoryPair.tlv (file:///app/node_modules/@basmilius/apple-common/dist/index.js:523:12)
    at AccessoryPair.m3 (file:///app/node_modules/@basmilius/apple-common/dist/index.js:611:23)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async AccessoryPair.transient (file:///app/node_modules/@basmilius/apple-common/dist/index.js:563:16)
    at async HomePodBasePairing.onShowViewAuthenticate (/app/src/homepod-base/pairing.js:93:22)
    at async HomePodBasePairing.onShowView (/app/src/homepod-base/pairing.js:74:28)
    at async /app/src/homepod-base/pairing.js:57:62
2026-02-21T11:35:33.805Z [err] [ManagerDrivers] [Driver:homepod-mini] Error: Device is busy, try again in 4 seconds.
    at Object.bail (file:///app/node_modules/@basmilius/apple-encoding/dist/index.js:1611:11)
    at AccessoryPair.tlv (file:///app/node_modules/@basmilius/apple-common/dist/index.js:523:12)
    at AccessoryPair.m3 (file:///app/node_modules/@basmilius/apple-common/dist/index.js:611:23)
    at process.processTicksAndRejections (node:internal/process/task_queues:105:5)
    at async AccessoryPair.transient (file:///app/node_modules/@basmilius/apple-common/dist/index.js:563:16)
    at async HomePodBasePairing.onShowViewAuthenticate (/app/src/homepod-base/pairing.js:93:22)
    at async HomePodBasePairing.onShowView (/app/src/homepod-base/pairing.js:74:28)
    at async /app/src/homepod-base/pairing.js:57:62

What information do you need?

So I messed up and accidentally included some of the new features in a bugfix release. I had the wrong branch checked out and totally forgot haha.. It now means that the features in my previous post (except the artwork related stuff) are coming in 1.6.0 instead.

Apple TV & HomePod 1.5.0

  • Fixes the companion link heartbeat loop. The loop blocked other messages, which resulted in flow cards such as “Launch app” to be broken.
  • Add “Artwork URL” capability for all devices.
  • Add “Artwork URL changes” trigger.
  • Updated the underlying apple-protocols libraries.
1 Like

@DirkG Actual messages being send, but that pollutes the log a lot and what I need probably is out of the range Homey sends in diagnostics reports… I’ll think about something else, maybe an external tool that you can run or something…

1 Like

@DirkG If you want, you can try to run the first version of the diagnostics tool I’ve made. It’s a bit technical, but it should generate the information that I need.

1 Like

@BasMilius I just tested it, but I don’t have permission to run the program.
I have no IT or programming skills. What should I do?

@DirkG Hmm, what OS are you using and are you an administrator? I have tested it on my MacBook, and it works here, but maybe it’s because I created it that the OS allows it…

By the way, I also have a UniFi network.

Same thing, also not getting a pin, newly setup UniFi network.

@BasMilius what kind of a request does the app send to the Apple TV?

@nielsoet Multiple… Are you able to run the diagnostics tool?

I am! Will try it tonight when I get home!

1 Like