Speaker Keep-Alive
A small macOS menu bar app that stops powered speakers falling into standby whenever your Mac goes quiet.
Why do my speakers keep switching off?
Since May 2025, EU Regulation 2023/826 has required household electronics, speakers included, to drop into a low-power mode after no more than 20 minutes without use. Powered speakers decide they're unused by watching the level of the signal coming in. The Majority D70X manual puts it plainly:
If there is no activity/signal received from a connected device for up to 19 minutes, then the speakers will automatically switch to Standby Mode… If the volume level of the audio source … is set to minimum, the D70X might recognise this as ‘No Audio Signal’.
That's why "keep the port open" tricks that send pure digital silence don't work: the link is up, but the speaker hears nothing. It needs a real signal, just not one you can hear.
How it works
- Every few minutes it plays a few seconds of a very low tone (18 Hz at -50 dBFS for the D70X). Bookshelf speakers can barely reproduce it, but their signal detector still registers it.
- The tone goes to the output device you pick, such as a USB optical adapter, whatever the system default output is.
- It runs always, on a per-weekday schedule, or not at all. You can override this from the menu.
- It picks up again after the adapter is unplugged and plugged back in, and after sleep and wake.
The tone never keeps your Mac awake. Normally any audio output stops a Mac idle-sleeping, but the app opts out of that, so when the Mac goes to sleep the speakers follow it into standby.
Speaker profiles
Each speaker needs slightly different settings, so they're stored as profiles. The app ships with these:
| Profile | Tone | Standby after |
|---|---|---|
| Majority D70X (optical) | 18 Hz, -50 dBFS, 3 s every 5 min | 19 min |
| Generic (EU 20-minute auto-standby) | 40 Hz, -45 dBFS, 3 s every 5 min | 20 min |
To tune one for your speakers, duplicate the closest profile in Settings › Profiles. Use Test Tone to check you can't hear it, then go 30 minutes without playing anything (with the Mac still awake) to check the speakers stay on. If they still sleep, raise the level a few dB, or try 30–40 Hz.
Share a profile
Got one that works? Choose Share › Submit on GitHub… in the app. It opens a pre-filled issue with your profile's JSON. Tested profiles are added to the app so the next person with the same speakers doesn't have to experiment.
Build it
Requires macOS 15 or later. To build you need Xcode and XcodeGen.
brew install xcodegen
git clone https://github.com/EdMUK/mac_audio_keep_alive.git
cd mac_audio_keep_alive
make install # builds, copies to /Applications and launches
Run it from /Applications, not from the build folder: if that folder is on an external drive that disconnects while the Mac sleeps, the app crashes. Then turn on Launch at login in Settings.
The menu bar icon is a pair of bookshelf speakers: filled while it's keeping the speakers awake, outlined when it's idle, and with a warning badge if the output device is missing. Can't see the icon? Open the app again from Finder or Spotlight and Settings appears.