Auf anderen Antworten aufbauen und die meisten / alle Puzzleteile geben, aber keine vollständige Lösung:
- Stellen Sie sicher, dass Sie überprüfen, ob Bluetooth-Geräte Ihren Mac aktivieren sollen
- Wenn Sie das nicht möchten, deaktivieren Sie es in den Systemeinstellungen und prüfen Sie, ob das unerwünschte Verhalten weiterhin besteht (Es ist in
Bluetooth
→ Advanced…
→ Allow Bluetooth devices to wake this computer
).
- Wenn Sie Ihren Mac über Bluetooth-Geräte aktivieren müssen / möchten oder dies trotz Deaktivieren der Option weiterhin geschieht, gehen Sie folgendermaßen vor:
Installieren Sie ein Hilfsprogramm, um den Systemschlaf zu überprüfen (wenn Sie nur den geöffneten / geschlossenen Deckel unterscheiden möchten, ohne dass der Mac in den Ruhezustand wechselt, scheint es derzeit keinen einfachen Weg zu geben - dh ich habe nicht herausgefunden, wie dies erkannt werden kann), und schalten Sie Bluetooth um abhängig von Schlaf / Wach-Ereignissen.
Helfer zum Erkennen von Schlaf / Wach (überprüfen Sie die verschiedenen Optionen in diesem Beitrag):
Siehe auch diesen Beitrag über " Automatisches Ein- oder Ausschalten von Bluetooth je nach aktuellem Netzwerk (MBP mit Lion) ", in dem ControlPlane erwähnt wird
Bluetooth aus Skripten umschalten:
Meine Empfehlung: Installieren Sie Blueutil über Homebrew
Lauf im blueutil power 0
Schlaf
Und blueutil power 1
nach dem Aufwachen
Nun zu meinem Beitrag zu diesem Problem: Wenn Power Nap ein Wake-Ereignis verursacht, versuchen Sie dieses Skript für Wake, um zwischen anderen Wake-Gründen und dem Öffnen des Deckels zu unterscheiden:
#!/bin/bash
limitSec=3
currentEpoch=$(date "+%s")
wakeEpoch=$(cat /var/log/system.log | grep LidOpen | tail -n 1 | date -j -f "%b %d %T" "$(cut -c1-15)" "+%s")
wakeSeconds=$(( $currentEpoch - $wakeEpoch ))
if [[ $wakeSeconds -lt $limitSec ]]; then
logger "Enabling bluetooth again due to lid open"
blueutil power 1
fi
Es legt eine Zeitüberschreitung von 3 Sekunden fest (limitSec), ruft die aktuelle Zeit und die letzte Weckzeit ab Wake reason: EC.lidOpen
und aktiviert Bluetooth erneut, wenn dies weniger als 3 Sekunden her ist