Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

搜索
查看: 10895|回复: 112

[分享] 解决10.11 El Capitan USB 摄像头 蓝牙无法使用问题(自制遮盖器法)   [复制链接]

Rank: 5Rank: 5Rank: 5

UID
1332012
帖子
635
PB币
612
贡献
0
技术
304
活跃
1155

7周年庆典勋章 8周年庆典勋章

发表于 2015-10-13 15:43:45 |显示全部楼层
本帖最后由 aricy 于 2015-10-13 16:04 编辑
  1. 参考贴:http://bbs.pcbeta.com/viewthread-1646768-1-1.html
复制代码


最近大家在更新10.11的时候,发现原来的USB驱动无法使用,这就导致很多机油的摄像头、蓝牙等设备无法使用。
在拜读上面的文章后,我们明白了其实这完全是由于苹果完全重写了OSX系统的USB驱动机制。


在这里引用作者的说法:
  1. 10.11 El Capitan开始,苹果完全重写了OSX系统的USB驱动机制。原来的驱动是怎么样的大神没说我也不知道。现在的情况是这样的。

  2. 首先,一般而言,对于ivybridge平台开始的电脑(自2012年的ivybridge开始intel引入原生USB3驱动),一般而言,硬件内总共存在3个USB主控器,两个USB2.0的,一个USB3.0的。两个USB2.0的。在ACPI表(就是我们常说的DSDT)中,两个USB2.0主控器一般被命名为EHC1和EHC2,无论对PC机还是白果机都是如此。但是USB3.0的主控器,PC机的DSDT里一般命名为XHC(或许也有例外),白果机则命名为XHC1。

  3. 或许苹果本来想的是,完全依赖ACPI表(就是DSDT信息)来读取有关USB的数据,但是问题来了,有些机器的ACPI表(DSDT信息)是不准确的,当然,普通PC机不准确不关苹果的事,爱准不准。但是,注意,苹果发现,自家的有些白果机的ACPI表(DSDT信息)也是不准确的,这就不好玩了。

  4. 为了解决这个问题,苹果引入了一个东西,RehabMan大神称之为injector,我想了下,决定这个词还是不能直译,还是意译的好,我决定称其为遮盖器。具体说来,遮盖器机制,就是我们很多教程里提到要修改的
复制代码


通过上面,我们知道遮盖器的大概原理。(如有不懂之处,请参考上面的帖子)

单具体我们应该怎么来做呢?其实大家读了上面的帖子后,应该就知道怎么来制作遮盖器了。

制作适用于自己机器的遮盖器的具体步骤:




1,先看看电脑有几个usb3.0接口,几个usb2.0接口。


比如宏碁Aspire V5-473P-5602 (这是一个网友的机型):


这个机型有只有三个usb接口,一个usb3.0,二个usb2.0。我们都知道usb3.0是向下兼容usb2.0的。于是我们知道如果要让所有端口都可用(这里考虑到所有端口都插上USB设备),我们就要为其预留至少2+1*2个虚拟端口,如果再加上蓝牙,摄像头,触屏等设备,这个机型需要2+1*2+3=7个虚拟端口。根据上面帖子可以知道,每个usb控制器只允许15个虚拟端口。因为只有7个虚拟端口,我们就不必在意虚拟端口数不够用的问题。但是,如果是台式机,usb接口已经远远大于15了,怎么办,那只有通过屏蔽usb3.0接口兼容的usb2.0端口来节省虚拟端口数。



由此,对于宏碁Aspire V5-473P-5602 来说,需要7个虚拟端口。


2,在windows 或者Yosemite下查询真正的虚拟端口号(Port 1、HSP1、SSP1)




注意:事先,请将所有usb端口都插上usb设备,记录下所有的虚拟端口号,然后在usb3.0上插上usb2.0的设备,再记录下此时的端口号,并且记录具体对应的设备是什么。



在windows下查询端口号,我们可以使用aida64这个软件来查看:








从上面的图中,我们可以看出:



在usb3.0控制器上,虚拟端口对应的设备情况:



Port 2:usb2.0U盘


Port 3:webcam 摄像头


Port 4:蓝牙设备


Port 6:usb输入设备,触屏


Port 10:usb3.0U盘



在usb2.0控制器上,虚拟端口对应的设备情况:



Port 5:usb2.0 U盘


Port 7: 无线蓝牙鼠标



由此可以看出我们需要的虚拟端口号:2、3、4、5、6、7、10 一个七个



在Yosemite下,我们可以用ioreg这个软件来查看:












3,进入mac系统,制作遮盖器。





这里分享下载:


宏碁Aspire V5-473P-5602:  


附件: 你需要登录才可以下载或查看附件。没有帐号?注册
1

查看全部评分

Rank: 5Rank: 5Rank: 5

UID
1332012
帖子
635
PB币
612
贡献
0
技术
304
活跃
1155

7周年庆典勋章 8周年庆典勋章

发表于 2015-10-13 15:43:46 |显示全部楼层
切换了下系统。结果无法编辑了

3,进入mac系统,制作遮盖器。
首先下载上贴中驱动,你是哪个系类的就选哪个。这台宏碁笔记本是8系列的。如果不知道的,可以从aida64看出来,8 Series

打开驱动中的info.plist, 如图




我们需要修改成和你smbios相同的机型。根据上贴可知,当DSDT中的设备Device (EHC1)设备名EHC1和遮盖器的中对应的设备名相同时,遮盖器就起作用了,于是我们要保证遮盖器的设备名与dsdt的一样。


所以修改如下图:



端口参数:
  1. 参数解说如下:

  2. port-count:这是一个坑爹的命名,因为很容易根据字面意思理解成,这个hub下面的PRT(端口)总数。实际上不是,这个东西的意思是,下属所有PRT(端口)中的最大port值。也就是说,你下面如果有3个PRT,3个PRT,port值分别是01000000,02000000,06000000,那port-count这里填的不应该是03000000,而应该是06000000。

  3. UsbConnector:代表所属USB接口类型,一般有0,3,255等常见数值。其中0代表usb2.0 typeA型母口,2代表 type miniAB,3代表USB3.0 typeA型母口,255代表特殊接口。

  4. port:该USB接口所在位置的编号。
复制代码



端口修改原理:我们只需要对应上面查询出来的虚拟端口来设置对应的端口信息就行了。
对于UsbConnector  代表的接口类型:0代表usb2.0  3代表usb3.0  255代表特殊端口(这里就看作蓝牙和涉嫌头就行了)
这里的触屏属于usb输入设备,可以看成usb设备。


于是乎,各个虚拟端口设置如图:






4,制作好遮盖器,然后将这个驱动安装,修复权限和缓存,就可以了。我建议直接复制到sle或者le下面,用kext utility修复一下。









附件: 你需要登录才可以下载或查看附件。没有帐号?注册
2

查看全部评分

Rank: 1

UID
4554558
帖子
41
PB币
5
贡献
0
技术
0
活跃
120
发表于 2015-10-13 15:57:01 |显示全部楼层
谢谢楼主了,我就需要这篇教程啊!在搞搞
1

查看全部评分

Rank: 5Rank: 5Rank: 5

UID
373049
帖子
1224
PB币
1368
贡献
0
技术
1
活跃
958
发表于 2015-10-13 17:10:39 |显示全部楼层
不错很详细,学习了

Rank: 2Rank: 2

UID
1511220
帖子
186
PB币
0
贡献
0
技术
0
活跃
353
发表于 2015-10-13 17:58:45 |显示全部楼层
非常好,下载下来研究就下

Rank: 7Rank: 7Rank: 7

UID
750326
帖子
1949
PB币
691
贡献
0
技术
101
活跃
1466
发表于 2015-10-13 19:35:43 来自手机 |显示全部楼层
太好了。感谢楼主

Rank: 1

