Open kushwavez opened 3 years ago
Try brcmfx-country=#a
If it does not work, well, it is likely a limitation of the driver we cannot lift at the moment. Sorry. CC @lvs1974
Yep, tried that too but did not help. Well, this is unfortunate then, thanks anyway.
it is likely a limitation of the driver
But then I still do not understand why it is working perfectly fine after restarting from Windows directly to macOS and why not from coldboot/off state. Do not get me wrong, it is not AirportBrcmFixup's or your fault at all, just trying to understand what is going on here.
I had to send BCM94360NG back to the seller since I got only 434 Mbit/sec in Windows and macOS. I have tried everything. I think this card is a crap.
I think this card is a crap.
Well, you're right. I'm really upset about this... Looks like the only REALLY OOB solution is to use original Apple cards with an NGFF adapter. I'm gonna do that.
Thanks for confirming.
I also have an BCM94360NG installed in a Dell Inspiron 5370 and get only 434 Mbit/sec with macOS but 866 Mbit/sec with Windows. I don't think that there is something wrong with the card because the BCM94352Z and the Dell DW1820A I also tried in this machine exhibit the same behavior. All of them are limited to one stream with macOS but work fine using two with Windows.
As the Dell Inspiron 5370 came with an Intel 3165 which is also a 1x1 module and the spatial placement of both antennas isn't optimal for multi-stream support (both antennas are parallel, with only a few centimeters of distance between them), the limitation to one stream with macOS is more likely a result of the combination of two factors: the antenna placement and the macOS driver's firmware.
I have tried BCM94360NG with Dell Inspiron 7590 (original card is Intel Wireless-AC 9560). In Windows I had the same speed as in macOS. When I replaced BCM94360NG with DW1820A I got stable 867 Mbit/sec in Windows and in macOS. When I said "it is a crap" I meant so many different user experiences with this card, and very rarely I saw somebody with 867 Mbit/sec.
When I replaced BCM94360NG with DW1820A I got stable 867 Mbit/sec in Windows and in macOS.
Me too, the speed is also good with that card (~60 MB/s)
@lvs1974 As your machine came with a 2x2 module, the antenna placement is most likely designed to support two stream modules. That would explain the difference.
I want ask everybody something related to Bluetooth in all these modules. The issue with all these combo modules: 8Khz audio when I use bluetooth headset. I does not depend on headset (it works brilliantly with iMac 27" 2017). But the same issue happens with MacBookAir 2015, and in Dell 7590 with BCM94360NG, DW1820A and Intel Wireless-AC 9560) - in both OS (win & mac). Is there any card with 2 antennas which works in hackintosh and does not have this limitation in bluetooth module?
@lvs1974 Sorry, I don't use bluetooth audio devices.
Have the same BCM94360NG in my Hasee KingBook X57S1 (default card is Intel AX201). WIthout that AirportBrcmFixup.kext i have lower speed than on Windows. With kext - speeds result are the same as in Windows/Linux (comparing speedtests results). I have no issues with speed after sleep or hot/cold boot-reboots at all.
Without kext I have 50/90 mbps, with kext I have 200/300 mbps.
(Have the same speeds on desktop with ASUS PCE-AC68 which is working without any kext)
For bluetooth issues - i haven't seen any of them, but i am just using mouse/AirPods.
Without kext I have 50/90 mbps, with kext I have 200/300 mbps.
Without kext for me sometimes it's connecting 40 MHz mode instead of 80 MHz, that time I have the same slow speed. (~90 Mbps) With kext me too, have ~200 Mbps (download) by default, the problem is that it should be ~480 Mbps as on Windows, and it's only can reach that by restarting from Windows.
@lvs1974 As for Bluetooth I'm using a BT speaker, I have no issues with that. What do you mean by 8KHz issue? Do you mean that there should be lower frequencies, but there isn't?
Without kext for me sometimes it's connecting 40 MHz mode instead of 80 MHz, that time I have the same slow speed. (~90 Mbps) With kext me too, have ~200 Mbps (download) by default, the problem is that it should be ~480 Mbps as on Windows, and it's only can reach that by restarting from Windows.
Same problem, without kext it's only supporting 40Mhz mode. But with kext (without any special boot-args) speeds are equal between different OSes. What's the version of drivers are you using in Windows? Just interesting to test with yours if there will be any difference
It's installed by Windows Update
Driver date: 2015. 07. 20. Version: 7.35.295.2
It's installed by Windows Update
Driver date: 2015. 07. 20. Version: 7.35.295.2
I am using drivers from Fenvi site
Driver date: 03.02.2016 Version: 7.35.317.3
I will try to use your drivers and will check speed/reboot and etc
@kushwavez: the issue can be observed only if headset' microphone is used (in Skype or Microsoft Teams). It looks like the broadband width is not enough to transmit and receive audio data at 16 Khz simultaneously, so bluetooth driver forces both channels to 8 Khz. But it does not happen with iMac 27 2017 or with any modern smartphone.
I see. Unfortunately I can't test that, sorry.
UPDATE: some users reported that with 2016 Windows BCM drivers it's only 400 mbit/s (like on macOS), but with my drivers (2015. 07. 20., 7.35.295.2) it's going up to 866 mbit/s and is working even after sleep, so it is clearly a driver issue.
Seems that BCM94360NG card has the spacial stream (NSS) limited to 1, instead of 2, in macOS. I also have this card and report same problems (in macOS, from cold boot, Tx rate is capped to 434 but in Windows - and rebooting from Win to Mac - is 867) This card works OOB without any kext but its performance is too poorly at this state of art. It's probably related to a driver issue in macOS... @vit9696 could you or your collaborators investigate? Can something be done with your Broadcom kexts?
That's an interesting theory. How did you discover this?
My first guess would be to wrap the relevant functions in the Lilu plugin and see their returned data:
__ZN15AirPort_BrcmNIC9setTX_NSSEP8OSObjectP22apple80211_tx_nss_data
__ZN15AirPort_BrcmNIC9getTX_NSSEP8OSObjectP22apple80211_tx_nss_data
__ZN15AirPort_BrcmNIC6getNSSEP8OSObjectP19apple80211_nss_data
The interfaces are fortunately public as of OpenIntelWireless.
For some reason getNSS
and getTX_NSS
are implemented very differently in AirPortBrcmNIC.kext.
getNSS
calls _wlc_bsscfg_find_by_wlcif
(can be found here) with wlcif == NULL
. I think what it then checks is whether dtim_programmed
is true, which is at wlc_bsscfg_t + 0xC
, but this structure varies across the public drivers. If this succeeds, then _wlc_get_rspec_history
gets called to get the NSS rate (can be found here).getTX_NSS
calls _wlc_iovar_getint
with "tx_nss"
argument.In my opinion, one should try to wrap all these functions and dump the flow (which are called, and which are not) through the start/end prints. It will also help to print the arguments and some values, e.g. that boolean at wlc_bsscfg_t + 0xC
or returned apple80211_nss_data
/ apple80211_tx_nss_data
contents. If anything hints that something is wrong, I would firstly try to swap one implementation with the other, and then perhaps check the resulting values.
@vit9696 let me know if you need some testers
same card 94360ng, same issue on Big Sur and Monterey , tx speed highest 434, NSS = 1 from cold boot. only reboot from windows to Mac the NSS will be 2 and Tx speed normal to 867
It's installed by Windows Update Driver date: 2015. 07. 20. Version: 7.35.295.2
I am using drivers from Fenvi site
Driver date: 03.02.2016 Version: 7.35.317.3
I will try to use your drivers and will check speed/reboot and etc
Yep, I can report the same result. With that driver installed (7.35.295.2) on Windows > after reboot to macOS I have NSS 2. If I cold boot macOS > i will have NSS 1 only.
Tx Rate is twice lower with NSS 1 (234 vs 527)
Sorry for delay @kushwavez, i totally forgot about that
that card is very bad, as the twin of the fenvi bcm94352z is a fake dw1560, it always has dev id 14e4 43a0 like the bcm94360ng, I have all these wifi cards, I also have the real dw1560 14e4 43b1, the dw1820a 14e4 43a3 and the dw1830 14e4 43ba. drivers showing 867mb in bcm94360ng on Windows are fake. also with 1 notch show 867mb, I have ftth gigabit and I did various speed test its showing 434mb or 867mb always goes to the same download speed. it is a limitation of fenvi cards.
that card is very bad, as the twin of the fenvi bcm94352z is a fake dw1560, it always has dev id 14e4 43a0 like the bcm94360ng, I have all these wifi cards, I also have the real dw1560 14e4 43b1, the dw1820a 14e4 43a3 and the dw1830 14e4 43ba. drivers showing 867mb in bcm94360ng on Windows are fake. also with 1 notch show 867mb, I have ftth gigabit and I did various speed test its showing 434mb or 867mb always goes to the same download speed. it is a limitation of fenvi cards.
However, my bcm94352z (dev id 14e4 43a0) has a speed more than 434mbps(by iperf3) on windows , and reboot from windows will not get a speed 866mbps ,NSS just 1.
I can confirm that with AirportBrcmFixup wifi on BCM94360NG works as fast as in Windows
I can confirm that with AirportBrcmFixup wifi on BCM94360NG works as fast as in Windows
Can you show some screen captures ? Wondering how fast the speed is . And except the AirportBrcmFixup kext, any boot args or extra kext have to apply?
@manhattan98 Please can you share more information on your build and possibly the EFI config that gave you that result?
Hi All,
@lvs1974, @vit9696
Is there any chance to try fix that issue? It's not a big deal because still BCM94360NG is better(works OOB) than DW1560 but maybe there is some solution to speed up that card (tx rate, nss 2 etc)
Thank you
@gulios: it will be much easier to use this: https://www.ebay.com/itm/281701519595?hash=item4196b810eb:g:cSwAAOSwnZJff99l&amdata=enc%3AAQAHAAAA4Mja2neAiulfHRAac9yWMDB56frfztXppyyUWDbqmoi4M1SR9%2FP05Kf%2BP2zEi11P89KEDiwP%2FM7v8NgpEFP9agX8bWnUsk7D326v3M1qOBHJtab1YrshNkrc8WGPPXySsrekikaXsiesCWuivEWrFMj0zXTwzQPhZU8LuEosCA8PVJchqlCOz%2Bv5EW0e8Nmkza6T9b1WIJ9bj7Vn6ZOo2EWvIvPzM7K5W1FIPzHAuE32Mm3QelFnLbKtHUtN9k5%2Bcvm8KxJ9%2BxjNnCijTlBJfGvrWNpBPUC65O72tS31QKAY%7Ctkp%3ABFBM5sLe4_9g https://www.aliexpress.com/item/4000300239745.html?spm=a2g0o.order_list.0.0.68de1802fBgS06
I use this set in my Dell Inspiron 7590, it works perfectly & OOB. This adapter has 3 buses 20 cm/30cm/40cm, so it might be possible to find free place in almost any laptop.
ok, i've ordered BCM943602CS and m.2 adapter.
EDIT: ok, card+adapter arrived and it works OOB. Little problems how to fit in small laptop it but works great.
I'm experiencing the same issue as OP and others in the thread, NSS 1 and TX Rate never going above 434mbps. Download speeds hovering around 200mbps. My card is a Fenvi FV-HB1200 which uses the BCM94360CS2 chipset (according to OpeCore). Wi-Fi works as described above, bluetooth works fine, including airdrop and I haven't tested HandOff.
Like OP, I've tried running with AirportBrcmFixup but it made no difference in speeds. I'm also dual booting Windows 10 via OpenCore, but unlike OP, rebooting from Windows into MacOS does not improve speeds, still showing 434mbps for TX Rate and downloading at max 200mbps.
Running on Monterey 12.6.1.
I'm happy to try any suggestions or config changes, but I'm not sure I have the ability to try out @vit9696's suggestion about wrapping those functions in the Lilu plugin.
I have this problem too. For the first 15second I have 2NSS and then 1nss with half or less performance.
I already tried AirportBrcmfixup kext without injector. I think something in bigsur has changed... anyidea how to resolve this nss problem?
I also had this problem with Fenvi FV-HB1200 on my hackintosh. NSS was alway 1 on 2.4Ghz and 5.0Ghz wifi networks. After upgrading to MacOS Ventura 13.2 and latest OpenCore (0.8.9) NSS shows 2 and network speed improved (tested on speedtest.net). Here are screenshots:
The Tx Rate is low in my case because i've disabled 40Mhz channel for 2.4Ghz networks and 80Mhz for 5.0Ghz networks. Currently with a 100Mb internet plan speedtest shows 93Mb on 5.0Ghz wifi which is great!
I also had this problem with Fenvi FV-HB1200 on my hackintosh. NSS was alway 1 on 2.4Ghz and 5.0Ghz wifi networks. After upgrading to MacOS Ventura 13.2 and latest OpenCore (0.8.9) NSS shows 2 and network speed improved
Hello. Still no issue is appeared? In my case nothing changed at all, i still get NSS 2 if I reboot to macOS from Windows, if I cold boot macOS > NSS 1.
That's an interesting theory. How did you discover this?
My first guess would be to wrap the relevant functions in the Lilu plugin and see their returned data:
__ZN15AirPort_BrcmNIC9setTX_NSSEP8OSObjectP22apple80211_tx_nss_data __ZN15AirPort_BrcmNIC9getTX_NSSEP8OSObjectP22apple80211_tx_nss_data __ZN15AirPort_BrcmNIC6getNSSEP8OSObjectP19apple80211_nss_data
The interfaces are fortunately public as of OpenIntelWireless.
For some reason
getNSS
andgetTX_NSS
are implemented very differently in AirPortBrcmNIC.kext.
getNSS
calls_wlc_bsscfg_find_by_wlcif
(can be found here) withwlcif == NULL
. I think what it then checks is whetherdtim_programmed
is true, which is atwlc_bsscfg_t + 0xC
, but this structure varies across the public drivers. If this succeeds, then_wlc_get_rspec_history
gets called to get the NSS rate (can be found here).getTX_NSS
calls_wlc_iovar_getint
with"tx_nss"
argument.In my opinion, one should try to wrap all these functions and dump the flow (which are called, and which are not) through the start/end prints. It will also help to print the arguments and some values, e.g. that boolean at
wlc_bsscfg_t + 0xC
or returnedapple80211_nss_data
/apple80211_tx_nss_data
contents. If anything hints that something is wrong, I would firstly try to swap one implementation with the other, and then perhaps check the resulting values.
Hello, @vit9696! Sorry for pinging and bother you with that problem. I did grep some logs, it's as good as should be to understand what's happening with those NSS 2 issue, but i did notice some weird issue when it's NSS 2 > wl0: getNss: not associated
Can you look into that? Maybe you have some time to help and understand that? Thanks in advance!
@m0d16l14n1, @vit9696: I overrided those methods in AirportBrcmFixup, now three of them call original method and print debug information into boot log. AirportBrcmFixup-2.1.7-DEBUG.zip
Here is the version overriding nss with value 2: AirportBrcmFixup-2.1.7-DEBUG.zip
Actually, only method AirPort_BrcmNIC::getNSS is called. Please test and deploy your logs.
Here is the version overriding nss with value 2: AirportBrcmFixup-2.1.7-DEBUG.zip
Actually, only method AirPort_BrcmNIC::getNSS is called. Please test and deploy your logs.
In my case that one worked, NSS is finally 2 (after cold boot / sleep / hibernation). I can't test the speeds properly now, I have limits on evenings. I will test and report speed later. I will share bunch of logs (which i did already sent (most of them) you at applelife.ru), so it's just a collection for those, who will test too and want to compare (?).
Guys, (@Vorshim92, @maclinit, @tangdai, @gulios, @z3DD3r, @kushwavez, @dikamsiyoung, @li3p, @alessiomatricardi, @ff19, @Lorys89), first of all - I am really sorry to ping you all, you might not have the card anymore, or not interested in hackintoshing (or you just unsubscribed of that issue), but if somebody still experience that issue with bad rate and speed of NG cards, can you please test the build above and check if it's finally fixing that problem?
Please check not only NSS=2 is displaying in Wi-Fi setting, but the actual speed is better and improved comparing to previous versions of kexts / not using kexts / rebooting from Windows / or cold booting macOS.
Thanks in advance and sorry again!
Here is the version overriding nss with value 2: AirportBrcmFixup-2.1.7-DEBUG.zip Actually, only method AirPort_BrcmNIC::getNSS is called. Please test and deploy your logs.
In my case that one worked, NSS is finally 2 (after cold boot / sleep / hibernation). I can't test the speeds properly now, I have limits on evenings. I will test and report speed later. I will share bunch of logs (which i did already sent (most of them) you at applelife.ru), so it's just a collection for those, who will test too and want to compare (?).
Guys, (@Vorshim92, @maclinit, @gulios, @z3DD3r, @kushwavez, @dikamsiyoung, @li3p, @alessiomatricardi, @ff19, @Lorys89), first of all - I am really sorry to ping you all, you might not have the card anymore, or not interested in hackintoshing (or you just unsubscribed of that issue), but if somebody still experience that issue with bad rate and speed of NG cards, can you please test the build above and check if it's finally fixing that problem?
Please check not only NSS=2 is displaying in Wi-Fi setting, but the actual speed is better and improved comparing to previous versions of kexts / not using kexts / rebooting from Windows / or cold booting macOS.
Thanks in advance and sorry again!
no problem. I will test it as soon as possible :)
I tried in the bcm94360cs2 on my dell and continues to see nss1, I will do other tests as soon as I have more time, I also have a bcm94360z3 3 antennas and sees nss2 with low speeds, and that should be nss3 like the BCM943602cs 🤪
@Lorys89: current implementation only replaces nss=1 with nss=2, it is not ready for cards with 3 antennas. And I think AirPort_BrcmNIC::getNSS can fix only cosmetic NSS displayed in wi-fi submenu (when opened with option). But you can get logs, you should see NSS = 2. You need add boot-arg -brcmfxdbg, add DebugEnhancer.kext and use sudo dmesg | grep BRCMFX after boot
On my dell laptop and BCM943602CS - none of the three methods is called.
should I take the kext here from this thread from you or the latest corrected build from https://github.com/acidanthera/AirportBrcmFixup
I would also like to test and finally have this problem solved. Thanks
@CobanRamo, you can download it here or build from latest commit on GitHub, or download build for the last commit from dortania.
So for me nothing essential changes there, I don't recognize anything particularly in Log. All that has changed is; Locale: ETSI --> With Kext Locale: RoW --> without kext NSS --> is always 1 with and without kext
Tx-Rate: 434 MBit/s --> with and without kext
My Config;
What I have to mention is that I don't notice any difference in the download speed from the Internet is always constant and stable with & without kext.
But my big problem is that I move a large file between the two NG cards via WiFi (LAN is deactivated) (SMB), the speed is always under all sow, kb area, that's really not acceptable.
@CobanRamo: in your case none of those three NSS methods is called. Did you try to start downloading something and take a log again (after 30-50 seconds)? May be then it will be called?
So I went through different things, cold start, warm start, start after windows boot etc. always the same result for me. AirportBrcmFixup_LOG_Desktop.txt
AirportBrcmFixup_LOG_Laptop.txt
I hope I'm not wrong, double checked.
Another question, I have the driver version 7.35.317.3 under Windows. I would like to test the older driver but I can't find it anywhere, can one of you make this old version: 7.35.295.2 package available?
@CobanRamo: in your case none of those three NSS methods is called. Did you try to start downloading something and take a log again (after 30-50 seconds)? May be then it will be called?
That's might be the problem I didn't think about. That's might be the need of "special" Windows Broadcom driver, which will "trigger" method to call after first reboot from Windows to macOS?
For guys who didn't notice overriding in logs > try to install that version of the driver in Windows, hot reboot to macOS > check if you see NSS=2, it's should be even without test version of AirportBrcmFixup.kext. After you can try to hibernate / sleep or just shutdown and cold boot macOS > it usually will get NSS=1 after boot, but you will see NSS=2 and overriding in log.
So you can test the speeds on Windows / hot reboot from Windows to macOS / cold boot to macOS (when you have NSS=2), so you can truly compare speeds and understand is that issue is fixed or not.
P.S. I did upload that driver to my cloud drive, so you can get it here version of zip .cab unpacked and .cab version
That's exactly what it was, with driver version 7.35.295.2 and after a Windows boot, the NSS 2 comes....
The problem:
The interesting thing:
Tried things:
Environment: 1. RT-AC66U - Original Up-to-date FW - 80 MHz/channel 44, notebook is 3 metres away
2. RT-AC66U - FreshTomato custom FW (2020.8) - 80 MHz/channel 151, notebook 3 metres away
3. RT-AC56U - DD-WRT FW v3.0-r44772 std (11/11/20) - 80 MHz/channel 112, notebook 1 metres away
Lastly:
Spec: Lenovo X1 Carbon 6th i5-8250U 8 GB DDR3 OC 0.6.6 macOS Big Sur 11.2.2
Attaching zip with logs/efi airport_logs_restartfromwin.zip airport_logs_cold_boot.zip