23

I have recently purchased an external monitor that I am connecting to my MacBook Pro (Late 2009) using the MiniDisplay-to-VGA adapter. I have both the external monitor and the MacBook's monitor set to "Best Available" resolution in OS X Lion. Whenever the computer "wakes up" from its sleeping state, the resolution setting for the external monitor is "forgotten". Every time the computer "wakes up", the resolution of the external monitor is set to match the MacBook's monitor.

The only reason I am using the VGA cable rather than a DVI cable, is because I do not have the MiniDisplay-to-DVI adapter. Will switching to DVI solve the problem? Is there any known way to solve this issue other than getting a utility to reset the resolution manually every time?

Thanks.

4
  • Not sure if that is the problem. It sounds like your computer isn't storing the list of previous screen profiles it has been connected to. I know that once i connect to a screen there is a profile stored somewhere that has information like what the resolution it is set to, arrangement of screens, wallpaper, etc. Sounds like thats failing to save. My suspicion is the file ~/Library/Application Support/Preferences/com.apple.desktop.plist isn't getting updated. But I'm not sure if thats where it is getting stored either. Mar 17, 2013 at 3:06
  • Out of interest is this issue still fixed? I'm faced with the same thing (now), since a recent update (on 10.8.3 now). I also notice now (since update) that the bluetooth mouse appears to be waking mine from sleep where as it never used to, I only used to be able to wake it using the bluetooth keyboard... PRAM reset didn't fix it for me :/
    – nzcoops
    Mar 27, 2013 at 1:01
  • The issue still happens, but with much less frequency since I reset the NVRAM (as indicated in the approved answer). Mar 27, 2013 at 15:42
  • Something very similar happening right now. Macbook Pro 2016 edition, using only external LG 4K monitor (MBP closed). After waking up from sleep, it seems that the 4K monitor goes down to some really low 1080p resolution etc.
    – Jonny
    Mar 30, 2020 at 4:51

7 Answers 7

22
+50

I recommend you reset your NVRAM. This chip stores information on screen resolution and can often become corrupted. You can reset it by starting your Mac while holding down cmd + opt + P + R . You should hear the Mac chime, restart and chime a second time. Then you can release the keys you are holding. More info here.

1
  • Thank you for the information. After resetting the NVRAM with the instructions you mention, the resolution seems to be 'remembered' correctly after the computer comes back from its sleep state. Mar 18, 2013 at 11:12
6

I found an easy way around this and I hope it helps people. I tried resetting the NVRAM and it did not help. I am pretty sure it is due to flaw in the OS upgrade.

Here is the fix. Set up video so that when you move to the top left corner, the video shuts off. When you come out of sleep, if the resolution is low, move the mouse to the top left to shut the video off. If you left click the mouse in the position, it should reset the optimal resolution as it does with my MacBook Pro 15"

2
  • 1
    "When you come out of sleep" is required to make this solution work, i.e. if your Mac is not sleeping and your external monitor resolution is low then put your Mac to sleep (apple menu), then wake it up, then "if the resolution is low.."
    – Ando
    Jan 28, 2014 at 17:13
  • 4
    "Set up video so that when you move to the top left corner, the video shuts off." — what does this mean?
    – oarfish
    Jan 10, 2016 at 11:45
2

Well none of this worked for me. This is what I did before I found the issue.

After the computer would come back on after sleep (macbook pro mavericks, screaming computer with 8gigs ram, retina) the right side monitor, out of the 2 monitors I have plugged in by VGA->DVI, continued to be reset from 1600x900 to 800x600. I would:

  • Unplug the DVI port from the mac. No luck.
  • Unplug and power off the monitor, turn back and on and plug back in. No luck.
  • Unplug, power off monitor, restart mac, plug back in, and then power back on. No luck.
  • Go to display settings, push Option to get "Detect Displays", clicked, no change.
  • Turn everything off, restart computer while pushing Command + Option + P + R, turn everything back on, plug back in... STILL not resetting back to best display for that monitor.

Needless to say I was getting pretty frustrated. Until I thought, what about unplugging the VGA from the DVI adaptor? Well I did that, connected back together and voila, screen reset.