UID
2674849
帖子
63
PB币
63
贡献
0
技术
3
活跃
45
发表于 2015-10-13 19:37:15 |显示全部楼层
我的也是USB设备没搞定 研究了2天还没有成功,准备安装楼主的方法再试一次。

Rank: 1

UID
4692559
帖子
42
PB币
0
贡献
0
技术
0
活跃
26
发表于 2015-10-13 20:06:27 来自手机 |显示全部楼层
谢谢分享。

苹果种植大户

Rank: 5Rank: 5Rank: 5

UID
2229828
帖子
903
PB币
1512
贡献
0
技术
28
活跃
843
发表于 2015-10-13 20:21:33 |显示全部楼层
我来说几句,,1.先找到使用的端口 2.在dsdt删除无用的端口 3.改名ehc1 xhc1 4.编辑注入kext  haswell 本子平台只要将info 下eh01 下pr01 的借口类型改为0 即可识别所有~~ info 下 xhc 全删除。

Rank: 5Rank: 5Rank: 5

UID
198222
帖子
982
PB币
2342
贡献
0
技术
1
活跃
834
发表于 2015-10-13 20:50:22 |显示全部楼层
我也是正当需要这个指导一下,但是我这里看不到贴图。

Rank: 2Rank: 2

UID
1511220
帖子
186
PB币
0
贡献
0
技术
0
活跃
353
发表于 2015-10-13 21:51:12 |显示全部楼层
aricy 发表于 2015-10-13 15:43
切换了下系统。结果无法编辑了

3,进入mac系统,制作遮盖器。

下载看看看

三风

UID
2513304
帖子
10641
PB币
16259
贡献
0
技术
1637
活跃
1561

十周年

发表于 2015-10-13 21:56:54 |显示全部楼层
图都挂啦?

Rank: 2Rank: 2

UID
210362
帖子
371
PB币
1802
贡献
0
技术
21
活跃
901
发表于 2015-10-14 09:00:28 |显示全部楼层
一目了然茅塞顿开啊

Rank: 2Rank: 2

UID
3819270
帖子
199
PB币
95
贡献
0
技术
26
活跃
340
发表于 2015-10-14 09:11:53 |显示全部楼层
有意思,好像绝大多数台式机USB口都在XHC下
原来笔记本还有在EHC的

这种情况不做遮盖器直接改名EH01可以么?

Rank: 2Rank: 2

UID
1879687
帖子
256
PB币
0
贡献
0
技术
0
活跃
139
发表于 2015-10-14 09:51:56 |显示全部楼层
太好了。感谢楼主

Rank: 5Rank: 5Rank: 5

UID
3593444
帖子
1208
PB币
240
贡献
0
技术
1
活跃
1142
发表于 2015-10-14 20:34:57 |显示全部楼层
真心感谢   回去再试一试

Rank: 1

UID
775787
帖子
94
PB币
136
贡献
0
技术
2
活跃
111
发表于 2015-10-14 20:53:42 |显示全部楼层
是要把每个USB口都插上设备?八个口没那么USB设备怎么办。

Rank: 2Rank: 2

UID
4688318
帖子
396
PB币
40
贡献
0
技术
0
活跃
496
发表于 2015-10-14 21:29:34 |显示全部楼层
doolaee 发表于 2015-10-13 15:57
谢谢楼主了,我就需要这篇教程啊!在搞搞

我真的要看一看了

菜鸟潜伏者

Rank: 7Rank: 7Rank: 7

UID
2443636
帖子
1507
PB币
439
贡献
0
技术
0
活跃
554
发表于 2015-10-15 01:06:15 |显示全部楼层
谢谢分享。原理说的很好

Rank: 2Rank: 2

UID
4749246
帖子
361
PB币
49
贡献
0
技术
1
活跃
180
发表于 2015-10-15 22:51:20 |显示全部楼层
非常感谢。。。。
关闭

站长推荐

已经开启实名认证了哟
这里可以进行实名操作:点我点我点我
回顶部
Copyright (C) 2005-2018 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件