Open munir01 opened 4 months ago
NexmonPull46
, if magic number is 0x1111
and rssi (1byte) is not 0x11
and fc (1byte) is not 0x11
, your choice is right. infer_device
function in example/utils.py
can also tell you which one should be used.NexmonPull46
inherits Nexmon
in _csiread.pyx
, NexmonPull46.read()
does exist (but is not wrapped in core.py
, maybe I forgot it ?)._autoscale
in NexmonPull46
is 0 while it is 1 in Nexmon
. This was introduced in nexmon_csi pull 256. You can set csidata._autoscale = 1
before calling csidata.read()
if you don't think the change is right.Thank you for the prompt response. To follow up,
0x1111
), rssi (192, not 0x11
), and fc (148, not 0x11
), I think I should be able to NexmonPull46
core.py
. But I added it manually.csidata = csiread.NexmonPull46(csi_file_path, chip='43455c0', bw=80)
csidata._autoscale = 1
csidata.read()
csidata.display(0)
My concern with RSSI value is that 192 does not seem a reasonable value. But when I used CSIKit library to parse the same file, I get RSSI value -64 for the first packet. I noticed that 192-256=-64. Is there an issue for parsing the RSSI bytes? Thanks again!
-64 is right, I'll fix it. You can also use csidata.rssi.astype(np.int8)
to fix the value by yourself.
csidata.rssi.astype(np.int8)
works like a charm! Will do. Thanks a lot!
Thank you for this amazing work! I have a question about parsing CSI and RSSI data using
csiread
. If I know that the CSI data was collected using RPi 4B using this precompiled binary of Nexmon, is there a way to tell if I should usecsiread.Nexmon
orcsiread.NexmonPull46
? Alternatively, given a .pcap file, how can I decide if we should usecsiread.Nexmon
orcsiread.NexmonPull46
? I would like to get RSSI in addition to CSI and the only way to get it throughcsiread.NexmonPull46
Also, there is no
csiread.NexmonPull46.read()
function. So, I created a similar one likecsiread.Nexmon.read()
, which basically callssuper().read()
.Here is the sample code that I am using:
Here is the output:
Looking at value 192, does it look like it is reading the correct RSSI?
Thank you!