qcwap2012 发表于 2020-3-16 00:11

[4.20]Intel WIFI驱动开发进展【1.3.0正式版/2.0.0测试版发布,支持11ac/11ax

本帖最后由 qcwap2012 于 2021-4-20 22:45 编辑

不知不觉已经连续更新一年多了,四百多天的努力,目前intel网卡达到了前所未有的高度。目前2.0.0测试版在11ac 160mhz的情况下,实际速率已经达到了1Gbps的下行和600mbps的上行,理论速率是1732mbps,秒杀博通卡。我只有千兆网口,无法再测试更高的速度了。
今年五一本人婚礼,人终归是要慢慢走向成熟的,黑苹果也快没得玩啦,以后慢慢的业余玩这些的时间也会越来越少,不过我目前来说还是会继续更新的,且行且珍惜吧。{:5_262:}

【1.3.0正式版】
1. 实现一代卡和二代卡的上行MPDU聚合,修改下行MPDU聚合并支持MSDU聚合,大幅提升速度
2. 迅驰卡、一代卡、二代卡增加HT40 (40mhz)的支持,速率达到300mbps
3. 修改速率控制算法,速率更加稳定
4. 强行禁用设备ASPM,因为目前并不支持并且会造成很多问题
5. 优化Airport的交互
6. 增加Wi-Fi认证错误重试
7. 修复二代卡组播帧解密错误的问题

【2.0.0测试版】
1. 一代卡、二代卡支持80mhz、160mhz(已完成)
2. 一代卡、二代卡支持11ac(已完成),二代卡部分支持11ax(Wi-Fi 6协议)

下载地址:
https://github.com/OpenIntelWireless/itlwm/releases
喜欢的点个star哈



【itlwm】
1. 合并itlwmx到itlwm,压缩固件,驱动仅剩9.9mb;
2. 修复用迅雷等工具大流量上传下载可能造成电脑无响应的问题;
一个驱动支持所有intel设备,itlwm仍需要搭配heliport使用,支持10.12及以上系统


【AirportItlwm】
1. 支持原生Wi-Fi选择、切换,支持wpa/wpa2/无加密Wi-Fi连接
2. 支持定位
3. 完美支持接力Handoff
注意这里iphone的智能热点可以被识别,但是可能不能连接,如有智能热点连接需求的,请使用itlwm.kext
目前支持10.15、11.0系统,需要搭配最新的oc0.6.1 使用,clover用户及旧版oc用户可以使用套娃IO80211Family方案,这里不做赘述。
驱动已在体验群内测过一周了,反馈都是很稳定,隔空投送也在研究中。



另外说些题外话,本人从去年年底开始开发蓝牙驱动,到现在九月份了Wi-Fi也差不多了,花费了大量的业余时间,也花了些钱买各种设备去做测试做兼容。项目是从今年三月开源的,到今天为止,并没有接受到几个有用的代码贡献,基本都是靠我自己完成的开发,目前开发airport方面的东西,还要纠结去买些苹果设备来研究,有这样的进度真的来之不易,真正的是用爱在发电。所以请大家尊重我们的劳动成果。
这个项目纯粹是爱好和研究,我们不接受也没有接受过任何捐赠,也请不要拿这驱动做任何商业用途,目前有些地方在倒卖驱动的请大家注意不要上当受骗。




目前跟蓝牙驱动一样,支持了所有目前市面上常见的Intel无线网卡,预计近期发布稳定的1.0.0正式版。以下是更新内容:
【itlwm】
1. 9560ac支持从windows热启动
2. 支持连接无加密Wi-Fi,WPA2 Enterprise Wi-Fi.
3. 修正Wi-Fi列表的内存泄漏
4. 支持在已连接的情况下刷新Wi-Fi列表
5. 增加断开连接功能
6. 为支持40mhz和11ac做准备
7. 支持连接隐藏Wi-Fi
支持的设备太多了,这里就不一一列出设备id,详情可以去github仓库查看文档。

