目录
前言
2020.09.03日更新
加入opencore下定制usb驱动教程
昨晚研究了一下,花了半小时定制了UBS驱动,总的来说,在目前的系统10.14.5下,还是非常简单的,由于macOS升级后可能会导致USB失效,所以,在即将到来的新版macOS,定制USB迫在眉睫
之所以要现在定制USB,是因为,目前在10.14.5下,去除USB端口数量补丁还有效,不需要复杂的操作即可轻松定制,如果后续更新,去除USB端口数量补丁失效时再定制,那就非常麻烦了
准备工作
需要这两个APP,本文不是新手教程,需要一定的黑苹果基础
Hackintool.app
Clover Configurator.app
所需的kext
点击链接即可下载
https://sleele.com/wp-content/uploads/uPic/2020-09-03/kexts.zip
打开去除USB端口数量补丁
Comment: USB port limit patch #1 10.14.x modify by DalianSky(credit ydeng)
Name: com.apple.iokit.IOUSBHostFamily
Find: 83FB0F0F
Replace: 83FB3F0F
MatchOS: 10.14.x
Comment: USB port limit patch #2 10.14.x modify by DalianSky(credit PMHeart)
Name: com.apple.iokit.IOUSBHostFamily
Find: 83E30FD3
Replace: 83E33FD3
MatchOS: 10.14.x
Comment: USB Port limit patch #3 10.14.x modify by DalianSky(credits PMheart)
Name: com.apple.driver.usb.AppleUSBXHCI
Find: 83FB0F0F
Replace: 83FB3F0F
MatchOS: 10.14.x
Comment: USB Port limit patch #4 10.14.x modify by DalianSky(credits PMheart)
Name: com.apple.driver.usb.AppleUSBXHCI
Find: 83FF0F0F
Replace: 83FF3F0F
MatchOS: 10.14.x
重启,USB能够正常使用后,准备开始定制USB
定制USB
打开Hackintool.app
我的是已经定制完的,没有定制的话,会有很多条,打开文本编辑器,和USB3.0优盘,2.0优盘(如果没有2.0的优盘,就拿鼠标键盘来吧)插入USB上,插入后会变成绿色,记录下来,每插一个USB口就记录一次,直到所有的USB都插入过并记录下来
注意:macOS系统的USB端口数量为15个,所以我们要保证USB端口数量要在15个及以内,USB3.0要占用两个端口,操作时,UBS3端口要拿一个USB3设备插入一次,一个2.0设备插入一次,记录下来。不过如果所有的USB端口都设置为3.0,会不够用,这时就需要取舍了,我是机箱前面板为USB3.0,后置全部2.0
这是我的,你们可以参照这个格式来记录
内置USB,比如蓝牙占用的USB端口,要设置为internal,typc要正反插(插完后转180度再插入,看端口是否变换,没变化就是TypeC+Sw,有变化的就是TypeC
之后删除没有没有被记录下来的端口,注意不要保留的数量不要超过15个,用不上的USB或者对速度没要求,比如鼠标键盘打印机就设置为2.0吧
多检查检查,确保需要的USB都被记录了,没有问题后就可以导出了
会生产4个文件,不过我们只需要用到其中的三个,把这三个文件放入EFI分区的EFI/CLOVER/ACPI/patched 中
之后禁用去除USB端口数量补丁,重启电脑
至此USB定制教程结束,全程不会超过20分钟吧,实操起来开始很简单的
修改USBPorts.kext机型信息
由于我的EFI已经全线转入opencore了,所以本篇教程的部分内容可能不再实用,但是大致逻辑的思路是一样的
补充说明一下更换机型后,需要如何处理USBPorts.kext
,USBPower.kext
,这两个kext
对USBPorts.kext
右键显示包内容
编辑Info.plist
使用Xcode打开,其他编辑器应该也可以(vscode)
搜索机型 Mac
替换着两个机型信息为你的目标机型信息就可以了(就是改名字,一共两个位置,我都标出来了)
比如修改成iMac19,1
对USBPower.kext也是一样的操作即可,USBPower.kext其实可要可不要,提高USB输出电流的
opencore下定制黑苹果usb驱动
总体来说和clover下差不多,opencore的基础知识参照这篇文章
opencore和clover解除端口数量限制的方法不一样,更为简单
打开OpenCore Configurator
添加USBInjectAll.kext
并启用,打开XhciPortLimit
,如果efi里有USBPorts.kext
和USBPower.kext
请OpenCore Configurator里关闭启用,然后重启电脑
之后的操作和clover下一样了,并且不需要分别禁用usb2.0和usb3.0来保证不超出端口数定制,定制完后导出USBPorts.kext放入oc的kext文件夹
在OpenCore Configurator里添加进去我们定制的kext并启用,(这时候就可以把XhciPortLimit
选项关闭了,还有USBInjectAll.kex
记得禁用),保存OpenCore Configurator,重启PC即可
USBPower.kext
需要这个kext,下载我的efi,提取这个kext,修改里面的机型信息即可
QA
Q:为什么不用USBPorts.kext
A:USBPorts.kext很有可能在系统更新后失效,还是SSDT更加靠谱,基本是升级无忧 opencore时代,已经不提倡改名了
Q:如果我后序要更改端口类型怎么做
A:简单的改变类型,比如USB3改成internal,不需要从头做,直接更改即可
如果改的多的话,打开去除USB端口数量补丁从头再来吧
Q:定制USB有什么好处么
A:最大的好处就是可以让睡眠唤醒都正常,不用担心系统升级,如果你遇到了睡眠唤醒异常,失效,不妨定制一下USB
本文由 NG6 于2019年06月07日发表在 sleele的博客
如未特殊声明,本站所有文章均为原创;你可以在保留作者及原文地址的情况下转载
转载请注明:使用Hackintool定制黑苹果USB驱动 | sleele的博客
博主,我定制主板上的type-c口后,type-c口接声卡后,明显供电不足,能帮忙分析下可能是啥原因嘛,不胜感激!>﹏<,机型是mac min ,核显输出。10.15.7
@爱的守护 加入usbpower.kext
博主,按照你的教程定制usb卡在第一步了,hackintool的usb页面识别不到芯片组的名称,显示的是“???”,主板是b460m迫击炮,请问是什么原因呀
@zqllz 可以加入
XHCI-unsupported.kext
识别芯片组USB后再进行定制,我抽空再更新一下文章,现在的新主板需要加入这个文件,否则无法识别请教楼主,为什么clover下5.25版本里面没有这几个补丁呢?难道是手工输入的?hackintool里USB芯片组里面共有4个,EH01,EH02,SLOT。XHC,这是不是有多余的可以删掉?
@W530 1、很久没用clover了,我也不太清楚,安利来说应该不会删除这种重要补丁
2、看你芯片组了,我的的是XHC,
3、先按教程定制看看,我也不清楚用不用删
@NG6 PCIROOT(0)#PCI(1D00)#USBROOT(0)#USB(2)#USB(2), ACPI(SB)#ACPI(PCI0)#ACPI(USB0)#USBROOT(0)#USB(2)#USB(2),那我这个没得玩了,在USBtree里面也看不到是几号接口,瑞士刀里有EH01,EH02,XCH都有接口,但只有XCH里面有HS和SS显示,其他的是PR和HP。
@W530 那就只留XHC试试,太久远了,我也记不太清了,我记得BIOS里有关于USB的设置,最好进BIOS里看一下
@NG6 不搞了, 搞不了了。四个芯片组,太乱了,plist里全部修改了也没用。内建后蓝牙处于关闭状态,说明失败了,谢谢,麻烦你了。
大佬你好,请问oc怎么定制USB,网上找的教程都是clover版的。直接按你说的步骤修改好后导出USBPorts.kext文件然后在kext里替换?另外,定制前要打什么补丁吗?
@jokery 我今天抽空更新一下文章,三言两语说不清
@jokery 已更新 opencore下定制usb驱动教程
@NG6 感谢大佬🙏
@NG6 大佬,我的主板跟你一样cpu是i7 9700,之前用你的amd+igpu efi一直很完美,睡眠也很正常,这两天开始睡眠一睡就睡死,后来定制了USB也还是一样的。还请大佬指点一下
@jokery 这种情况挺玄学的,一般我都是建议重置BIOS和清除nvram试试吧,然后其他什么休眠参数都不要动
请教几个问题
1 有没有办法在usb3接口上同时启用3和2的设备,如果3的接口只能用3的设备,那我itx主板可用接口太少了。。。。。。
2 定制必须屏蔽接口吗?我的itx主板后置3×2,2×2,机箱前置3×1,目前后置的2用掉一个蓝牙了,用来连接秒控设备,所以我定制的时候,一次性定制5个端口是可靠的吗,还需要分开定制2和3吗?
3 EC的仿冒。我的H-EC显示return 0,看了xjn博客说这表明H-EC已经被禁用了。我是不是要使用官方的USBX-EC部件进行仿冒呢
谢谢
@匿名 USB3是USB3,USB2是USB2,USB3必须同时开启USB2,所以USB会占用两个2个端口
Clover
@匿名 clover的话写的很细了,再多看几遍吧,还不行就换个u盘试试
您好,我打开去除USB端口数量补丁并 放入usbinjjectall后重启,但是我的usb-c口识别不了我的usb3优盘怎么办?
@xuquanws oc还是clover?
我的跟你的USB端口完全一致,但是为什么没有SSDT-USBX.aml这个文件生成呢?
以及,我的SS06在定制前的设备显示为AppleUSBXHCI Root Hub Simulation,定制后就只能作为USB2的端口来用了,是不是跟机箱有关系呢?很神秘。
@Ryan 这个SSDT-USBX.aml不是每次都能生成的,我记得需要把所有除all外所有关于USB的补丁都删除,重启两次后定制才会出来
第二点就不太清楚了,有可能是机箱的缘故
楼主你好,我跟你主板CPU一模一样,定制了一遍之后,关机还是会重启,系统是10.15.1,请问你有碰到吗?
为什么oc里面不仅用了kext还用了ssdt?
@匿名 我忘了删了,config里没有启用就没事
感谢分享,
引导是用OC,学习下定制备用。
导出只有3项 ssdt-ec ssd-uiac usbports 正确不?用的是hackintool v2.8.6
@huangzx 如果是裸定制是4个文件,否则是三个文件,我暂时没发现有什么区别
不需要USBInjectAll.kext这个驱动吗?直接用补丁?
@chiaman 看你的选择,如果用usbports就不需要,反之则需要
重启过都可以使用了,还用定制吗,定制是为了什么
@匿名 定制更好
你好,我的主板是几技嘉的z370n,后面有usb typec,应该是在系统报告里我的usb设备树下只有usb3.0总线,而且使用hackintool的时候usb定制最上边是xchi只有usb3.0的选项,我看你的是usb3.1,为什么我的usb3.1不出来呢?
@匿名 这个应该不影响
同一款主板,博主能分享下么
@匿名 不同的人机箱不一样,USB的使用情况也不一样,请自行定制
那注入SSDT那3个文件后usbinjjectall需要删除吗?
@匿名 不能够删除
注入这3个SSDT后Kexts里的usbinjjectall需要删除吗?
@匿名 不能够删除
去除USB端口数量补丁不去掉也行吗?
@匿名 必须要去掉,要不然就禁用
定制usb 是跟smbios机型绑定的,后续如果更换smbios机型,定制里面的机型文件也要一起修改
@匿名 USB ports是机型绑定,ssdt不是,不过usbports可以手动修改机型
请问下能提供下微星 B360M Mortar的USB 3.0 的 SSDT吗?github上没找到
@jimmy 每个人的机器不一样,我的不一定适合你,还是自己定制吧
你好,在开始之前需不需要注入usbinjjectall呢?
@匿名 需要