GithubHelp home page GithubHelp logo

IndexError: list index out of range about csikit HOT 8 CLOSED

gi-z avatar gi-z commented on August 21, 2024
IndexError: list index out of range

from csikit.

Comments (8)

Gi-z avatar Gi-z commented on August 21, 2024 2

Apologies for the delay. This'll take a little time to implement elegantly.

In the interest of making sure you have something, I've linked a temporary build you can install which will parse your files correctly. Any other nexmon filetypes will fail, but this will work with the system you're currently running.
https://drive.google.com/file/d/1rjnCiJgeh7CZFN_ZfQEWGfcv1dZBp-Qt/view?usp=sharing

You can install it by navigating to the root folder (containing setup.py) and running:

pip uninstall csikit
python setup.py install

I hope to have a solution for this issue merged into master soon. Best of luck with your work!

from csikit.

Gi-z avatar Gi-z commented on August 21, 2024

Hi, this appears to be a parsing issue. The chipset header in your CSI data appears to be slightly different to those I've previously observed, and while the file does not successfully parse under the bcm43455c0 (Pi 3B+/4) format, it successfully parses with the bcm4366c0 (Asus RT-AC86U) format.

Can you confirm the hardware you used to collect this data? e.g. Raspberry Pi 4, Asus RT-AC86U, or another device. Thanks.

from csikit.

makoc0704 avatar makoc0704 commented on August 21, 2024

Thank you for your prompt reply!
I have set up a Raspberry Pi 4 Model B Rev 1.2 as AD and ping it with my laptop.
With another Raspberry Pi 4 Model B Rev 1.2 - on which the nexmon software is installed - I collect the CSI data as described in the documentation.

Thank you for your help!

from csikit.

Gi-z avatar Gi-z commented on August 21, 2024

Great, I'm looking at this now. Can you also confirm the makecsiparams settings you used when configuring nexmon_csi?
Edit: If possible, the readout from nexutil -k would also be very useful.

from csikit.

makoc0704 avatar makoc0704 commented on August 21, 2024

Sure!
makecsiparams settings:
mcp -c 36/80 -C 1 -N 1 -m <MAC of Pi - Access Point, that receive ping>
KuABEQAAAQDcpjJNqg8AAAAAAAAAAAAAAAAAAAAAAAAAAA==
ifconfig wlan0 up
nexutil -Iwlan0 -s500 -b -l34 -vKuABEQAAAQDcpjJNqg8AAAAAAAAAAAAAAAAAAAAAAAAAAA==
iw dev wlan0 interface add mon0 type monitor
ip link set mon0 up
tcpdump: listening on wlan0, link-type EN10MB (Ethernet), capture size 262144 bytes
Got 31

nexutil:
nexutil -k
chanspec: 0xd022, 34

If I enter nexutil -k 36/80 I get an error:

nexutil -k 36/80
nexutil: Too many arguments

from csikit.

Gi-z avatar Gi-z commented on August 21, 2024

The format for setting a channel with nexutil is nexutil -k36/80. Not sure why spaces aren't allowed 🤷

This is interesting though. I have been able to get your file to parse and this seems to be an exacerbated version of an issue I've encountered before. The pcap frame header appears to be 26 bytes larger than normal. I'm implementing a solution for this and am hoping to have it ready by the end of the day. I've included a visualisation of your data below as proof!

Edit: Just to highlight, thanks for bringing this issue to me. Resolving small issues like this ensures I can keep this library up to date and ready to automatically parse any given CSI file.

image

from csikit.

makoc0704 avatar makoc0704 commented on August 21, 2024

Great, thank you very much for your help!

from csikit.

makoc0704 avatar makoc0704 commented on August 21, 2024

Awesome, it works!
Big thanks for your help :-)

Edit: Great project by the way :-)

from csikit.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.