【itlwmx】
1. 支持所有二代设备,包括十代cpu搭配的9462/9560/9461/ax200/ax201等等
0x8086:0x2723
0x8086:0x43F0
0x8086:0xA0F0
0x8086:0x34F0
0x8086:0x4DF0
0x8086:0x02F0
0x8086:0x3DF0
0x8086:0x06F0
0x8086:0x2720
2. 修正睡眠唤醒断网的问题
3. 支持后台扫描,在已连接的情况下刷新Wi-Fi列表

【客户端】
巴拉巴拉一大堆,详情可以去仓库看。特别注意,请安装app到Application目录下食用。




1.调整MTU到1482,适配某些奇怪的路由器;
2.增加客户端交互接口,客户端app还在开发中;
3.itlwmx下发速率选择到硬件,速率控制更加稳定;
4.提高稳定性。

3系,7系,8系、9系

ax系列

另外这里解释一下什么叫二代设备,笼统来讲,ax系列的网卡都是二代设备,另外有些9系设备(9461、9462、9560)等,虽然是9系,但是mac层是ax系,所以还是二代设备,这类设备用itlwm是驱动不了的,得用itlwmx,但是现在也还不支持。



1.支持ax200





1.支持wpa1加密Wi-Fi连接;
2.修正不定时掉线;
3.尝试修复win热重启到mac下无法驱动的问题(我的几张网卡都是可以热重启的,没办法测试,请大家测试一下吧);
4.提高稳定性.
欢迎大家提供测试结果.
刚才折腾了一下系统,结果mac跟win全被我搞炸了,都进不去了,ubuntu倒是能进, 叹气.




支持10.12以上的系统
修正细节

无法加载的或者连不上网的可以提供日志我看一下,不过多半是Wi-Fi设置不对.
ax系列还不稳定(openbsd官方也是不稳定的),暂时不提供测试.



进展
目前已经可以稳定上网了,从昨天到现在测试稳定不掉线不重启.现在公开进行测试.
1.支持睡眠唤醒;
2.支持卸载;
3.支持配置多个网络,达到不重启即可切换Wi-Fi的效果.

另外客户端ui已经完毕,跟原生ui一模一样,剩下与驱动交互以及网络连接逻辑控制还在开发.
开发完成以后就可以像白果一样选择Wi-Fi啦.

使用方法:
第一步,找到驱动右键,显示包内容:

第二步,找到info.plist,打开编辑

第三步,我这里是用xcode编辑,方便查看,用plisteditor也是可以的,
将密码跟ssid换成你的Wi-Fi即可.



第四步,用命令加载,或者丢到clover/oc的kext目录下重启即可自动连接上Wi-Fi.

题外话:
如果在使用过程中需要添加Wi-Fi但是又不想重启,可以用以下命令卸载,然后编译好之后再次加载
卸载: sudo kextunload -b com.zxystd.itlwm
加载:
sudo chown -R root:wheel itlwm.kext
sudo kextutil -v 6 itlwm.kext

我现在编译的文件是10.15的,版本低的同学可以自行编译,或者后面我有时间编译好.理论支持10.11~10.15




进展
有段时间没更新了,最近有些忙,另外卡在上传上也有差不多一个多月了,现在已经发现问题,并非是驱动问题,而是网络配置问题,现在打算用其他方法解决,解决的话速度还能提升一截。

更新如下:
1.修复下载问题
2.offload ccmp加解密到网卡,减少cpu计算

使用方法,
将kext放到clover或者oc kext目录下,重启即可
另外Wi-Fi跟密码现在是写死的,
Wi-Fi: ssdt
密码: zxyssdt112233

这个项目会继续更新,感谢大家的关注.附上测速图(本人用的是100m宽带):


上传有的时候是正常的,大部分时候是抽风的,就不上传编译好的附件啦。


4.5进展
修复加载时候的随机崩溃
支持wpa2/ccmp加密Wi-Fi连接,不过还有点很大的问题,请勿尝试,待修复

