This guide provides updated instructions for pairing Bluetooth devices (such as keyboards or mice) in a dual-boot environment with Linux Ubuntu and Windows 10/11, incorporating community feedback and suggestions.
- Pair your Bluetooth device in Linux. This is crucial to ensure the LinkKey remains consistent.
- Note: Do not re-pair the device in Linux after completing the pairing in Windows.
- Pair the Bluetooth device in Windows. Note the MAC address of the device for later steps.
- Install the
chntpw
package to read Windows registry keys:sudo apt-get install chntpw
- Mount your Windows system drive and navigate to the System32 config folder:
cd /[MountedDrive]/Windows/System32/config
- Execute the following command in the config folder:
chntpw -e SYSTEM
- In the
chntpw
console, navigate to the Bluetooth registry keys:cd \ControlSet001\Services\BTHPORT\Parameters\Keys
- Use
ls
to list unique IDs and find your device's MAC address. - Retrieve the pairing key (hex code) associated with your device.
- Edit the corresponding file in your Linux drive:
sudo nano /var/lib/bluetooth/[Unique ID]/[Mac Address]/info
- Replace the
Key
value in the[LinkKey]
section with the pairing key from Windows. - If the
[LinkKey]
section is missing, add it manually.
- Save the changes and restart the Bluetooth service:
sudo service bluetooth restart
- Simplification with
reged
: Usereged
to export Bluetooth pairing keys directly into a file for easier identification and copying. - Bluetooth LE Devices: For Bluetooth LE devices, the data storage might differ. Users should research specific steps for these devices.
- Windows 11 Compatibility: This method is also compatible with Windows 11.
- Multiple Bluetooth Receivers: If you have multiple Bluetooth receivers, ensure you identify and use the correct pairing key.
- Changing Bluetooth MAC Address in Linux: If necessary, you can change the Bluetooth MAC address in Linux using the following commands:
sudo hciconfig hci0 down sudo bluemoon -A sudo hciconfig hci0 up sudo systemctl restart bluetooth.service
- Adding Missing [LinkKey] Section: If the [LinkKey] section is missing in the
info
file, you should add it manually.
Special thanks to the community members who provided valuable insights and suggestions, including nnnnicholas, kna0085, lguangyu, KeyofBlueS, bjoern-vh, Nielius, IgorRodriguez, princeofguilty, and others.
This is just a memo to pair a nice!nano v2 (like the board of Typeractive's Lily 58) on both Win11 and Ubuntu 22.04 simultaneously.
Prerequisites:
8. Edit the Bluetooth file for your device
Key
s ofPeripheralLongTermKey
andSlaveLongTermKey
with the upper-cased hex value ofLTK
in the device registry, or appearing in the.reg
exported with KeyofBlueS's method.[IdentityResolvingKey]
and setKey
at the upper-cased hex value ofCentralIRK
in the device registry like:9. Restart Bluetooth service