Wie wache ich mit einer Bluetooth-Tastatur aus dem Schlaf auf?


8

Ich habe ein Mac Book Pro und ein Henge Dock. Das Dock ist nichts anderes als eine Halterung, mit der Sie problemlos einige Geräte anschließen können, um Ihren MBP "anzudocken". Ich habe auch eine Apple Wireless-Tastatur. Die Tastatur ist Bluetooth.

Die Tastatur funktioniert "normal" einwandfrei, aber das Problem ist, wenn ich den Deckel meines MBP schließe, geht der Laptop in den Ruhezustand (dies kann nicht verhindert werden). Ich lege den Laptop in das Dock (bei geschlossenem Deckel) und kann nicht aufwachen Schlaf (ich nehme an, weil kein Bluetooth). Wenn ich mein Gamepad verwende, um das Gerät aus dem Ruhezustand zu aktivieren, wird die Kennwortabfrage für den Sperrbildschirm angezeigt. Ich kann jedoch nichts eingeben, da die Bluetooth-Tastatur nicht angeschlossen ist.

Wie kann ich das Mac Book Pro mit einer Bluetooth-Tastatur (der Apple Wireless-Tastatur) aus dem Ruhezustand wecken oder andernfalls die Verbindung erzwingen, wenn das Gerät wieder aufgenommen wird, damit ich mein Kennwort eingeben kann?

Hier sind meine Hardware-Details.

Mac Book Pro 6.2 (Ich weiß, dass das normalerweise nicht funktioniert, aber es ist eine geschlossene Hardwareplattform)

Bus 001 Gerät 008: ID 050d: 0017 Belkin-Komponenten B8T017 Bluetooth + EDR 2.1
Bus 001 Gerät 007: ID 05ac: 8218 Apple, Inc. Bluetooth Host Controller

Linux-Version

Linux macbook 3.5.0-22-generic #34-Ubuntu SMP

Ubuntu 12.10

Was habe ich getan:

Koppelte meine Apple Wireless-Tastatur mit Ubuntu.

Was ich erwarte:

Wenn ich eine Taste auf meiner Apple Wireless-Tastatur drücke, erwacht das System aus dem Ruhezustand.

Was geschieht:

Wenn ich eine Taste auf meiner Apple Wireless-Tastatur zerdrücke; Nichts.....

Was ich von einer akzeptablen Antwort erwarte:

Eine Möglichkeit, dies so zu gestalten: Wenn ich eine Taste auf meiner Apple Wireless-Tastatur zerdrücke, erwacht mein Computer aus dem Ruhezustand und ich kann meinen Computertag fortsetzen.

Bemerkenswert:

Normalerweise hasse ich es, das zu sehen und zu sagen, aber ... Es funktioniert unter Mac OS X und Windows, daher weiß ich, dass die Hardware dazu in der Lage ist.

Antworten:


7

Was ich fand

Ich werde mir die Zeit nehmen, um ein paar Dinge zu erklären, die ich herausgefunden habe. Dies sollte den Menschen helfen zu verstehen, warum dies ein so komplizierter Prozess ist und was sie tun können, um ihn zumindest für sie zu verbessern.

Erstens ist das Bluetooth-Radio am MBP ein "USB" -Gerät. Dies ist auf Laptops und sogar einigen Desktops durchaus üblich. Aus diesem Grund behandelt Linux es als USB-Gerät und Sie können es entsprechend konfigurieren.

Zweitens verfügt das Bluetooth-Radio über zwei Modi. Der HID-Modus ist ein sehr einfaches "Profil" nur für Tastaturen und Mäuse. In diesem Modus können Sie die Tastatur verwenden, bevor eine Anwendung das Bluetooth-Gerät verwaltet. Wenn Sie beispielsweise Ihre Bluetooth-Tastatur im GRUB-Menü verwenden, ist dies der HID-Modus. Ihr Laptop und Ihre Tastatur müssen noch gekoppelt werden, sie können jedoch ohne Probleme oder Eingriffe auf diesem sehr niedrigen Niveau betrieben werden (erneut gekoppelt). Der HID-Modus ist jedoch sehr eingeschränkt und bestimmte Dinge funktionieren nicht. Zum Beispiel funktioniert der Akkuladestand der Tastatur nicht. Auch im HID-Modus hatte ich Schwierigkeiten mit Funktionstasten und Medientasten (auf dieser Tastatur handelt es sich um dieselbe Taste, die per Software umgeschaltet werden kann).

Als nächstes müssen Sie die Tastatur dazu bringen, "etwas" an den Laptop zu senden. Sie benötigen auch den Laptop, um "etwas" zu empfangen. Dann müssen Sie alles zusammenbinden, damit der Laptop tatsächlich aufwacht.

Schließlich scheinen Linux, Ubuntu, Bluez oder jemand der Meinung zu sein, dass alle Bluetooth-Controller im HCI-Modus arbeiten sollten. Dies ist wahrscheinlich eine sehr vernünftige Standardeinstellung, da selbst diese Tastatur im HID-Modus sehr eingeschränkt ist und alles, was über eine einfache Maus und Tastatur hinausgeht (z. B. ein Mobiltelefon oder ein Headset), den HCI-Modus erfordern würde. Der HCI-Modus erfordert jedoch einen vollständigen Software-Stack und wird nicht ausgeführt, solange der Laptop angehalten / in den Ruhezustand versetzt / ausgeschaltet ist. Wenn Ihr Laptop im Ruhezustand ist, wird die Tastatur standardmäßig getrennt und das Hören beendet.

Aktuelle Schritte, um es zum Laufen zu bringen

Schritt 0: Eine Problemumgehung

Als ich das tat, war ich sehr frustriert darüber, dass ich nichts tun konnte, um das Problem zu beheben. Sie können nichts tun, wenn der Laptop schläft, und zumindest mit den Mac Book Pros können Sie den Deckel nicht schließen, ohne dass sie schlafen gehen. Sie haben also eine Situation, in der entweder Video nicht funktioniert (weil es an Ihren externen Monitor geht, der nicht angeschlossen ist, wenn es nicht angedockt ist) oder Sie alles sehen können, aber keine Tastatur haben (weil es nicht funktioniert / gepaart / was auch immer, und der interne ist nicht zugänglich). Um dies zu umgehen, sollten Sie darauf stoßen. Verwenden Sie die visuelle Tastatur auf dem LDM-Anmeldebildschirm. Wenn Sie mit einer Kennwortabfrage aufwachen, sollten Sie in der Lage sein, auf Benutzer wechseln zu klicken und sich dann über die visuelle Tastatur anzumelden. Solange Sie sich als derselbe Benutzer anmelden, sollte Ihre Sitzung nicht verloren gehen. Das heißt, ich würde nicht '

Schritt 1: Koppeln Sie Ihre Tastatur vor.

Beim Testen bemerkte ich, dass dieser Schritt erforderlich war. Ich verstehe jedoch nicht ganz warum. Apple macht einige seltsame Sachen, also werde ich es einfach loslassen.

  1. Setzen Sie Ihren PRAM / NVRAM / Whatever zurück. Dadurch werden Ihre aktuellen OS X-Einstellungen gelöscht und möglicherweise nicht benötigt, aber besser, um sauber zu beginnen. Auf der Apple Support-Website finden Sie Anweisungen . Sie müssen die PMU nicht zurücksetzen.
  2. Starten Sie OS X oder starten Sie es neu und koppeln Sie Ihre Tastatur normal. Ich empfehle, alle anderen Bluetooth-Geräte ausgeschaltet zu lassen und sich auf Ihre Tastatur zu konzentrieren. Soweit ich das beurteilen kann, werden einige Informationen im NVRAM und auf der gesamten Tastatur gespeichert, um mit dem heruntergefahrenen Laptop zu kommunizieren.
  3. Klicken Sie auf Erweitert (in OS X nach dem Pairing) und aktivieren Sie "Bluetooth-Geräte den Computer aktivieren lassen". Wieder einmal enthält die Apple Support-Website Anweisungen
  4. Starten Sie den Computer unter Linux neu. Bei ReFIT / GRUB / beim Booten sollte die Tastatur einwandfrei funktionieren.

Schritt 2: Linux mit der Tastatur arbeiten lassen