接下来将会修复Wi-Fi加密问题,有可能的话再下一步将会加入ax网卡的支持. 另外已经有好几个小伙伴在紧锣密鼓地编写Wi-Fi管理客户端了,有懂macos开发或者iokit开发的大佬想贡献自己一份力量的请联系我.工作繁忙,个人力量有限,耐心等候吧.

3.18进展
目前完成了openbsd最新的代码移植,8系无法加载的问题已经修复,并且支持了9000系网卡,另外一个很严肃的问题就是,经过我的反复验证,发现openbsd的代码实现有问题,导致偶尔丢包,丢包率在1%~4%, 这个问题需要花时间去解决.

距离上次发布蓝牙固件上传驱动刚好三月半(https://github.com/zxystd/IntelBluetoothFirmware)驱动,截止到目前已经完成了3、7、8、9、ax系列Intel网卡的固件上传以及基本的RX TX输入输出代码,但是由于本人移植自openbsd的80211实在有太多东西需要去验证,所以就萌生了把整个openbsd的iwm 驱动移植过来的想法。因为重写过linux驱动的代码的关系,移植过程非常顺利,半天即完成代码移植,断断续续花费了差不多一个月进行调试,

现在,终于实现了Intel无线网卡上网





不要看那显示的是个以太网,因为我并没有使用苹果的IO80211Family,而是像usb网卡一样,使用以太网接口上网。

关于源代码,本人决定开源,任何人可以查阅并且修改,但是请务必通知我修改的内容,并且保留本作者信息,非常感谢!

https://github.com/zxystd/itlwm

本人还会继续更新,但是请大家保持积极乐观的态度,要相信这个黑苹果社区的强大,相信咱们国人乃至世界人民的力量,目前我已经算是迈了一大步了,不仅是理论通,实际也已经走通,争取打破“Intel无解”的言论。
注意:现在虽然能够上网,但是还没有到民用的程度,暂时不提供成品kext,想折腾的可以自行用xcode编译


代码信息:
目前支持无加密WiFi连接,Wifi名字已经写死,可以手机分享无加密的Wifi,名字叫Redmi,加载驱动之后会自动连接上。
WPA四次握手已经完成,但是加解密还有一些问题需要修复。
支持的设备:
3165
3160
3168
7260
7265
8260
82659

loveqp 发表于 2020-3-16 08:00


这个消息太好了。

黄增光 发表于 2020-3-16 08:06

支持大佬啊

holylw2010 发表于 2020-3-16 08:08

感谢分享,支持大佬!

holylw2010 发表于 2020-3-16 08:09

感谢分享,支持大佬!

mhb8888 发表于 2020-3-16 08:11

给大佬点赞

maojinbing 发表于 2020-3-16 08:12

感谢给论坛带来精品!

jiayiran8 发表于 2020-3-16 08:15

精品贴赶紧顶一发

小小的爱 发表于 2020-3-16 08:15

强烈支持。点赞!!

zyhw 发表于 2020-3-16 08:17

给大佬点赞!感谢开源!

龙卷风05 发表于 2020-3-16 08:18

强烈支持,顶一下

zhangatinaa 发表于 2020-3-16 08:19

天大的喜讯。老大辛苦了!

allegro 发表于 2020-3-16 08:22

加油!加油!加油!

zgm97 发表于 2020-3-16 08:30

大佬(破音)!期待ing

ljd111 发表于 2020-3-16 08:33

感谢分享,支持大佬

visitingms 发表于 2020-3-16 08:35

大佬加油啊,终于看到希望的一天

SGJ999 发表于 2020-3-16 08:37

感谢分享。收藏啦

三上悠亚 发表于 2020-3-16 08:38

牛逼啊!!!!

lov999 发表于 2020-3-16 08:43

好消息,支持一下,前面就坐

LeeJon 发表于 2020-3-16 08:44

你们俩搞开发的是同个人吗?{:5_264:}
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: [4.20]Intel WIFI驱动开发进展【1.3.0正式版/2.0.0测试版发布,支持11ac/11ax