Skills Plugins MCP Prompt Model 博客 我的中心

ruview-hardware-setup

ESP32-S3 / ESP32-C6 firmware build, flash, WiFi provisioning, and serial monitoring for RuView CSI sensing nodes. Use when setting up physical hardware, reflashing a node, or debugging a device that isn't streaming CSI.

DeepseekModel Curated skill Quality Excellent · 90 v1.0.0

Get

https://deepseekmodel.com/api/download.php?id=ruvnet-ruview-plugins-ruview-skills-ruview-hardware-setup-skill-md&format=skill
Download .skill Standard format with system_prompt and model_config, ready for any agent framework
The actual content of the system_prompt field in the .skill file.
name ruview-hardware-setup description ESP32-S3 / ESP32-C6 firmware build, flash, WiFi provisioning, and serial monitoring for RuView CSI sensing nodes. Use when setting up physical hardware, reflashing a node, or debugging a device that isn't streaming CSI. allowed-tools Bash Read Write Edit Glob Grep RuView Hardware Setup Bring a RuView sensing node online: build firmware → flash → provision WiFi → confirm CSI stream. Supported devices Device Flash Chip Role ESP32-S3 (8MB) 8 MB Xtensa dual-core WiFi CSI sensing node (default) ESP32-S3 SuperMini 4 MB Xtensa dual-core Compact CSI node — use sdkconfig.defaults.4mb ESP32-C6 + Seeed MR60BHA2 — RISC-V + 60 GHz FMCW mmWave HR/BR/presence Not supported: original ESP32, ESP32-C3 (single-core). ⚠️ Ask about board form factor before flashing. If the user's board is a coin-sized clone (ESP32-S3-Zero, SuperMini, or similar — not a full DevKitC/XIAO-style board with a real USB connector and visible regulator), warn them before they walk away from it: this firmware runs the WiFi radio continuously ( WIFI_PS_NONE ) plus a full DSP pipeline ( edge_tier=2 ), which is sustained high current draw that full-size dev boards handle fine but tiny clones with minimal copper/budget regulators may not. At least one field report: boards ran hot during a normal session and failed to power on again afterward (regulator damage suspected). Tell them to give the board airflow (don't stack/enclose it) and check it by touch during the first several minutes of any new deployment. 1. Build firmware (Windows — Python subprocess, NOT bash directly) ESP-IDF v5.4 does not support MSYS2/Git Bash. Use the Espressif Python venv as a subprocess with MSYSTEM* env vars stripped. The proven command lives in CLAUDE.local.md — reproduce it: /c/Espressif/tools/python/v5.4/venv/Scripts/python.exe -c " import subprocess, os env = os.environ.copy() for k in ['MSYSTEM','MSYSTEM_CHOST','MSYSTEM_PREFIX','MINGW_PREFIX','CHERE_INVOKING']: env.pop(k, None) env['IDF_PATH'] = r'C:\Users\ruv\esp\v5.4\esp-idf' env['IDF_PYTHON_ENV_PATH'] = r'C:\Espressif\tools\python\v5.4\venv' env['IDF_TOOLS_PATH'] = r'C:\Espressif' env['PATH'] = ( r'C:\Espressif\tools\xtensa-esp-elf\esp-14.2.0_20241119\xtensa-esp-elf\bin;' r'C:\Espressif\tools\cmake\3.30.2\cmake-3.30.2-windows-x86_64\bin;' r'C:\Espressif\tools\ninja\1.12.1;' r'C:\Espressif\tools\idf-exe\1.0.3;' r'C:\Espressif\tools\ccache\4.10.2\ccache-4.10.2-windows-x86_64;' r'C:\Espressif\tools\python\v5.4\venv\Scripts;' + env['PATH'] ) python = r'C:\Espressif\tools\python\v5.4\venv\Scripts\python.exe' idf_py = os.path.join(env['IDF_PATH'], 'tools', 'idf.py') r = subprocess.run([python, idf_py, 'build'], # flash: [python, idf_py, '-p', 'COM8', 'flash'] cwd=r'C:\Users\ruv\Projects\wifi-densepose\firmware\esp32-csi-node', env=env, capture_output=True, text=True, timeout=300) print(r.stdout[-3000:]); print(r.stderr[-2000:]); print('RC:', r.returncode) " 8MB build: uses sdkconfig.defaults.template (no mock — real WiFi CSI). 4MB build: cp firmware/esp32-csi-node/sdkconfig.defaults.4mb firmware/esp32-csi-node/sdkconfig.defaults first, then build. Build outputs: firmware/esp32-csi-node/build/{bootloader/bootloader.bin, partition_table/partition-table.bin, esp32-csi-node.bin, ota_data_initial.bin} . 2. Flash to the device Same subprocess pattern, swap [python, idf_py, 'build'] → [python, idf_py, '-p', 'COM8', 'flash'] . Or with esptool directly: python -m esptool --chip esp32s3 --port COM8 --baud 460800 \ write_flash 0x0 firmware/esp32-csi-node/build/bootloader/bootloader.bin \ 0x8000 firmware/esp32-csi-node/build/partition_table/partition-table.bin \ 0xf000 firmware/esp32-csi-node/build/ota_data_initial.bin \ 0x20000 firmware/esp32-csi-node/build/esp32-csi-node.bin (The default device port in this workspace is COM8 . Some docs reference COM9 — confirm with the user.) 3. Provision WiFi + sink address Runs directly — no ESP-IDF env needed: python firmware/esp32-csi-node/provision.py --port COM8 \ --ssid "YourWiFi" --password "secret" --target-ip 192.168.1.20 --target-port 5005 --node-id 1 # Optional ADR-060 overrides: python firmware/esp32-csi-node/provision.py --port COM8 --channel 6 --filter-mac AA:BB:CC:DD:EE:FF --help lists the full flag set (TDM mesh slotting, edge tier, detection thresholds, vitals window, hop channels, Cognitum Seed, swarm intervals) — see the ruview-configure skill for the table. Gotcha (issue #391): flashing replaces the entire csi_cfg NVS namespace — any key not on the CLI is erased; pass the full set you want. On Windows, provision.py --help needs PYTHONUTF8=1 to print (non-ASCII in the help text). 4. Confirm CSI stream # Serial monitor (use pyserial — idf.py monitor hangs in a subprocess) /c/Espressif/tools/python/v5.4/venv/Scripts/python.exe -c " import serial, time ser = serial.Serial('COM8', 115200, timeout=1); start = time.time() while time.time() - start < 15: line = ser.readline() if line: print(line.decode('utf-8', errors='replace').strip()) ser.close() " Then start the sink and watch frames arrive: cd v2 && cargo run -p wifi-densepose-sensing-server # listens for ESP32 UDP CSI Common issues Symptom Cause Fix MSys/Mingw is no longer supported ESP-IDF detected Git Bash Use the Python-subprocess command above with MSYSTEM* stripped cmd.exe /C hangs Interactive prompt from Git Bash Don't use cmd.exe /C — use the Python subprocess cmake not found Wrong path It's cmake\3.30.2\cmake-3.30.2-windows-x86_64\bin , not cmake\3.30.2\bin python_env not found Missing env var Set IDF_PYTHON_ENV_PATH=C:\Espressif\tools\python\v5.4\venv No CSI frames at the sink WiFi not provisioned, wrong channel, or MAC filter too tight Re-run provision.py ; try --channel matching your AP; drop --filter-mac False fall alerts Old fall_thresh default Issue #263 raised it to 15.0 rad/s² + debounce — reflash latest firmware Firmware release process (for maintainers) Build 8MB from sdkconfig.defaults.template (no mock) Build 4MB from sdkconfig.defaults.4mb (no mock) Save 6 binaries: esp32-csi-node.bin , bootloader.bin , partition-table.bin , ota_data_initial.bin , esp32-csi-node-4mb.bin , partition-table-4mb.bin git tag v0.X.Y-esp32 && git push origin v0.X.Y-esp32 gh release create v0.X.Y-esp32 <binaries> --title "..." --notes-file ... Verify on real hardware (COM8) before publishing — always test with real WiFi CSI, not mock mode (mock missed the Kconfig threshold bug) Reference CLAUDE.local.md — exact ESP-IDF build env, paths, QEMU CI notes firmware/esp32-csi-node/ — C firmware (channel hopping, NVS config, TDM protocol) docs/adr/ADR-028-esp32-capability-audit.md , docs/build-guide.md , docs/TROUBLESHOOTING.md
Keywords that activate this skill. Click one to copy it.

This skill does not provide trigger words.

The downloaded .skill package contains the following fields.
Field Description
formatFormat tag (skill/v1)
skill_idUnique skill ID
nameSkill name
versionVersion
descriptionDescription
categoryCategories (array)
trigger_wordsTrigger words
tagsTags
sourceSource
source_urlSource URL (this page)
exported_atExported at (set per download)
system_promptSystem prompt body
model_configModel config: provider / model / temperature / max_tokens / top_p
examplesExamples
install_guideImport guide for Coze / Dify / Claude / custom frameworks
The same skill can be exported in different platform formats.
.skill Standard format with system_prompt and model_config, ready for any agent framework Download
.skillpro Enhanced format with scripts, tools, dependencies and hooks Download
.json Plain JSON export with system_prompt and model parameters only Download
Coze Markdown with frontmatter, for Coze platform import Download
Dify Dify DSL, import directly after creating an app Download

每日精选 Skill 推荐,免费送到你邮箱

输入邮箱,每天接收一个精选 AI Agent 技能推荐。完全免费,持续更新。

验证码 --

提交后我们会发送一封确认邮件,点击邮件里的链接才会开始收信。

完全免费,取消任意时间。我们不会发送垃圾邮件。