Aus irgendeinem Grund verliert die Tastatur beim Anmelden die Kopplung. Wahrscheinlich, weil der Bluetooth-Controller in den HCI-Modus geschaltet ist. Um dies zu korrigieren, müssen Sie unter Linux koppeln. Dadurch wird die in Schritt 1 vorgenommene Kopplung unterbrochen, der HID-Modus wird jedoch nicht unterbrochen, wenn der Laptop ausgeschaltet oder gestartet wird. Das heißt, wenn Sie neu starten, funktioniert Ihre Tastatur erst, wenn Ihr Bluetooth-Stack im HCI-Modus wieder vollständig ausgeführt wird. Dies liegt daran, dass die Tastatur versucht, im HCI-Modus zu sprechen, aber niemand zuhört. Wenn Sie herunterfahren und warten, bis die Verbindung unterbrochen ist, funktioniert die Tastatur im HID-Modus wieder.

  1. Installieren Sie bluez-compatible, indem Sie ausführen. Auf sudo apt-get install bluez-compatdiese Weise können Sie problemlos koppeln . Ohne den Bluetooth-Manager ist gerade für mich abgestürzt.
  2. Koppeln Sie Ihre Tastatur normal mit Linux. Führen Sie Bluetoothden Unity Dash aus und klicken Sie auf das Pluszeichen. Versetzen Sie Ihre Tastatur in den Pairing-Modus (halten Sie den Netzschalter auf der Apple Wireless-Tastatur gedrückt) und befolgen Sie die Anweisungen. Es sollte ziemlich reibungslos koppeln. Zu diesem Zeitpunkt sollte Ihre Tastatur unter Linux einwandfrei funktionieren und sogar Signale an einen HID-Controller senden, wenn der Laptop schläft.

Schritt 3: Sagen Sie Linux, dass es aufwachen muss

Jetzt müssen wir Linux anweisen, aufzuwachen, wenn das Bluetooth-Gerät "etwas" bekommt. Dies ist dank der Skripte auf dieser Site ziemlich einfach . Grundlegende Anweisungen finden Sie unten, aber Sie sollten die Website lesen, wenn etwas unklar ist. Fast alles kommt von der verlinkten Seite.

  1. Installieren Sie einige Abhängigkeiten sudo apt-get install notify-send zenity
  2. Laden Sie das udev-Lebenslaufskript herunter und kopieren Sie es nach / usr / local / sbin / enable-wakeup.
  3. Laden Sie das Geräteauswahlskript herunter und kopieren Sie es nach / usr / local / sbin / select-resume-device
  4. Machen Sie die Skripte ausführbar: chmod a+x /usr/local/sbin/select-resume-devicesund chmod a+x /usr/local/sbin/enable-wakeup.
  5. Führen Sie das Geräteauswahlskript mit Root-Berechtigungen aus. sudo /usr/local/sbin/select-resume-devices
  6. Wählen Sie mindestens "Apple, Inc. Bluetooth Host Controller", "Belkin Components B8T017 Bluetooth + EDR 2.1", "Apple Inc. Interne Tastatur / Trackpad (ANSI)" und alle anderen Geräte aus, die Sie zum Fortsetzen Ihres Computers verwenden möchten .
  7. OK klicken.
  8. Überprüfen Sie die Datei /etc/udev/rules.d/90-hid-wakeup-enable.rules und stellen Sie sicher, dass sie sinnvoll ist.
  9. Starte den Computer neu.

Schritt 4: Testen und Fangen

Nach dem Neustart Ihres Computers sollte alles einwandfrei funktionieren. Sobald Sie wieder angemeldet sind, versetzen Sie Ihren Computer irgendwie in den Ruhemodus. Wenn Sie eine Taste auf Ihre Tastatur drücken, sollte der Laptop wieder aufgenommen werden. Es gibt jedoch ein paar Fänge.

  1. Wenn sich der Computer im Ruhemodus befindet, sucht er nach HID-Geräten. Die Tastatur startet also im HID-Modus. Wenn Sie den Ruhemodus wieder aufgenommen haben, sucht Linux nach einem HCI-Gerät. Die Tastatur (nicht der Laptop) muss die Verbindung zurücksetzen. Dies geschieht natürlich nach ca. 45 Sekunden. Sie können dies erzwingen, indem Sie die Batterien entfernen. Dies kann jedoch die Kopplung beeinträchtigen. Wenn Sie die Tastatur nicht verwenden, um aus dem Ruhezustand zurückzukehren, ist dies kein Problem.
  2. Beim Neustart versucht die Tastatur weiterhin, im HCI-Modus zu kommunizieren, aber der Laptop sucht nur nach HID-Geräten. Nach dem Timeout wird es wieder von der Tastatur abgerufen und funktioniert wieder korrekt.
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.