Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Getting Familiar with the Ecosystem

The previous chapter described each crate on its own terms. This one puts them together, in the order you would actually meet them, and ends with CSI on a screen.

The walkthrough is deliberately built around the cheapest possible arrangement and grows from there. You need one ESP32-family board to see anything at all, and two to run the controlled emitter-and-collector pairing that most sensing work is built on. Nothing here requires an oscilloscope, a spectrum analyser, or a lab.

The five sections are meant to be read in order, but each stands alone:

  1. Getting Started — what to buy, what to install, and how to get the first CSI line printing on your terminal. The fastest path, using a prebuilt firmware binary and no Rust code at all.
  2. Your First Collector — the same capture, written yourself against esp-csi-rs. This is the section to read if you intend to build something rather than to operate something.
  3. Driving the CLI — the full configuration surface of esp-csi-cli-rs, including the two-board emitter/collector pairing and how to confirm on hardware that it is working.
  4. Streaming to a Host — putting csi-webserver and csi-webclient in front of the boards, and recording a session to Parquet.
  5. Viewing On-Device — the paths that need no host at all, using esp-csi-litetui-rs and esp-csi-litegui-rs.

Two habits will save you time throughout. First, every node in a capture set must agree on the primary channel — more first-run failures trace to a channel mismatch than to anything else. Second, when something produces no data, reach for the counters before reaching for the configuration: show-stats on the device, and the drop counts it reports, distinguish “the radio captured nothing” from “the console could not carry it” in a few seconds.