So to anyone that has this problem in the future, it could be something in the actual DVI adaptor that could be having the issue too! If all fails, try unplugging the adaptor from your monitor cable and see if that works. It did for me.

1
  • For me, switching my mini-DP cable to a different thunderbolt port on the MacBook caused the missing resolutions in QuickRes to reappear again.
    – WilliamKF
    Aug 14, 2020 at 2:11
1

I found a super easy fix for when this happens to me. My external monitor is plugged into a power strip and if I flip the power of the strip off and then back on again the external monitor shows me options for display resolution if I am in display preferences on my Macbook Pro (Mid 2010). I hope this helps.

0

I had a similar problem with an iMac from 2009, my second display is connected via a firewire-to-VGA adapter. I tried everything to fix this issues, reseting the nvram worked after a reboot but the next time the monitor 'slept' the problem occured again. When i tried to set the resolution manually my resolution (1920x1080) was not listed, even when holding the 'option' key to show more resolutions.

I found a solution on this post by Andreas Schwarz on embdev.net (see the link in his code bellow, i can't post more than 2 links) It's was not directly intended to correct the problem, but it does with me.

The problem can be solved by overriding the EDID data of the display in order to tell OS X that the display only supports RGB. This can be done by reading the EDID with "ioreg -l", modifying the offending bits (see the specification in the Wikipedia article), and creating a display config override file for OS X.

He then provided a ruby script to create this override file :

#!/usr/bin/ruby
# Create display override file to force Mac OS X to use RGB mode for Display
# see http://embdev.net/topic/284710
# 
# Update 2013-06-24: added -w0 option to prevent truncated lines

require 'base64'

data=`ioreg -l -w0 -d0 -r -c AppleDisplay`

edid_hex=data.match(/IODisplayEDID.*?<([a-z0-9]+)>/i)[1]
vendorid=data.match(/DisplayVendorID.*?([0-9]+)/i)[1].to_i
productid=data.match(/DisplayProductID.*?([0-9]+)/i)[1].to_i

puts "found display: vendorid #{vendorid}, productid #{productid}, EDID:\n#{edid_hex}"

bytes=edid_hex.scan(/../).map{|x|Integer("0x#{x}")}.flatten

puts "Setting color support to RGB 4:4:4 only"
bytes[24] &= ~(0b11000)

puts "Number of extension blocks: #{bytes[126]}"
puts "removing extension block"
bytes = bytes[0..127]
bytes[126] = 0

bytes[127] = (0x100-(bytes[0..126].reduce(:+) % 256)) % 256
puts 
puts "Recalculated checksum: 0x%x" % bytes[127]
puts "new EDID:\n#{bytes.map{|b|"%02X"%b}.join}"

Dir.mkdir("DisplayVendorID-%x" % vendorid) rescue nil
f = File.open("DisplayVendorID-%x/DisplayProductID-%x" % [vendorid, productid], 'w')
f.write '<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">'
f.write "
<dict>
  <key>DisplayProductName</key>
  <string>Display with forced RGB mode (EDID override)</string>
  <key>IODisplayEDID</key>
  <data>#{Base64.encode64(bytes.pack('C*'))}</data>
  <key>DisplayVendorID</key>
  <integer>#{vendorid}</integer>
  <key>DisplayProductID</key>
  <integer>#{productid}</integer>
</dict>
</plist>"
f.close

Executing this script in the terminal with 'ruby patch-edid.rb' creates a folder named "DisplayXXX"

move the contained folder into /System/Library/Displays/Overrides. After a reboot, the monitor should show that RGB colors are used.

After rebooting the resolution was not correct, but i was able to set the correct one in the display settings.

0

Hadn't seen this solution anywhere which worked for me and a coworker. Check to see if there are any updates for your mac. I had a security update that I was not aware of so I updated and restarted without my monitor connected and it started up just fine.

0

Go Displays in System Preferences. Then turn off "Show mirroring options in the menu bar when available".

http://s3h0.blogspot.kr/2018/03/macos-high-sierra-external-display-cant.html

1
  • fyi they edited the post to say that wasn't the cause. Dec 17, 2019 at 20:37

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .