Universal control between macs dropping - hints to debug or fix

How to debug continuity/universal control issues?

Are there any tech-notes or resources on point?

Is there any API surface where I can build a solution?

I'm using Universal control to share a USB keyboard and mouse between two adjacent desktops macs (2018 mini, M1 studio), but after any time spent in one, I lose connection to the other, and sometimes cannot recover any connection. It seems like the connection times out.

Both run Sonoma 14.5, live on the same wifi (and see each other on the network), have bluetooth that always works with other devices and with AirDrop (where both can be seen by everybody) and are logged in to the same apple ID.

The only UI I can find is System Settings/Display, where sometimes there's a drop-down for "link keyboard and mouse to", which should have the other computer but often doesn't. Leaving bluetooth settings open to make each side discoverable does not fix anything.

I can find nothing helpful in technical docs. For debugging, I find nothing when searching settings by name when running defaults. In login KeyChain I see 5 handoff decryption keys and my own encryption key, but nothing else for handoff or continuity.

In the console, when the Display keyboard-sharing drop-down is available I do see a messages for a handoff:

  • sharingd: identified device (with other mac name, apple ID)
  • rapportd Received requestID 'com.apple.handoff.payload-request'
  • sharingd (request handling)
  • sharingd SendResponseID 'com.apple.handoff.payload-request'
  • rapportd PairVerify completed client ... RPI RPIdentity

However, in the failure state, though the OS is configured for push-through display to initiate control sharing, no mouse activity (on any edge of any display) will initiate the process. Only reverting to a physical USB mouse connection works. Are there (different?) console log identifiers associated with failed attempts?

I'm happy to debug this, and write an app or a system extension or whatever is necessary to avoid the constant interruption of the failing connection. I just don't see how.

Ideally, there would be a way to configure it to just ALWAYS maintain universal control between two specific macs. Bluetooth is not even relevant once the network identity is established, and there's no power or security reason to time out the connection.

I see many such complaints on the forum, but no acknowledgement or effective response. I found no forum tag for continuity or universal control (only for continuity camera). I seem to be unable to search for a phase using double quotes, as results highlight independent words. Using single quotes results in a search for 39, the ASCII character code.

Answered by DTS Engineer in 798000022
I see many such complaints on the forum, but no acknowledgement or effective response.

Right. That’s because this is the Apple Developer Forums, and these are user-level issues.

Is there any API surface where I can build a solution?

No. These features have no API.

From my perspective:

  • I recommend that you file bugs about the specific problems that you see. See Bug Reporting: How and Why? for advice on how to file effective bug reports.

  • If you want to discuss user-level issues, the best place for that is Apple Support Community, run by Apple Support.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Accepted Answer
I see many such complaints on the forum, but no acknowledgement or effective response.

Right. That’s because this is the Apple Developer Forums, and these are user-level issues.

Is there any API surface where I can build a solution?

No. These features have no API.

From my perspective:

  • I recommend that you file bugs about the specific problems that you see. See Bug Reporting: How and Why? for advice on how to file effective bug reports.

  • If you want to discuss user-level issues, the best place for that is Apple Support Community, run by Apple Support.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Understood - thank you for the quick reply.

My goal is to build a solution. It helps to know I'm not missing the API. USBDriverKit et al is beyond my skill-set.

Universal control between macs dropping - hints to debug or fix
 
 
Q