Die Einstellung für die Auflösung des externen Monitors geht verloren, nachdem das MacBook aus dem Ruhezustand „aufgewacht“ ist

12

Ich habe kürzlich einen externen Monitor gekauft, den ich über den MiniDisplay-zu-VGA-Adapter mit meinem MacBook Pro (Ende 2009) verbinde. Ich habe sowohl den externen Monitor als auch den Monitor des MacBook in OS X Lion auf die Auflösung "Best Available" eingestellt. Immer wenn der Computer aus dem Ruhezustand "aufwacht", wird die Auflösungseinstellung für den externen Monitor "vergessen". Jedes Mal, wenn der Computer "aufwacht", wird die Auflösung des externen Monitors so eingestellt, dass sie mit dem Monitor des MacBook übereinstimmt.

Der einzige Grund, warum ich das VGA-Kabel anstelle eines DVI-Kabels verwende, ist, dass ich keinen MiniDisplay-zu-DVI-Adapter habe. Wird der Wechsel zu DVI das Problem lösen? Gibt es eine bekannte Möglichkeit, dieses Problem zu lösen, außer dass ein Dienstprogramm die Auflösung jedes Mal manuell zurücksetzt?

Vielen Dank.

Christian Correa
quelle
Ich bin mir nicht sicher, ob das das Problem ist. Es hört sich so an, als würde Ihr Computer die Liste der vorherigen Bildschirmprofile, mit denen er verbunden war, nicht speichern. Ich weiß, dass, sobald ich mich mit einem Bildschirm verbunden habe, irgendwo ein Profil gespeichert ist, das Informationen wie die eingestellte Auflösung, die Anordnung der Bildschirme, das Hintergrundbild usw. enthält. Klingt so, als würde das nicht gespeichert. Mein Verdacht ist, dass die Datei ~/Library/Application Support/Preferences/com.apple.desktop.plistnicht aktualisiert wird. Aber ich bin mir nicht sicher, ob es dort auch gespeichert wird.
Chad Marmon
Aus Interesse ist dieses Problem noch behoben? Ich bin (jetzt) ​​mit dem gleichen Problem konfrontiert, seit einem kürzlich durchgeführten Update (jetzt auf 10.8.3). Ich bemerke jetzt auch (seit dem Update), dass die Bluetooth-Maus meine aus dem Schlaf zu wecken scheint, wo ich sie wie nie zuvor nur über die Bluetooth-Tastatur wecken konnte ... PRAM-Reset hat das Problem nicht behoben ich: /
nzcoops
Das Problem tritt immer noch auf, jedoch mit viel geringerer Häufigkeit, da ich den NVRAM zurückgesetzt habe (wie in der genehmigten Antwort angegeben).
Christian Correa
Etwas sehr Ähnliches passiert gerade. Macbook Pro 2016 Edition, die nur einen externen LG 4K-Monitor verwendet (MBP geschlossen). Nach dem Aufwachen aus dem Schlaf scheint der 4K-Monitor eine wirklich niedrige Auflösung von 1080p usw. zu haben.
Jonny

Antworten:

15

Ich empfehle Ihnen, Ihr NVRAM zurückzusetzen. Dieser Chip speichert Informationen zur Bildschirmauflösung und kann häufig beschädigt werden. Sie können es zurücksetzen, indem Sie Ihren Mac starten, während Sie cmd+ opt+ P+ gedrückt halten R. Sie sollten den Mac läuten hören, neu starten und ein zweites Mal läuten lassen. Dann können Sie die Tasten loslassen, die Sie halten. Mehr Infos hier .

bispymusic
quelle
Danke für die Information. Nach dem Zurücksetzen des NVRAM mit den von Ihnen genannten Anweisungen scheint die Auflösung korrekt gespeichert zu werden, nachdem der Computer aus dem Ruhezustand zurückgekehrt ist.
Christian Correa
6

Ich habe einen einfachen Weg gefunden, um das zu umgehen, und ich hoffe, es hilft den Menschen. Ich habe versucht, das NVRAM zurückzusetzen, aber es hat nicht geholfen. Ich bin mir ziemlich sicher, dass es an einem Fehler im Betriebssystem-Upgrade liegt.

Hier ist das Update. Richten Sie das Video so ein, dass das Video ausgeschaltet wird, wenn Sie in die obere linke Ecke gehen. Wenn Sie aus dem Schlaf kommen und die Auflösung niedrig ist, bewegen Sie die Maus nach links oben, um das Video auszuschalten. Wenn Sie mit der linken Maustaste auf die Position klicken, sollte die optimale Auflösung wie bei meinem MacBook Pro 15 zurückgesetzt werden. "

Jack DeMember
quelle
1
"Wenn Sie aus dem Ruhezustand kommen" ist erforderlich, damit diese Lösung funktioniert. Wenn Ihr Mac nicht in den Ruhezustand wechselt und die Auflösung Ihres externen Monitors niedrig ist, schalten Sie Ihren Mac in den Ruhezustand (Apple-Menü), wecken Sie ihn dann auf Auflösung ist niedrig .. "
Ando
3
"Richten Sie das Video so ein, dass das Video ausgeschaltet wird, wenn Sie in die obere linke Ecke gehen." - was bedeutet das?
Oarfish
1

