Der Darkwake - dein unbekannter Feind

  • Moin noch einmal. Also Thema Darkwake, ist auch so ein Mysterium. Da wird gemunkelt 10 oder 0 oder 11 - nein eigentlich 8 sei der perfekte Wert....


    Mhhh...sehe ich heute anders. Was ist passiert?


    OC hat mich vor Grenzen gestellt. DSDT, ACPI - alles höhere Mathematik. Kein Plan - da gibt es hier Kollegen...alle Achtung.


    Wie also sollte ich plötzlich in ein Tool, wie Opencore mit SSDT Injections reinkommen. Lesen, Lesen, Lesen...Verstehen...Probieren...Frau verärgern...4 Nächte auf dem Sofa im Keller pennen...you name it. An dieser Stelle meinen Dank an Corona! [dafuer]


    OK, was will er denn sagen.


    QUELLE: HIER

    AUTHOR: HIER


    Dabei bin ich bei den Verrückten auf eine sehr interessante Ausarbeitung eines Experten gestoßen, der dem Mysterium Darkwake auf der Spur ist.


    Kurz zusammengefasst, Darkware ist ein Bitwert, der sich aus verschiedenen Parametern addiert. Je nach SMBios werden da unterschiedliche Werte generiert. Soweit nix Neues.


    ABER, seit Catalina gibt es plötzlich keine 10, 11, 8 mehr... Sondern nur

    Code
    1. // gDarkWakeFlags
    2. enum {
    3. kDarkWakeFlagHIDTickleEarly = 0x01, // hid tickle before gfx suppression
    4. kDarkWakeFlagHIDTickleLate = 0x02, // hid tickle after gfx suppression
    5. kDarkWakeFlagHIDTickleNone = 0x03, // hid tickle is not posted
    6. kDarkWakeFlagHIDTickleMask = 0x03,
    7. kDarkWakeFlagAlarmIsDark = 0x0100,
    8. kDarkWakeFlagGraphicsPowerState1 = 0x0200,
    9. kDarkWakeFlagAudioNotSuppressed = 0x0400
    10. };

    Daraus schlußfolgert der gute Mann folgende Dezimalwerte.

    Code
    1. HID Tickle Early = 1
    2. HID Tickle Late = 2
    3. HID Tickle None = 3
    4. HID Tickle Mask = 3
    5. Alarm Is Dark = 256
    6. Graphics Power State 1 = 512
    7. Audio Not Suppressed = 1024

    Da es sich um Bitwerte handelt kann man somit darkwake 8, 10, 0 nicht mehr ableiten. Diese sind im XNU auch nicht mehr vorhanden.


    Um es kurz zu machen, der neue Standardwert ist 3. Darkwake 0, 8, 10 seien somit dann automatisch 3 - weil nicht mehr existent.


    Das Ganze gilt seit dem XNU Mojave 10.14.1.


    Somit läßt sich der PowerNap nicht mehr mit Darkwake = 0 ausschalten und muss über Terminal oder den Toggle ausgeschaltet werden.


    Ein weiterer Wichtiger Wert ist ttyskeepawake, dieser Wert bestimmt neben PowerNap regelmäßiges Aufwachen zu Wartungszwecken.


    Diesen müssen wir per Terminal ausschalten.


    Code
    1. sudo pmset -a ttyskeepawake 0

    Aber was sind denn nun mögliche Bitwerte, Menschenskindverdamminocheinmal!


    [meld] Ja Du da hinten!



    Code
    1. darkwake=0
    2. darkwake=1 (darkWakePostTickle behaviour)
    3. darkwake=2 (darkWakePostTickle behaviour)
    4. darkwake=3 (darkWakePostTickle behaviour)
    5. darkwake=256
    6. darkwake=257
    7. darkwake=258
    8. darkwake=259
    9. .. and so on...

    Mein System läuft mit darkwake=3 wie ein Träumchen.


    Bitte lasst Euch das Voodoo um die Darkwakes nicht vermiesen, ich fand das nur spannend und wollte es mal etwas eindeutschen.


    Ehre wem Ehre gebührt, der Kram ist nicht auf meinem Mist gewachsen und kann hier nachgelesen werden.


    DANKE HOLYFIELD!

    Einmal editiert, zuletzt von G.com ()

  • G.com

    Sehr schön zusammengefasst, Danke. Hast du auch herausgefunden was genau der Unterschied zwischen 1,2 und 3 ist? Ich bilde mir ein, mein PC läuft mit Darkwake auch 2 prima. Abgesehen davon, dass er nicht "von alleine" in den Ruhezustand geht. Monitor geht zwar aus, aber der Rechner läuft munter weiter, stundenlang. Ruhezustand manuell auswählen und wieder aufwachen über Keyboard oder Maus klappt hingegen sehr zuverlässig.

    Grüße, MacDream

  • macdream Leider nein. Meine Kiste ärgert mich aber seit heute auch wieder.

  • Vielen dank für die Info! Mein Laptop hat noch Darkwake 8 somit ja hinfällig! Ist dann also 3!?

  • macdream Dortania sagt zu darkwake=2: „Helps single keypress wake but disables auto-sleep

    Wenn du willst, dass der Hack von selbst einschläft, müsstest du mal darkwake=3 versuchen. Damit sollte das gehen.

    Hacken ⛏️⛏️
    Haken ✔️

    .

    anscheinend: es sieht so aus als ob, und wird wohl stimmen

    scheinbar: es sieht so aus als ob, stimmt aber nicht

  • Danke für den Hinweis, teste ich gleich mal. Ich meine mich erinnern zu können, dass JimSalabim in seinem Designare Thread berichtete dass mit Darkwake=2 sein Rechner automatisch in den Sleepmode geht.

    Daher habe ich auch den Wert 2 beibehalten. Bislang habe ich meist manuell den Ruhezustand aktiviert, daher ist mir das Problem nicht aufgefallen.


    Wolfe

    Manchmal kann es so einfach sein, mit darkwake=3 klappt nun auch der autom. sleep & Wake. :top:


    Edit:

    Naja, einmal hat es funktioniert. Jetzt ist es wieder wie zuvor, Monitor schaltet ab, Rechner läuft weiter...

    Und was auch immer in den Assertions steht, wenn ich den Ruhezustand manuell aktiviere, funktioniert es ja auch. Kann also daran nicht liegen.

    Grüße, MacDream

    2 Mal editiert, zuletzt von macdream ()

  • Ich habe das gelegentlich auch, dass mein System mal nicht schlafen geht. Oder sogar, dass er immer wieder aufwacht.


    Für a) Ist meine Lösung ein Reboot.

    Für b) Hilft nur ein CMOS Reset mittels Batterie bzw. das Umjumpern von Bios 1 auf 2 vice versa.


    Erklärungen habe ich dafür nicht. Da klemmt mal was. NVRam Reset reicht da nicht, normaler CMOS Reset über Button auf dem Board auch nicht. Verstehen tue ich das einfach nicht.

  • Dortania sagt zu darkwake=2: „Helps single keypress wake but disables auto-sleep“

    Das ist leider eine Fehlannahme von Dortania. Auto-Sleep funktioniert bei mir und vielen anderen einwandfrei mit darkwake=2. Der automatische Ruhezustand scheint allgemein ein größeres Problem mit unterschiedlichen Ursachen zu sein, aber am darkwake-Wert alleine liegt es jedenfalls nicht. Sieht man ja auch daran, dass bei macdream das Problem mit darkwake=3 auch nicht gelöst wird.

    HACKINTOSH für Musik- und Videoproduktion

    EFI-Ordner für mein System:

    Gigabyte Z390 DESIGNARE: OpenCore-EFI-Ordner und Anleitung