type
status
date
slug
summary
tags
category
icon
password
前言
小米pro的Hackintosh方案挺香的,用了也有8个月了,还是挺稳定的。
但是其中有两个很操蛋的问题:
- 内置蓝牙无法使用
- 无法驱动内置Wi-Fi
由于不想硬改,作出一些不可逆操作,所以以上问题均采用USB方案解决。
- Wi-Fi解决方案也比较完美了,使用Comfast的CF-811AC可支持5G网络,搭配GitHub上的驱动使用,效果极佳。
- 蓝牙,当时随便在淘宝买了个比较mini的USB蓝牙(加搜黑苹果关键字),倒是能用,但睡眠唤醒(设备断电)之后(手动关闭亦是如此),会导致无法使用,但如果重新插拔就又能正常使用了。(可能是驱动问题)
所以为了让蓝牙正常的工作,而又不希望每次都进行物理插拔(一点都不geek),就诞生了现在的想法:
- 使用虚拟机模拟插拔!
正文
首先是会导致蓝牙翻车的情况有:
- 长时间的睡眠唤醒
- 手动关闭蓝牙(无法再打开)
睡眠唤醒的话,直接模拟插拔就OK。
而手动关闭蓝牙,会在重新插上的时候,系统会根据之前关闭的状态再一次把蓝牙设备关闭(关闭就翻车了),形成了死循环。
所以这时需要在系统里,将蓝牙开关打开;
可以使用blueutil(终端下的蓝牙工具)进行打开操作。(拒绝手动操作)
模拟插拔使用PD虚拟机,其SDK极其完善。(在.app/Contents/MacOS内的命令行工具)
代码
shell脚本的语法十分诡异,查了好久才能写出个判断、循环语句。(???)
- 将以上所有内容结合,最后得出以下结果: