Dual Boot Bluetooth Keyboard

Derzeit spiele ich mich gerade mit meinem HTPC, dort habe ich eine Dual-Boot Konfiguration, einmal Windows 7 und einmal Arch Linux. Um bequem von der Couch aus den HTPC zu steuern hab ich mir vor einiger Zeit (damals noch eigentlich für die PS3) eine Logitech Bluetooth Tastatur gekauft. Jetzt ergibt sich das Problem, wenn ich die Tastatur mit Linux paire/verbinde, kann ich die Tastatur nicht unter Windows verwenden, ohne erneutes Pairen, und umgekehrt.

Das liegt daran, dass sich die Tastatur mit dem HTPC beim Pairen einen Link Key ausmacht. Der wird bei jeden Pairing Vorgang neu erzeugt. Das heißt man muss Windows bzw Linux dazu bringen ein und denselben Link Key zu verwenden.

Gesagt, getan, so funktioniert es:

  1. Linux vorbereiten, Tastatur verbinden (wenn ihr das schon mal gemacht habt reicht das auch)
  2. Windows vorbereiten, unbedingt den Windows Bluetooth Stack verwenden, das heißt kein Toshiba/WIDCOMM/Bluesoleil … . Diese alle deinstallieren. Gegebenfalls den Blueooth Dongle abstecken und erst nach der Deinstallation abstecken.
  3. Tastatur verbinden
  4. Reboot ins Linux
  5. Windows Partition mounten
  6. chntpw installieren (unter Archlinux bedeutet das pacman -S chntpw), chntpw ist ein minimaler Registry Editor (und mehr) für Linux
  7. zur Windows Partition wechseln, bzw in das Unterverzeichnis Windows/System32/config (den Ordner Windows ggf eurer Installation anpassen). Dort machen wir eine Sicherheitskopie von SYSTEM (das entspricht der Windows Registry HKLM).
  8. chntpw -e SYSTEM aufrufen und mittels „cd ControlSet001/services/BTHPORT/Parameters/Keys“ (unter Umständen kann es auch ControlSet002 sein) weiter in die Registry rein wechseln. Dann ein „ls“. Das listet die Unterschlüssel auf. Hier gibt es einen, der die Adresse eures Bluetooth Dongles hat, dort hinein wechseln, zb „cd aa1122334455“. Danach wieder ein „ls“. Das sollte es etwas in der Art auflisten:
    Node has 0 subkeys and 1 values
     size type value name [value if type DWORD]
     16 REG_BINARY <000761e3d5ee>
  9. das „000761e3d5ee“ entspricht der Adresse der Tastatur. Danach ein „hex 000761e3d5ee“ und ihr bekommt das hier:
    (...)\BTHPORT\Parameters\Keys\001bdc0fda10> hex 000761e3d5ee
    Value <000761e3d5af> of type REG_BINARY, data length 16 [0x10]
    :00000 4F 1F 31 B4 BC 48 15 DB C5 BA 4A 90 AE 8B AD 22 O.1..H....J.....
  10. Das „4F 1F 31 B4 BC 48 15 DB C5 BA 4A 90 AE 8B AD 22“ wiederum entspricht dem Link Key. Diesen kopieren.
  11. Die Datei „/var/lib/bluetooth/<Bluetooth Dongle Adresse>/linkkeys“ bearbeiten. Den Key austauschen (ohne Leerzeichen), dh bei mir sah es dann so aus:
    00:07:61:E3:D5:EE 4F1F31B4BC4815DBC5BA4A90AE8BAD22 0 4
  12. Danach sollte es reichen den Bluetooth Dongle neu einzustecken. Ich habe allerdings sicherheitshalber einen Reboot durchgeführt und es hat auf Anhieb geklappt 🙂

Die originale Anleitung befindet sich hier in einem Ubuntu Forum. Diese Anleitung hier habe ich mir aus zwei der Posts zusammengebastelt.

Permanentlink zu diesem Beitrag: https://techblog.steffmeister.at/dual-boot-bluetooth-keyboard/

Schreibe einen Kommentar

Deine Email-Adresse wird nicht veröffentlicht.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.