The official Python toolbox for parsing .csi files from PicoScenes.
- Supports Linux, macOS, and Windows
- Easy to use
- Faster parsing than the MATLAB implementation
- High scalability
- The official toolbox for parsing .csi files
- Install TDM-GCC-64 (choose the MinGW-w64-based version, version 10.3+).
- Set the compiler to MinGW64 using mingw64ccompiler:
pip install git+https://github.com/imba-tjd/mingw64ccompiler
python -m mingw64ccompiler install_specs # Run once
python -m mingw64ccompiler install # Works with venv- Clone this repository with the
--recursiveoption:
git clone https://github.com/Herrtian/PicoscenesToolbox.git --recursive- Install Python and dependencies:
sudo apt update
sudo apt install python3 python3-pip python3-venv- If you are a Chinese user, you can change the pip source to accelerate the download speed:
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/Preferrably, create a virtual environment
python3 -m venv .venv
source .venv/bin/activate # or run venv\Scripts\activate on Windows- Build the package
pip3 install . # add -e for an editable; so no reinstall is required on changesrx_by_usrpN210.csi is a sample binary csi file created by Picoscenes.
Refer to main.py for an example usage on how to parse and plot the collected CSI.
This example shows the first frame of rx_by_usrpN210.csi and creates a plot
with x-axis representing SubcarrierIndex and y-axis showing Magnitude.
python3 main.pyOn a successful run, you should see an output similar to:
For more details about PicoscenesToolbox, refer to the ./docs folder or visit the wiki.
If you encounter any issues or have questions about PicoscenesToolbox, please submit an issue on GitHub.
Consider giving this project a star or fork if you find it useful!
- PicoScenes: A powerful Wi-Fi sensing platform middleware for a wide range of hardware.
- This project was released by Zhiping Jiang.
- csiread: A fast channel state information parser for Intel, Atheros, Nexmon, and ESP32 in Python.
- This project, developed by citysu, served as inspiration for PicoscenesToolbox.
This project is licensed under the MIT License. If you use this toolbox in your project, citing this repository would be greatly appreciated.
Tian Teng. PicoscenesToolbox: An official tool plugin for parsing **.csi** from PicoScenes in Python. (2021). https://github.com/Herrtian/PicoscenesToolbox.