Ich habe eine super einfache Lösung gefunden, wenn mir das passiert. Mein externer Monitor ist an eine Steckdosenleiste angeschlossen. Wenn ich die Steckdosenleiste aus- und wieder einschalte, zeigt mir der externe Monitor Optionen für die Bildschirmauflösung an, wenn ich in den Anzeigeeinstellungen meines Macbook Pro (Mitte 2010) bin. Ich hoffe das hilft.

Dave Huish
quelle
1

Nun, nichts davon hat bei mir funktioniert. Dies habe ich getan, bevor ich das Problem gefunden habe.

Nachdem der Computer nach dem Schlafengehen wieder eingeschaltet wurde (MacBook Pro Mavericks, schreiender Computer mit 8 GB RAM, Netzhaut), wurde der rechte Monitor von den 2 Monitoren, die ich über VGA-> DVI angeschlossen hatte, weiterhin von 1600 x 900 auf 800 x 600 zurückgesetzt . Ich würde:

  • Trennen Sie den DVI-Anschluss vom Mac. Kein Glück.
  • Ziehen Sie den Stecker aus der Steckdose und schalten Sie ihn aus, schalten Sie ihn wieder ein und wieder ein. Kein Glück.
  • Ziehen Sie den Netzstecker, schalten Sie den Monitor aus, starten Sie den Mac neu, schließen Sie ihn wieder an und schalten Sie ihn wieder ein. Kein Glück.
  • Gehen Sie zu Anzeigeeinstellungen, drücken Sie Option, um "Displays anzeigen " zu erhalten, klicken Sie auf, keine Änderung.
  • Schalten Sie alles aus, starten Sie den Computer neu, während Sie Command+ Option+ P+ drücken R, schalten Sie alles wieder ein, schließen Sie es wieder an ... Immer noch nicht auf die beste Anzeige für diesen Monitor zurückgesetzt.

Unnötig zu erwähnen, dass ich ziemlich frustriert war. Bis ich dachte, was ist mit dem Trennen des VGA vom DVI-Adapter? Nun, ich habe das getan, wieder miteinander verbunden und voila, Bildschirm zurückgesetzt.

Für jeden, der dieses Problem in Zukunft hat, könnte es auch etwas im eigentlichen DVI-Adapter sein, das das Problem haben könnte! Wenn alles fehlschlägt, ziehen Sie den Adapter vom Monitorkabel ab und prüfen Sie, ob dies funktioniert. Es hat für mich getan.

Paul Carlton
quelle
0

Ich hatte ein ähnliches Problem mit einem iMac aus dem Jahr 2009, mein zweites Display ist über einen Firewire-zu-VGA-Adapter verbunden. Ich habe alles versucht, um dieses Problem zu beheben. Das Zurücksetzen des NVRAM funktionierte nach einem Neustart, aber als der Monitor das nächste Mal "schlief", trat das Problem erneut auf. Als ich versuchte, die Auflösung manuell einzustellen, wurde meine Auflösung (1920 x 1080) nicht aufgelistet, selbst wenn ich die Optionstaste gedrückt hielt, um weitere Auflösungen anzuzeigen.

Ich habe eine Lösung für diesen Beitrag von Andreas Schwarz auf embdev.net gefunden (siehe den Link in seinem Code unten, ich kann nicht mehr als 2 Links posten). Es war nicht direkt beabsichtigt, das Problem zu beheben, aber es funktioniert mit mir.

Das Problem kann gelöst werden, indem die EDID-Daten der Anzeige überschrieben werden, um OS X mitzuteilen, dass die Anzeige nur RGB unterstützt. Dies kann durch Lesen der EDID mit "ioreg -l", Ändern der fehlerhaften Bits (siehe Spezifikation im Wikipedia-Artikel) und Erstellen einer Überschreibungsdatei für die Anzeigekonfiguration für OS X erfolgen.

Anschließend stellte er ein Ruby-Skript zur Verfügung, um diese Überschreibungsdatei zu erstellen:

#!/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

Wenn Sie dieses Skript im Terminal mit 'ruby patch-edid.rb' ausführen, wird ein Ordner mit dem Namen "DisplayXXX" erstellt.

Verschieben Sie den enthaltenen Ordner in / System / Library / Displays / Overrides. Nach einem Neustart sollte der Monitor anzeigen, dass RGB-Farben verwendet werden.

Nach dem Neustart war die Auflösung nicht korrekt, aber ich konnte die richtige in den Anzeigeeinstellungen einstellen.

ulk200
quelle
0

Hatte diese Lösung nirgendwo gesehen, was für mich und einen Kollegen funktionierte. Überprüfen Sie, ob Updates für Ihren Mac vorhanden sind. Ich hatte ein Sicherheitsupdate, das mir nicht bekannt war, daher habe ich es aktualisiert und neu gestartet, ohne dass mein Monitor angeschlossen war, und es wurde einwandfrei gestartet.

dylan verburgt
quelle