v0.8.0-esp32

ruvnet/RuViewv0.8.0-esp32Jun 11, 2026by ruvnet

AI Summary

A major firmware release utilizing ESP-IDF v5.5.2 to deliver true High Efficiency Long Training Field (HE-LTF) CSI, along with updated host-side parsers and a new calibration API.

Key Highlights

  • ESP-IDF v5.5.2 binaries for ESP32-C6 enabling 242-tone HE-LTF CSI.
  • Updated host parsers for 256-bin frames (previously decoded as zero).
  • New `wifi-densepose calibrate-serve` HTTP API for UI-driven calibration.
  • Per-node grid gate to prevent HT minority frames from mixing into HE baselines.

New Features

  • ESP32-C6 firmware with HE-LTF support
  • ESP32-S3 firmware (HT format)
  • HTTP calibration API endpoints
  • HE-aware bandwidth classification

Full Release Notes

## Headline: the C6 becomes the precision instrument of the fleet

All binaries in this release are built with **ESP-IDF v5.5.2** — the first release where the **ESP32-C6 delivers true HE-LTF CSI: 256 bins / 242 active HE20 tones per frame at 78.125 kHz tone spacing** (4× the spectral density of any HT capture). Discovered and first measured by @stuinfla in #1005: the IDF v5.4 driver blob silently downconverted HE links to 64-subcarrier HT; v5.5.2 delivers the real thing. Independently replicated on a second rig before this release (84% of frames at 532 B / PPDU 0x01 HE-SU; WITNESS-LOG-110 §B1 now RESOLVED WITH MEASUREMENT from two rigs).

## What's in the binaries
- **esp32-csi-node-c6.bin** + bootloader-c6 + partition-table-c6 — C6 4MB, HE-LTF capable out of the box on any 11ax 2.4 GHz AP (no toolchain or rebuild needed)
- **esp32-csi-node.bin** (S3 8MB) + bootloader + partition-table + ota_data_initial — hardware-validated on ESP32-S3 (HT format unchanged; S3 silicon is HT-only)
- **esp32-csi-node-4mb.bin** + partition-table-4mb — S3 4MB variant
- `SHA256SUMS.txt` for all artifacts

## Firmware changes
- #1005 fix: `c6_sync_espnow.c` ESP-NOW send-callback guard now `ESP_IDF_VERSION >= VAL(5,5,0)` (Espressif backported the v6 signature to v5.5) — building from source with IDF 5.5.x works again
- ADR-061 fuzz-harness stubs for the #954 self-ping includes (un-breaks the fuzz CI broken since #985)

## Host-side changes (required for HE frames — update your host before flashing C6 nodes!)
- sensing-server + CLI calibrate/room-watch parsers: `n_subcarriers` now read as u16 (256-bin frames previously decoded as **zero** subcarriers), corrected rssi/seq offsets (RSSI was always 0), PPDU type (byte 18) surfaced as a typed field
- Per-node grid gate: interleaved HT minority frames never mix into an HE baseline window
- HE-aware bandwidth classification; verbatim live HE/HT frames embedded as regression fixtures
- ADR-135 calibration: `wifi-densepose calibrate --tier he20` consumes 242-tone baselines today

## Validation
- C6: live bench capture, 84%/1,525 frames at 532 B HE-SU into an ADR-135 He20 baseline (600/600 windows)
- S3: v5.5.2 build flashed and streaming real CSI (148 B HT, correct PPDU)
- 765 host tests green; full CI green including the repaired fuzz layer

Credit: @stuinfla (#1005) for the discovery, measurement, and the build fix.

🤖 Generated with [claude-flow](https://github.com/ruvnet/claude-flow)