之前写了共享蓝牙3.0设备的方式,最近黑苹果驱动已经修复了macOS12 intel蓝牙设备连接蓝牙5.0以上设备的问题。于是,决定把小新鼠标用蓝牙5.0与黑苹果连接,因为5.0连接速度快,更稳定。但是却发现之前的方法不能实现windows11与mac共享同一个蓝牙5.0设备。
经过几天尝试,今天终于成功了。
2022-10-22更新
个人分析原理是这样:蓝牙5.0设备连接的时候会生成一个随机ID和随机配对KEY,我们需要修改两个系统中任意一个系统的设备ID和KEY,使之和蓝牙5.0设备最后一次配对时生成的设备ID和KEY一致,这样设备就能跨系统连接了。
参考资料:Monterey、Win11、Linux多系统中蓝牙鼠标共用 – 知乎 (zhihu.com)
操作步骤:
1.在Windows11下连接设备
2.打开 更多蓝牙设置 (在设置->蓝牙和其他设备->更多蓝牙设备)
3.点击 硬件 选项卡,查看刚刚连接的设备详情
4.点击 刚刚添加的设备,再点击 属性,弹出的窗口点击 详细信息,下拉菜单选择 硬件ID
记录下该设备当前的ID,就是DEV_后面那一串
5.重启进入mac,重新连接该设备
6.连接成功后断开,使用Hackintool(3.8.5以上版本)导出蓝牙注册表,或者按照参考文献的办法手动操作。中间需要输入用户名和密码,请全部输入。如果用参考文献的方式,请记录下该设备在mac下的ID。
钥匙串里可以查看ID,账户那一行,Random后面的一串16进制字符串就是,在Windows中使用的时候要把中间的冒号去掉
7.重启返回Windows11,用PSTool启动注册表编辑器(需要管理员权限)
psexec -s -i regedit
8.进入HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys\ 这里可以看到一个12位16进制ID命名的键值组,这个就是蓝牙接收器的ID,打开可以看到已配对的设备ID。
先把需要修改的设备ID改成macOS的ID,再导入刚才导出的注册表,如果蓝牙设备比较多,只需要导入对应设备这一段的内容就行(按参考文献,手动建立相应键值也可以)
9.把注册表编辑器左侧导航栏缩至顶部,搜索之前记录的设备在Windows11下的ID,并全部改成在macOS下的ID,总共有几十个,耐心一点。修改的时候最好不要启用蓝牙。
有些是在键值名称中的一部分,有些是在键值的数据中,一定要全部修改,改完后,重启继续进入Windows11,该设备就可以自动连接了。
至此,Windows11与macOS12就可以共享同一个蓝牙5.0LE设备了。
发表回复