zbsniff ESP32-C6 firmware v1.0.0
================================

Three builds, one capture core (see docs/architecture.md):

  tethered    USB serial "true sniffer" — WiFi off, radio on. Plug into the
              zbsniff host app. Flash this on an ESP32-C6-DevKitC-1 (or any C6).
  satellite   Capture-and-forward over SPI to a primary. For ESP32-C6 SuperMini.
  standalone  Self-contained WiFi web UI (its own radio stays off — needs >=1
              SPI satellite for capture). ESP32-C6-DevKitC-1 (8 MB).

Files
-----
<env>-firmware.bin       app image only — use for OTA updates (the host web
                         UI's "Update firmware" panel, USB or SPI-relayed to
                         satellites)
<env>-full-flash.bin     complete image (bootloader + partition table + app)
                         for a factory-fresh board, flash at offset 0x0

First flash (factory-fresh board)
---------------------------------
  pip install esptool
  esptool.py --chip esp32c6 -p <PORT> write_flash 0x0 <env>-full-flash.bin

macOS ports look like /dev/cu.usbmodem*, Linux /dev/ttyACM*, Windows COMx.
If the board doesn't enter the bootloader, hold BOOT while tapping RESET.

Updates after that: use the host web UI's OTA panel with <env>-firmware.bin —
no cable juggling, works for satellites over SPI too.
