web-dev-qa-db-fra.com

Comment puis-je sortir du sommeil en utilisant un clavier Bluetooth

J'ai un Mac Book Pro et un dock Henge. Le dock n’est rien de plus qu’un support qui vous permet de brancher facilement quelques appareils afin que vous puissiez "ancrer" votre MBP. J'ai aussi un clavier sans fil Apple. Le clavier est Bluetooth.

Le clavier fonctionne bien "normalement" mais le problème vient du fait que je ferme le couvercle de mon ordinateur portable MBP (l'ordinateur ne se met pas en veille) (je ne peux pas l'éviter). dormir (je suppose parce que pas de bluetooth). Si j'utilise ma manette de jeu pour faire sortir l'appareil du mode veille, le mot de passe de l'écran de verrouillage s'affiche, mais je ne peux rien entrer car le clavier Bluetooth n'est pas connecté.

Alors, comment puis-je faire sortir le Mac Book Pro du mode veille à l’aide d’un clavier Bluetooth (le clavier sans fil Apple), ou le forcer à se reconnecter lorsque la machine reprend afin que je puisse saisir mon mot de passe?

Voici mes détails matériels.

Mac Book Pro 6.2 (je sais que cela ne fonctionne pas normalement mais c'est une plate-forme matérielle fermée)

Dispositif de bus 001 008: ID 050d: 0017 Composants Belkin B8T017 Bluetooth + EDR 2.1
Périphérique de bus 001 007: ID 05ac: 8218 Contrôleur d’hôte Bluetooth Apple, Inc.

Version Linux

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

Ubuntu 12.10

Ce que j'ai fait:

Jumelé mon Apple Clavier sans fil avec Ubuntu.

Ce que j'attends:

Lorsque j'écrase une touche de mon clavier sans fil Apple, le système sort du mode veille.

Que se passe-t-il?

Lorsque j'écrase une touche de mon clavier sans fil Apple; Rien.....

Ce que j'attends d'une réponse acceptable:

Une façon de faire en sorte que lorsque je écrase une touche mon clavier Apple, mon ordinateur sort du mode veille et que je puisse continuer ma journée informatique.

à noter:

Habituellement, je déteste voir cela et le dire, mais .... Cela fonctionne sous Mac OS X et Windows, je sais donc que le matériel est capable de le faire.

8
coteyr

Ce que j'ai trouvé

Je vais prendre le temps d'expliquer certaines choses que j'ai découvertes. Cela devrait aider les gens à comprendre pourquoi il s’agit d’un processus si compliqué et ce qu’ils peuvent faire pour l’améliorer, du moins pour eux.

Premièrement, la radio Bluetooth sur le MBP est un périphérique "USB". Ceci est assez courant sur les ordinateurs portables et même sur certains ordinateurs de bureau. À cause de cela, Linux le traite comme un périphérique USB et vous pouvez le configurer en conséquence.

Deuxièmement, la radio Bluetooth a deux modes. Le mode HID est un "profil" très basique pour les claviers et les souris uniquement. C'est ce mode qui vous permet d'utiliser le clavier avant qu'une application gère le périphérique Bluetooth. Par exemple, lorsque vous utilisez votre clavier Bluetooth dans le menu GRUB, il s’agit du mode HID. Votre ordinateur portable et votre clavier doivent toujours être appariés, mais ils peuvent fonctionner à ce niveau très bas sans problème ni intervention (une fois encore appariés). Cependant, le mode HID est très limité et certaines choses ne fonctionneront pas. Par exemple, le niveau de la batterie du clavier ne fonctionnera pas. Également en mode HID, j’ai eu du mal à utiliser les touches de fonction et les touches multimédias (sur ce clavier, c’est la même touche et elle peut être basculée par logiciel).

Ensuite, vous devez faire en sorte que le clavier envoie "quelque chose" à l'ordinateur portable. Vous avez également besoin de l'ordinateur portable pour recevoir "quelque chose". Ensuite, vous devez lier le tout pour que l'ordinateur portable se réveille réellement.

Enfin, Linux, Ubuntu, Bluez, ou une autre personne, semblent penser que tous les contrôleurs Bluetooth doivent agir en mode HCI. Il s’agit probablement d’un paramètre par défaut très sain, même si ce clavier est très limité en mode HID et que tout ce qui est au-delà d’une simple souris et d’un simple clavier (par exemple, un téléphone cellulaire ou un kit oreillette) nécessiterait le mode HCI. Cependant, le mode HCI nécessite une pile logicielle complète pour s'exécuter et ne fonctionnera pas tant que l'ordinateur portable est suspendu/en veille/éteint. Ainsi, par défaut, lorsque votre ordinateur portable est en veille, il déconnecte votre clavier et cesse d'écouter.

Étapes à suivre pour le faire fonctionner

Étape 0: une solution de contournement

Lorsque je faisais cela, j'étais très frustré par le fait que je ne pouvais rien faire pour résoudre le problème. Vous ne pouvez rien faire lorsque l'ordinateur portable est en veille et, du moins, avec le Mac Book Pros, vous ne pouvez pas fermer le couvercle sans s'endormir. Donc, votre gauche avec une situation où soit la vidéo ne fonctionnera pas (car il va sur votre moniteur externe qui n'est pas branché quand hors connexion), ou vous pouvez tout voir mais pas de clavier (parce que ça ne marche pas/jumelé/peu importe, et l’interne n’est pas accessible). Pour résoudre ce problème, vous devriez le rencontrer. Utilisez le clavier visuel sur l'écran de connexion de LDM. Si vous recevez une invite de mot de passe, vous devriez pouvoir cliquer sur changer d'utilisateur, puis utiliser le clavier visuel pour vous connecter. Tant que vous vous connectez en tant que même utilisateur, votre session ne doit pas être perdue. Cela dit, je ne laisserais aucun travail non sauvegardé en suivant ces étapes.

Étape 1: pré-jumelez votre clavier.

En testant, j'ai remarqué que cette étape était nécessaire. Cependant, je ne comprends pas vraiment pourquoi. Apple fait des choses étranges alors je vais les laisser tomber.

  1. Réinitialisez votre PRAM/NVRAM/Whatever. Cela effacera vos paramètres OS X actuels et ne sera peut-être pas nécessaire, mais il vaut mieux commencer en mode minimal. Le site Web d'assistance Apple contient des instructions . Vous n'avez pas besoin de réinitialiser le PMU.
  2. Démarrez ou redémarrez sous OS X et associez votre clavier normalement. Je recommande de laisser tous vos autres périphériques Bluetooth éteints et de vous concentrer sur votre clavier. D'après ce que je peux dire, cela stockera des informations dans la NVRAM et tout le clavier pour communiquer avec l'ordinateur portable hors tension.
  3. Cliquez sur Avancé (sous OS X, une fois couplé) et cochez la case "Autoriser les périphériques Bluetooth à réveiller l'ordinateur". Encore une fois, le site Web d'assistance Apple a des instructions
  4. Redémarrez l'ordinateur sous Linux. À ReFIT/GRUB/lors du démarrage, le clavier devrait fonctionner correctement.

Etape 2: Amener Linux à fonctionner avec le clavier

Pour une raison quelconque, le clavier perdra sa liaison lors de la connexion. Probablement parce que le contrôleur Bluetooth est passé en mode HCI. Pour corriger cela, vous devez vous connecter sous Linux. Cela rompra le couplage que vous avez effectué à l'étape 1, mais pas le mode HID lorsque l'ordinateur portable est éteint ou en cours de démarrage. Cela dit, lorsque vous redémarrez, votre clavier ne fonctionnera pas tant que votre pile Bluetooth ne fonctionnera plus en mode HCI. En effet, le clavier essaie de parler en mode HCI mais personne n’écoute. Si vous arrêtez et attendez la fin de la connexion, le clavier fonctionnera à nouveau en mode HID.

  1. Installez bluez-compat en exécutant Sudo apt-get install bluez-compat. Cela vous permettra d’apparier facilement. Sans le gestionnaire Bluetooth vient de s'écraser pour moi.
  2. Associez votre clavier normalement avec Linux. Exécutez Bluetooth à partir du tableau de bord Unity et cliquez sur le plus. Mettez votre clavier en mode de couplage (maintenez le bouton d'alimentation enfoncé sur le clavier sans fil Apple et suivez les instructions). Il devrait s'associer assez facilement. À ce stade, votre clavier devrait fonctionner correctement sous Linux et même envoyer des signaux à un contrôleur HID lorsque l'ordinateur portable est en veille.

Étape 3: Indiquer à Linux qu'il doit se réveiller

Nous devons maintenant dire à Linux de se réveiller si le périphérique Bluetooth obtient "quelque chose". Faire cela est assez facile grâce aux scripts de ce site . Les instructions de base sont ci-dessous mais vous devriez lire le site si quelque chose n’est pas clair. Presque tout cela provient du site lié.

  1. Installer des dépendances Sudo apt-get install notify-send zenity
  2. Téléchargez le script de résumé udev et copiez-le dans/usr/local/sbin/enable-wakeup.
  3. Téléchargez le script de sélection de périphérique et copiez-le dans/usr/local/sbin/select-resume-devices
  4. Rendre les scripts exécutables: chmod a+x /usr/local/sbin/select-resume-devices et chmod a+x /usr/local/sbin/enable-wakeup.
  5. Exécutez avec les autorisations root le script de sélection de périphérique. Sudo /usr/local/sbin/select-resume-devices
  6. Sélectionnez au minimum "Contrôleur hôte Bluetooth Apple, Inc.", "Composants Belkin B8T017 Bluetooth + EDR 2.1", "Clavier/Trackpad interne Apple (ANSI)" et tout autre périphérique que vous souhaitez utiliser pour redémarrer votre ordinateur. .
  7. Cliquez sur OK.
  8. Examinez le fichier /etc/udev/rules.d/90-hid-wakeup-enable.rules et assurez-vous que cela a du sens.
  9. Redémarrer le PC.

Étape 4: Tests et captures

Tout devrait bien fonctionner maintenant que vous avez redémarré votre ordinateur. Une fois que vous êtes connecté à nouveau, mettez votre ordinateur en mode veille d'une manière ou d'une autre. Frappez une touche sur votre clavier et l'ordinateur portable devrait reprendre. Il y a cependant quelques prises.

  1. Lorsque l'ordinateur est en mode veille, il recherche des périphériques HID. Donc, le clavier démarre en mode HID. Après avoir quitté le mode veille, Linux recherche un périphérique HCI. Le clavier (pas l'ordinateur portable) doit réinitialiser la connexion. Cela se produit naturellement après environ 45 secondes. Vous pouvez le forcer en retirant les piles, mais cela peut gâcher le jumelage. Si vous n'utilisez pas le clavier pour quitter le mode veille, ce n'est pas un problème.
  2. Lors du redémarrage, le clavier tentera toujours de communiquer en mode HCI, mais l'ordinateur portatif ne recherchera que des périphériques HID. De nouveau après le délai d'attente, le clavier l'obtiendra et fonctionnera à nouveau correctement.
7
coteyr