Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

MacBook Pro won't put external display to sleep when idle

I have a Mid-2015 MacBook Pro running High Sierra. I mostly use it as a desktop, in clamshell mode with an external monitor and keyboard.


I recently replaced the 24-inch LG monitor that was connected using a Mini DisplayPort to VGA adapter with a 32-inch Acer EB321HQ-U connected using Mini DisplayPort to DisplayPort.


I have Energy Saver set to put the display to sleep after 5 minutes. But this is being ignored, and it's showing the screen saver instead, even though this time is set higher. I have the screen saver set to black, but the backlight is still on so there's a dim glow from the monitor, and it's wasting energy.


This wasn't happening with my previous monitor. Is there anything that can be done about it?


It is possible for the Mac to sleep the monitor. If I press Ctl-Shift-Power, the display clears, it cycles through the various inputs, then displays "No Signal" and goes black. It just doesn't do this automatically when idle.

MacBook Pro 15", macOS 10.13

Posted on Apr 3, 2019 9:32 PM

Reply
Question marked as Best reply

Posted on Apr 4, 2019 5:30 PM

So it appears that coreaudiod disables screen sleep when you have an external monitor that supports audio, because dropping the signal to the monitor would also kill the audio. Even if it's not selected as the default output device, I guess it's concerned that an application might start up while the display is asleep and it wants to use that output device.


I found a workaround. I installed ScriptSaver, a screensaver that runs an AppleScript. And I set it to run a script that contains


do shell script "pmset displaysleepnow"

Similar questions

11 replies
Question marked as Best reply

Apr 4, 2019 5:30 PM in response to Barry Margolin

So it appears that coreaudiod disables screen sleep when you have an external monitor that supports audio, because dropping the signal to the monitor would also kill the audio. Even if it's not selected as the default output device, I guess it's concerned that an application might start up while the display is asleep and it wants to use that output device.


I found a workaround. I installed ScriptSaver, a screensaver that runs an AppleScript. And I set it to run a script that contains


do shell script "pmset displaysleepnow"

Apr 4, 2019 4:57 PM in response to Barry Margolin

I think I've found what's preventing display sleep. I see this from "pmset -g":


displaysleep         5 (display sleep prevented by coreaudiod)


So I just need to figure out why coreaudiod is preventing it. I thought it might be because I have my output device set to the monitor, but I tried setting it back to the internal speakers and it didn't change.


"pmset -g assertions | grep -i sleep" says:


   PreventUserIdleDisplaySleep    1

   PreventSystemSleep             0

   InternalPreventDisplaySleep    1

   PreventUserIdleSystemSleep     1

   pid 159(coreaudiod): [0x000138bb00018bb1] 00:00:00 PreventUserIdleSystemSleep named: "com.apple.audio.AppleHDAEngineOutputDP:3,0,1,0:0:{7204-0507-01010101}.context.preventuseridlesleep" 

   pid 159(coreaudiod): [0x000138bb00058bb2] 00:00:00 PreventUserIdleDisplaySleep named: "com.apple.audio.AppleHDAEngineOutputDP:3,0,1,0:0:{7204-0507-01010101}.context.preventuseridledisplaysleep" 

   pid 75(powerd): [0x0000bb3c00108108] 00:00:00 InternalPreventDisplaySleep named: "com.apple.powermanagement.delayDisplayOff" 

Idle sleep preventers: IODisplayWrangler

MacBook Pro won't put external display to sleep when idle

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.