Comments (15)
Try to capture with tcpdump (use -w capture.dump
) from the both cards and upload it here. Maybe wifi6 card add some header
from wfb-ng.
Try to capture with tcpdump (use
-w capture.dump
) from the both cards and upload it here. Maybe wifi6 card add some header
https://1drv.ms/f/s!AtB5-c6zgutCgY53ifYeQcWX5YASLg?e=DZUdZL
from wfb-ng.
I've found the root of this problem - in case of wifi6 it add 8 bytes (some garbage or additional data ?) to the end of captured packet. If I'll not found a good way to detect what it is then I'll just add command line flag to ignore last 8 bytes of the packet
from wfb-ng.
@zhouruixi Do you have another wifi6 adapter to check is this some wifi6 feature or this card (or driver) has implementation bug?
from wfb-ng.
@zhouruixi Do you have another wifi6 adapter to check is this some wifi6 feature or this card (or driver) has implementation bug?
I use Ubuntu 24.04+Intel Ax211 for testing, and it works fine. I don't have other brands of wifi6 devices for more testing now. I have uploaded the data packets obtained on Ax211 to onedrive. Maybe it's the IPQ8074 driver problem or OpenWrt. I'm not a professional and don't have the ability to conduct in-depth analysis. I really want to use wfb_rx on the wifi6 openwrt router and hope you can give a solution. Thank you.
from wfb-ng.
@zhouruixi Thanks for your dumps. They help me a lot to find root of this bug.
Quick solution for IPQ8074 is patch rx.cpp:
@@ -242,7 +243,8 @@ void Receiver::loop_iter(void)
/* discard the radiotap header part */
pkt += iterator._max_length;
pktlen -= iterator._max_length;
+ pktlen -= 8 ;
//fprintf(stderr, "CAPTURE: mcs: %u, bw: %u\n", mcs_index, bandwidth);
if (pktlen > (int)sizeof(ieee80211_header))
{
but I've not found a good way to distinguish bad and good cards during run time.
So for quick and dirty solution you can add condition into code if interface name equals to "bad card" then do pktlen -= 8 ;
from wfb-ng.
@zhouruixi Thanks for your dumps. They help me a lot to find root of this bug.
Quick solution for IPQ8074 is patch rx.cpp:
@@ -242,7 +243,8 @@ void Receiver::loop_iter(void) /* discard the radiotap header part */ pkt += iterator._max_length; pktlen -= iterator._max_length; + pktlen -= 8 ; //fprintf(stderr, "CAPTURE: mcs: %u, bw: %u\n", mcs_index, bandwidth); if (pktlen > (int)sizeof(ieee80211_header)) {but I've not found a good way to distinguish bad and good cards during run time. So for quick and dirty solution you can add condition into code if interface name equals to "bad card" then do
pktlen -= 8 ;
- It works on IPQ8074, but fails on wifi5. Does pktlen affect wfb aggregator?
- We need more testing (wifi6 devices from other manufacturers, different drivers, and even wifi7 devices), If enough devices have pktlen issues and no effective way to detect and identify, we need an additional command line flag.
from wfb-ng.
- Yes, it will fail on wifi5 because it doesn't feed extra bytes like ath11k on this router does. Yes it affects all wfb_rx modes. To work on wifi5 + wifi6 you need to add some "if" which will do
pktlen -= 8 ;
in case of wifi6 and do nothing in case of wifi5
from wfb-ng.
I have purchased a MediaTek based wifi6 router for testing, we will know the results in a few days.
from wfb-ng.
Working well with MediaTek based(MT7915E) wifi6 router. So this is just a non-universal problem caused by the ath11k driver. I will close this issue. Thanks again @svpcom
from wfb-ng.
@zhouruixi Please open issue on ath11k and/or openwrt about this bug. It is a real bug and it can affect other protocols
from wfb-ng.
Someone has found the same problem here
from wfb-ng.
@zhouruixi Please open issue on ath11k and/or openwrt about this bug. It is a real bug and it can affect other protocols
I've tried to trigger ath11k before with no luck :)
https://lists.infradead.org/pipermail/ath11k/2022-December/003764.html
from wfb-ng.
@legale It seems a bug in ath11k firmware (it is fullmac driver compared to ath9k which is softmac), so only Qualcomm can fix it :-(
from wfb-ng.
Hope a real solution...
from wfb-ng.
Related Issues (20)
- FPV-Camera Service Script fail to start
- Does it support h265? HOT 4
- [BUG] don't compile in arm32v7/ubuntu HOT 4
- Build for nanopi NEO-Core HOT 4
- Требует python3-all-dev HOT 1
- Speed up mavlink? HOT 6
- ssh connection HOT 1
- wfb-cli gs cannot be used HOT 12
- [Jetson Orin] wfb-ng/env/bin/pip: No such file or directory HOT 13
- If RTL88xx support 11ac or only can use 11n to broadcast? HOT 5
- [BUG]wifi driver failed to compile on ubuntu 24.04 LTS HOT 10
- wfbng@gs fails to start as "ip link set" command returns No such device (-19) HOT 1
- Why I use RTL8812AU 2.4g, the signal seems to be poor? HOT 1
- [REQUEST] radxa zero 3w with cam as airunit support HOT 1
- [BUG] Unable to install wfb-ng in fresh ubuntu installation HOT 12
- The fopen function can specify binary read mode, which is more suitable for reading key files. HOT 2
- [REQUEST] Make encryption optional on the GS HOT 2
- ubnutu重启后无法正常工作 HOT 5
- 服务重启后无法正常启动 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wfb-ng.