Skip to main content

A Python Package to Parse ESP32 Wi-Fi CSI Data

Project description

ESP32 Wi-Fi CSI Python Parser

This is a Python parser for ESP32 Wi-Fi Channel State Information (CSI) based on the ESP32 CSI specification.

This project uses ESP CSI Toolkit created by Hernandez and Bulut.

Installation

Run the following to install:

pip install csiparser

Usage

# Import ESP32 CSI parser
import csiparser

# Parse and filter CSI data
example_csi = (
    csiparser.ESP32("./esp32_dataset/example_csi.csv")
             .filter_by_sig_mode(1)
             .get_csi()
             .remove_null_subcarriers()
             .get_amplitude_from_csi()
             .get_phase_from_csi()
)

# Retrieve example amplitude
example_amplitude = example_csi.amplitude

# Retrieve example phase 
example_phase = example_csi.phase

Further the amplitude and phase information can be plotted to visualize the distortion in amplitude and phase shift as follows:

Example Amplitude and Phase Graph

See Examples directory for full example.

License

Distributed under the MIT License. See LICENSE for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

csiparser-0.1.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

csiparser-0.1.0-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file csiparser-0.1.0.tar.gz.

File metadata

  • Download URL: csiparser-0.1.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.8

File hashes

Hashes for csiparser-0.1.0.tar.gz
Algorithm Hash digest
SHA256 4b7c4bb36de5bb16c76e361a3916158f48f5655f5d8aada3a46127c65c4862e0
MD5 e260ed9352d47e3f43b0f05d29240553
BLAKE2b-256 57d6740a79ba1e031f34f3afa35cbf6e80de45cc974e7fbad8967ca2ecc92422

See more details on using hashes here.

File details

Details for the file csiparser-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: csiparser-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.24.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.8.8

File hashes

Hashes for csiparser-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1f7dc1a890508529f80bf2f9d075c2b7e2cd1b6d31e6dea505ffcfb9f15e59b1
MD5 16b64594d3d8d0a54158d76adc5bce67
BLAKE2b-256 49dd378046db206a0cf412de77e6d7652b4c2f8f8c95caa2964bbd00c46fb669

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page