Airplay endpoints unavailable after waking from sleep

Roon Core Machine

Roon 2. Build 1133 on a headless Mac mini (12.6 Monterey)

Networking Gear & Setup Details

Mac is hardwired

Connected Audio Devices

Mix of Roon endpoints on RPI and Airplay compatible (HomePod, Belkin connect).

Number of Tracks in Library

~20K

Description of Issue

Roon runs on a headless Mac mini that auto goes to sleep at night and auto wakes in the morning. Have had the same setup for years with no issue. As of the latest build when it wakes up it can’t find any other airplay endpoints and I need to connect to the machine and stop/start Roon and they come back. As this is a headless machine its a small PITA.

When I first connect it only shows Roon endpoints, non of the airplay
Screenshot 2022-10-22 at 07.49.24

Restarting Roon and they all come back.

Hi @sbr,

Thank you for bringing your issue to us.

We have seen this happening since the advent of Roon 2.0. Not just with airplay devices but Roon Ready or Roon Tested devices as well. Roon was keeping Mac OS from completely sleeping before 2.0. Some call it a bug, and some call it a feature. If you set your Mac to these settings:

Screen Shot 2022-10-24 at 10.47.19 AM

This should fix your issue once this is set and a reboot is done. If you wouldn’t mind, please confirm after trying this.

Thanks,
Wes

@Wes Regarding your screen shot, do you mean turning on “wake for network” or “prevent your Mac from sleeping” or both?

Also are you suggesting the fix for end points disappearing is to never let the Mac sleep? That seems like a waste of energy and defeats the purpose of using scheduled sleep/wake.

On a side note, this menu with these options is no longer available in Ventura. To set automatic wake/sleep you need to use pmset from the command line with something like sudo pmset repeat wakeorpoweron MTWRFSU 06:00:00 sleep MTWRFSU 21:00:00

Hi @sbr,

I have both set but the latter is the more relevant.

A Roon core is designed to be on-demand access. Technically, having a machine sleep defeats the purpose of using any device as a Roon core. As a side note, prior versions of Roon did not respect the OS’s sleep or energy-saver settings. I don’t really have an explanation as to why devices would disappear but it’s something happening quite commonly on MacOS returning from a slumber. I’ll be championing a change in this but for now, this has been the fix.

You had mentioned that you were running 12.6 in your initial post and that’s why I provided a screenshot for Monterey.

Will you please see if my proposed changes address the problem for you? If not, I’ll be happy to look at diagnostic logging and do my best to get you up and running.

Wes

Technically, having a machine sleep defeats the purpose of using any device as a Roon core

I’d argue I can make assumptions about when I am unlikely to access this machine. eg between 11pm-6am in the majority of cases. I’m not serving content globally, just to my household which exists in a single timezone. For those late night parties I can go and turn the Mac back on :wink: Having it always on in the middle of the night is a waste of energy and that being a requirement for it to function correctly is poor design. No other application I use requires a restart.

You had mentioned that you were running 12.6

Indeed though, between opening the ticket and getting a response Ventura came out. Either way, the setting is available but hasn’t fixed the issue as for better or worse OSX still forces the machine to sleep.

An important detail is that the Roon endpoints (Pis) work fine, its only airplay devices which don’t function until Roon is restarted. So it’s likely related to functions that discover / track airplay endpoints. Arc works fine between sleeps, so seems like a regression only impacting Airplay as this was fine pre V2.

I have some vague memory that I had this issue ~2 years with the last major update but it was later fixed in a subsequent update.

Edit. Actually it was slightly different with USB devices being unavailable in 1.8 USB Dac endpoint becomes unavailable since 1.8