Skip to main content

provision-node

Build, flash, and provision an ESP32-S3/C6 CSI node for RuView — firmware variant choice, cross-platform checksum-verified esptool flashing, NVS/WiFi/channel/MAC-filter overrides, boot-log evidence.

소스 정보

저장소
ruvnet/RuView
최근 소스 활동
2026년 9월 30일 16:47
감지된 SKILL.md 언어
영어
스타
98,230
포크
12,876

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
provision-node
description
Build, flash, and provision an ESP32-S3/C6 CSI node for RuView — firmware variant choice, cross-platform checksum-verified esptool flashing, NVS/WiFi/channel/MAC-filter overrides, boot-log evidence.
# provision-node Bring an ESP32 sensing node online. ## 1. Pick a firmware variant - **s3-8mb** (display build) — ESP32-S3 N16R8 / 16MB; AMOLED optional. The display-detect fix (#1000) means a *bare* board still captures CSI (MGMT+DATA). - **s3-4mb** (no-display) — ESP32-S3 4MB; dual-OTA, display disabled. - **c6** — ESP32-C6 + Seeed MR60BHA2 (60 GHz mmWave + WiFi CSI). The mmwave probe requires a validated MR60 header (#1107) so an empty UART never false-detects. Prebuilt binaries: GitHub release `v0.8.1-esp32` (hardware-validated on S3 QFN56 rev v0.2). ## 2. Flash Use a release flash bundle (or `release_bins/<variant>`, or an ESP-IDF `build/`). The harness flashes on Windows, macOS, and Linux through `python -m esptool`: ``` npx @ruvnet/ruview doctor --group python,serial,firmware # esptool, pyserial, ports, bundle checksums npx @ruvnet/ruview flash-plan --port <PORT> --bundle <dir> --variant s3-8mb npx @ruvnet/ruview flash --port <PORT> --bundle <dir> --variant s3-8mb --confirm ``` `flash` verifies SHA256SUMS, refuses a chip that does not match the variant (`esptool chip_id`), writes 0x0 / 0x8000 / 0xf000 / 0x20000 (NVS preserved), then captures a boot log. `hardwareValidated: true` requires CSI callbacks in that log. Over MCP, `ruview_node_flash` needs the `hardware-write` grant and `confirm: true`. Building from source still uses ESP-IDF v5.4 (Docker or the Windows subprocess flow; Git Bash/MSYS is unsupported, so strip `MSYSTEM*` env vars). ## 3. Provision ``` python firmware/esp32-csi-node/provision.py --port <PORT> \ --ssid "<SSID>" --password "<secret>" --target-ip <server-ip> --target-port 5005 # optional ADR-060 overrides: python firmware/esp32-csi-node/provision.py --port <PORT> --channel 6 --filter-mac AA:BB:CC:DD:EE:FF ``` Never echo or commit the WiFi password. ## 4. Confirm CSI is flowing `ruview_node_monitor {port}` — PASS criteria: serial shows `CSI cb #...` callbacks and (on a bare board) `CSI filter upgraded to MGMT+DATA`. No callbacks → the node isn't capturing; do not proceed to calibration.
GitHub에서 보기