seemoo-lab / mobisys2018_nexmon_channel_state_information_extractor

Example project for extracting channel state information of up to 80 MHz wide 802.11ac Wi-Fi transmissions using the BCM4339 Wi-Fi chip of Nexus 5 smartphones.
Other
99 stars 39 forks source link

CSI data from Nexus 5 is not consistent #22

Open tuminhhoang opened 5 years ago

tuminhhoang commented 5 years ago

Hi,

I have the trouble with the collected CSI data from Nexus 5 phone. My CSI data is scattering (some subcarriers's signals are on/off suddenly). There are 2 unchanged subcarriers (32 and 61). I compared that result with the provided sample files (experiment2c_outside). The patterns are totally different, the sample files are very stable & consistent.

My router is TPlink AC1750 router (channel 36, 5GHz, 20 MHz). The filter is set for Beacon Frames ( 0x8000).

What is the problem here? Does Nemon work with any type of WiFi router or I have to use 2 Nexus 5 (one as the transmitter, one as the receiver) like the sample files?

Thank you so much for your help.

image

image

bachejames commented 4 years ago

Interestingly I'm getting the same at seemingly the exact same subcarriers. This is whilst using a totally different router albeit with that setup of using a router as the transmitter rather than another Nexus 5. Would love to hear @matthiasseemoo's thoughts on this one.

Screenshot 2019-07-14 at 20 30 46
Jackie666666 commented 4 years ago

I get the same result, use a router to be the Tx end, and a Nexus 5 to be a Rx end, the amplitude of CSI is very unstable. Could this serve any useful purpose?

tuminhhoang commented 4 years ago

Nexmon can not work with AMSDU mode (Aggregate MAC Service Data Unit). Therefore, we need to disable AMSDU in the normal router in order to get CSI from Nexus phone with Nexmon. I got it work using Alpha Ralink Module and install libtins library to disable AMSDU.

Jackie666666 commented 4 years ago

Nexmon can not work with AMSDU mode (Aggregate MAC Service Data Unit). Therefore, we need to disable AMSDU in the normal router in order to get CSI from Nexus phone with Nexmon. I got it work using Alpha Ralink Module and install libtins library to disable AMSDU.

I think it's nothing to do with the AMSDU, because I modify, recompile and configure the router could only send out the beacon frames, there are no data frames sending out. So maybe the reason is that CSI extractor code is imperfect, and could not deal with the change of signal.