-
Notifications
You must be signed in to change notification settings - Fork 32
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
How to fix BLE devices #12
Comments
Thank you very much for your solution. |
No, that never happened to me. I also recently got ahold of a Microsoft Designer Keyboard (which is also BLE) and it works fine on that too. CSRK is useless basically, it's only used during the initial key generation process, no idea why Microsoft keeps it in the registry (if you edit it to all zeros it still works). |
Thank u so much for ur reply. i've tried to fill the values to win registry but the mouse was still not working. i'will look for other bluetooth 4.0 mouse to do a test. Maybe it's device variant. |
I managed to find a Mictosoft Designer mouse and modified the plists, then rebooted. The values changed all the same. |
I first disable bluetooth on macOS before replacing the plists. Then I use the command line (with sudo) to copy the plists somewhere else, make them accessible by myself, and use the XCode built-in plist editor. I then change the permissions back to those of the originals and copy them back, then reboot. I finally re-enable bluetooth. This works on both Sierra and High Sierra. I doubt anything changed on Mojave. |
Disabling bluetooth is the KEY STEP. |
Thanks for the acknowledgement, I also clarified that Bluetooth should be disabled and then enabled again in the first post |
|
Did you try looking for the new location? |
|
I'd try looking for the mac addresses of the devices or something like that... if nothing shows up, maybe they're in the filesystem now |
Turns out I was probably wrong. I re-paired the mouse and re-run regedit under PSExec and there are new values in the Keys... I guess I must have done something wrong the first time. UPDATE: And it indeed works! Thanks! |
0x00:System and Device:
0x01:Delete paired bluetooth info.(All paired devices will be deleted!!!)
0x02:Pair your device under macOS, export pair info.
Notice:mac address of the mouse at this time is : use psexec to run regedit,export
the mac address of the mouse at this time :(1 more than macOS) 0x03:use Plist Edit Pro to modify com.apple.bluetoothd.plist
Modified:
Save。 0x04:modify ~/Desktop/mouse/AfterPaired/com.apple.bluetoothd.plist using Plist Edit Pro 0x05:replace system file TURN OFF bluetooth!! make sure the privilidge is 600,owner is root:wheel。
make sure the content of the file is correct
0x06:reboot to win10 and mac seperetely,check whether the mouse is connected。 |
@foxevereg You don't need to endian-swap the IRK as far as I know. Both my Designer mouse and my Designer keyboard work without swapping it (and I think it doesn't make sense that Apple would have IRK and LTK with different endianness). |
I think it doesn't make sense that Apple would have IRK and LTK with different endianness too. It seems either endianness will work under macOS? |
it's been a while since the last update to this post but I didn't want to open a new case so let's write here. However, I've got a big issue with the Microsoft Modern keyboard - I cannot get it to work :( Does anyone have any ideas what I can try to make it work? Any help is more than welcome! Cheers! |
I have a device that shows up as BLE in macOS, but Classic Bluetooth in Windows. What can I do to make this somehow work? The device is a Bose QuietComfort 35 II, and in Windows, it actually shows up in the pairing list as two devices, one of which is BLE and does absolutely nothing, the other of which is Classic Bluetooth and works. macOS, on the other hand, only seems to want to connect to it using BLE, which works. Is it possible to somehow disable BLE in macOS temporarily so I can get it paired to both systems using the same method? |
Anyone has any tip for the above case? I would love to use my Microsoft Modern Keyboard on macOS without the USB cable, but that seems impossible. =/ |
Howdy, I have Microsoft Modern Mobile Mouse (it's next step evolution Microsoft Designer Mouse), after paring, OS (Windows 10 and Hight Sierra) not created IRK and Address Fields in *.plist and Reg, who fighting with this trouble? |
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\ is EMPTY under Windows 10 |
It is empty after 20H2 upgrade. |
it is not empty |
@roddy20 , how do I do that exactly? |
Sorry. You need to run regedit with pstool (official from MS) to get rights of SYSTEM user. Then you will see contents of BTHPORT section. |
many thanks, I'll give it a try on my desktop PC first :-)
…On Sun, 9 May 2021 at 18:29, borodaxel ***@***.***> wrote:
It is empty after 20H2 upgrade.
Sorry. You need to run regedit with pstool (official from MS) to get
rights of SYSTEM user. Then you will see contents of BTHPORT section.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#12 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AGLSXILKHTXCMA7JMCPONWLTMZBXZANCNFSM4FMX5OJA>
.
|
I assume this is with the PsExec.exe ??? with flags?
I'm new to all this, so any help is appreciated.
PS. I am using Logi Pebble mouse, so if it's not compatible - let me know
Oh, also Logi MX Anywhere 2S
Cheers
…On Mon, 10 May 2021 at 11:30, Craig Cooper ***@***.***> wrote:
many thanks, I'll give it a try on my desktop PC first :-)
On Sun, 9 May 2021 at 18:29, borodaxel ***@***.***> wrote:
> It is empty after 20H2 upgrade.
>
> Sorry. You need to run regedit with pstool (official from MS) to get
> rights of SYSTEM user. Then you will see contents of BTHPORT section.
>
> —
> You are receiving this because you commented.
> Reply to this email directly, view it on GitHub
> <#12 (comment)>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/AGLSXILKHTXCMA7JMCPONWLTMZBXZANCNFSM4FMX5OJA>
> .
>
|
try this fork: it works with mine. |
That's probably a residual file from previous OS. After fresh installing macOS Monterey, I have no such file with multiple BT devices connected. BCM94360NG. |
@whatnameisit you can view this post on Reddit for manual instructions. |
Thanks, headkaze. I am now able to use BLE devices on macOS and Windows with single profiles!
|
I'd be interested in adding support for these 4 additional attributes to Hackintool. Can you please post the output to the following commands (as well as your final working Windows .reg file).
|
@headkaze, I don't think the first command would do anything meaningful because BLE devices have their own respective "key" like below: Windows .reg file 8863df8a2d80.zip I double-clicked the BLE device with familiar "Account"; clicked "Show Password" as stated in the reddit post; 3.txt found four attributes Encrypted Diversifier(EDIV), Long-term Key(LTK), Random Number(RAND), and Remote IRK(IRK); endian swapped EDIV and IRK; copied swapped EDIV, LTK, RAND, and swapped IRK over to Windows; and pasted them in Windows regedit accordingly. IRK was pasted in two respective places which I will show later. |
Thanks @whatnameisit. I've pretty much got it implemented in Hackintool. Can you please try the attached version and see if it will generate a matching reg file. |
@headkaze Hackintool has managed to generate reg keys for devices other than the very device I'm using right now. Honestly, I have no idea what devices those keys are for because I only have one BLE mouse. Keychain through Apple account copied from previous BLE devices which I don't know of, maybe? One other thing I noticed is that the "Account" name of those two is "Public xx:xx:xx:xx:xx:xx" whereas that for the actual device I'm using is "Random xx:xx:xx:xx:xx:xx". If you know anything about them, I'm pretty sure you will have everything sorted. If you don't, please let me know and I may do a fresh installation of macOS 12 and do the test before logging into Apple ID. |
@whatnameisit yes those devices you're seeing are old BT devices you've connected to in the past. You don't need to do a fresh installation you can safely delete them from the keychain. I have two devices connected and one has a Public and the other has a Random entry. The Public version has no Remote Encryption->Random Number entry whereas Random does. First issue I'm seeing is the "MasterIRK" value will be overwritten with each device so there must be some other way to deal with this. Second issue is the file you sent me only has a "Remote Encryption" entry but mine also contain "Local Encryption->Encrypted Diversifier" entries. These could in fact be another layer of encryption. What version of macOS do you have? Mine is macOS Monterey 12.1 Beta (21C5031d) I've also added the following entries manually although I'm not sure what they mean or what they relate to.
Please try the attached version and see if you can get two BT devices (preferably with Public and Random entries) working. What happens if you remove the "MasterIRK" entry? |
My OS version is 12.0.1(21A559). I only have one Random BLE device, so I can't test with Public BLE device. I deleted "MasterIRK" entry yet the mouse is still working after reboot: bluetooth.zip |
I've just done a release of Hackintool with ERand and EDIV reversed and removed "MasterIRK". Can you please give it a try and let me know if it looks correct to you. |
Yes, it's working all right! Thank you for your work :) |
Sorry if this is a silly question, but how did you convert the format of the values from 3.txt into the correct format for the registry? Following the reddit post I was able to get an output in the same format as yours, but I can't copy paste the values as they aren't hexadecimals |
You can use Hackintool to generate the Windows registry file (it's in the Tools tab) |
I tried that, but after importing, I found my headphones had started working, but not my mouse, so I tried looking at the generated reg file and comparing addresses there appeared to be no entry for the mouse at all, and so using Keychain Access I noticed that only the headphones had a "MobileBluetooth" entry, while the mouse had an entry similar to above. |
``Monterey has changed bluetooth architecture. headkaze's hackintool can export windows reg files. But keyboard does not work, there is both Local Encryption key and Remote Encryption key in macOS keychain xml. Keyboard still works after deleting Local Encryption keys. It seems Local Encryption does not affect BLE device connection. 20220411update: |
Hi. Hope anyone can help me. about pair my i4 with monterey and win 11. Tried use hackintool 3.8.7 for get bluetooth reg. And i can see this reg file make 2 new keys on registry (cc088d04f4b6 and dca4cad9aea4). But that key not correct with MAC address. Test it and it did not work too help help help … sos sos my i4 mac address : 72000012373e |
@headkaze can u help me some information for pairing my rii i4. Hope u can help |
Pair is complete. Just do it step by step with tutorial from china and hackintool 3.8.7
|
I am unable to see any Keys under
I ran PsExec -i RegEdit (had to create a shortcut since I have to run it as Admni) and I still see no keys. What am I doing wrong? Thanks |
In my Intel AC9560, I (re)installed bluetooth drivers after I didn't see any entries in the registry. Afterwards, I merged the keys and it has worked ever since. |
Thanks, I just tried that. I removed the Intel Bluetooth driver, rebooted.. still nothing. When you say 'merged the keys".. is there another step I need to do to see them? Just the default key. |
I use BUFFALO BSMBB09DS to test the success steps as follows
|
Hackintool does nothing for my devices, and I cannot access the guide mentioned here. Still looking for BLE support between macOS and Windows. |
I just made my BLE MS Designer mouse work on both Windows and macOS.
Steps are as follows:
-- Expand SMPDistributionKeys, and expand again the dictionary named after the bluetooth adapter MAC, you'll find one sub-dictionary for each BLE device, named after their MACs. Replace the MAC of the device you're dealing with with the new one, and expand that dictionary.
-- LTK, RAND, IRK, address and EDIV need to be changed. They're respectively LTK, ERand, IRK, Address and EDIV from the reg file, nothing needs to be endian swapped except for the EDIV (as an example, "EDIV"=dword:000080b4 in the reg file means the macOS EDIV is b480) and the Address (as an example, "Address"=hex(b):46,78,f9,ba,1a,db,00,00 in the reg file means the macOS Address is db1abaf9 7846).
The text was updated successfully, but these errors were encountered: