Deploy Bot
b74fdcc733
docs: add troubleshooting guide for common ESP32 CSI issues
...
Covers 8 known issues encountered during multi-node ESP32-S3 deployments:
1. Node not appearing (limping state after USB flash)
2. Person count stuck at 1 (ADR-044)
3. Heart rate/breathing rate jitter (last-write-wins from multiple nodes)
4. Signal quality placeholder
5. Dashboard freezing (WS disconnect loop)
6. OTA crash at 59% (BLE vs OTA conflict)
7. SSH LAN hang (Tailscale workaround)
8. USB-C port selection
Helps with #268 (no nodes found), #375 (node_id), #366 (build errors).
2026-04-10 07:04:48 -04:00
rUv
2a05378bd2
Merge pull request #365 from ruvnet/feat/adr-080-qe-remediation
...
Continuous Integration / Code Quality & Security (push) Has been cancelled
Security Scanning / Static Application Security Testing (push) Has been cancelled
Security Scanning / Dependency Vulnerability Scan (push) Has been cancelled
Security Scanning / Container Security Scan (push) Has been cancelled
Security Scanning / Infrastructure Security Scan (push) Has been cancelled
Continuous Deployment / Pre-deployment Checks (push) Has been cancelled
Continuous Integration / Rust Workspace Tests (push) Has been cancelled
Continuous Integration / Tests (push) Has been cancelled
Continuous Integration / Tests-1 (push) Has been cancelled
Continuous Integration / Tests-2 (push) Has been cancelled
Security Scanning / Secret Scanning (push) Has been cancelled
Security Scanning / License Compliance Scan (push) Has been cancelled
Security Scanning / Security Policy Compliance (push) Has been cancelled
Verify Pipeline Determinism / Verify Pipeline Determinism (push) Has been cancelled
Continuous Deployment / Deploy to Staging (push) Has been cancelled
Continuous Deployment / Deploy to Production (push) Has been cancelled
Continuous Deployment / Rollback Deployment (push) Has been cancelled
Continuous Deployment / Post-deployment Monitoring (push) Has been cancelled
Continuous Deployment / Notify Deployment Status (push) Has been cancelled
Continuous Integration / Performance Tests (push) Has been cancelled
Continuous Integration / Docker Build & Test (push) Has been cancelled
Continuous Integration / API Documentation (push) Has been cancelled
Continuous Integration / Notify (push) Has been cancelled
Security Scanning / Security Report (push) Has been cancelled
fix: ADR-080 QE remediation — 13 of 15 issues fixed
2026-04-06 18:40:21 -04:00
ruv
ccb27b280c
merge: bring feat/adr-080-qe-remediation up to date with main
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 18:36:20 -04:00
ruv
55c5ddfc40
docs: collapse all details sections in README for cleaner view
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 18:20:30 -04:00
ruv
c5fef33c6a
docs: reorder README sections — v0.7.0 first, then descending
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 18:18:40 -04:00
ruv
599ea61a17
docs: update README and user guide for v0.7.0 camera-supervised training
...
- Add v0.7.0 section with 92.9% PCK@20 result and new scripts
- Add camera-supervised training section to user guide with step-by-step
- Update release table (v0.7.0 as latest)
- Update ADR count (62 → 79)
- Update beta notice with camera ground-truth link
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 17:52:44 -04:00
rUv
8dddbf941a
Merge pull request #363 from ruvnet/feat/adr-079-camera-ground-truth
...
feat: camera ground-truth training pipeline with ruvector optimizations (ADR-079)
2026-04-06 17:29:13 -04:00
ruv
35903a313d
feat: NaN-safe TCN + CSI UDP recorder for real ESP32 training ( #362 )
...
- Add activation clamping [-10, 10] in TCN forward pass to prevent NaN
from real CSI amplitude ranges after normalization
- Add safe sigmoid with input clamping [-20, 20]
- Add scripts/record-csi-udp.py: lightweight ESP32 CSI UDP recorder
Validated on real paired data (345 samples):
ESP32 CSI: 7,000 frames at 23fps from COM8
Mac camera: 6,470 frames at 22fps via MediaPipe
PCK@20: 92.8% | Eval loss: 0.083 | Bone loss: 0.008
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 17:18:41 -04:00
ruv
4bb0b87465
feat: ADR-080 P1+P2 remediation — refactor, perf, tests, safety
...
P1 fixes (this sprint):
- P1-6: Extract sensing-server modules (cli, types, csi, pose) from main.rs
- P1-7: DDA ray march for tomography — O(max(n)) replaces O(n^3) voxel scan
- P1-8: Batch neural inference — Tensor::stack/split for single GPU call
- P1-10: Eliminate 112KB/frame alloc — islice replaces deque→list copy
P2 fixes (this quarter):
- P2-11: Python unit tests for 8 modules (rate_limit, auth, error_handler,
pose_service, stream_service, hardware_service, health_check, metrics)
- P2-13: MAT simulated data safety guard — blocking overlay + pulsing banner
- P2-14: Wire token blacklist into auth verification + logout endpoint
- P2-15: Frame budget benchmark — confirms pipeline well under 50ms budget
Addresses 8 of 10 remaining issues from QE analysis (ADR-080).
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 17:01:07 -04:00
ruv
5bd0d59aa6
feat: ADR-080 P1+P2 remediation — refactor, perf, tests, safety
...
P1 fixes (this sprint):
- P1-6: Extract sensing-server modules (cli, types, csi, pose) from main.rs
- P1-7: DDA ray march for tomography — O(max(n)) replaces O(n^3) voxel scan
- P1-8: Batch neural inference — Tensor::stack/split for single GPU call
- P1-10: Eliminate 112KB/frame alloc — islice replaces deque→list copy
P2 fixes (this quarter):
- P2-11: Python unit tests for 8 modules (rate_limit, auth, error_handler,
pose_service, stream_service, hardware_service, health_check, metrics)
- P2-13: MAT simulated data safety guard — blocking overlay + pulsing banner
- P2-14: Wire token blacklist into auth verification + logout endpoint
- P2-15: Frame budget benchmark — confirms pipeline well under 50ms budget
Addresses 8 of 10 remaining issues from QE analysis (ADR-080).
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 17:00:27 -04:00
ruv
924c32547e
fix: ADR-080 P0 security + CI remediation from QE analysis
...
Address all 5 P0 issues from QE analysis (55/100 score):
- P0-1: Rate limiter bypass — validate X-Forwarded-For against trusted proxy list
- P0-2: Exception detail leak — generic 500 messages, exception_type gated by dev mode
- P0-3: WebSocket JWT in URL (CWE-598) — first-message auth pattern replaces query param
- P0-4: Rust tests not in CI — add rust-tests job gating docker-build and notify
- P0-5: WebSocket path mismatch — use WS_PATH constant instead of hardcoded /ws/sensing
Includes ADR-080 remediation plan and 9 QE reports (4,914 lines).
Firmware validated on ESP32-S3 (COM8): CSI collecting, calibration OK.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 16:12:13 -04:00
ruv
327d0d13f6
feat: scalable WiFlow model with 4 size presets ( #362 )
...
Add --scale flag with 4 presets for dataset-appropriate sizing:
lite: ~190K params, 2 TCN blocks k=3 (trains in seconds)
small: ~200K params, 4 TCN blocks k=5 (trains in minutes)
medium: ~800K params, 4 TCN blocks k=7 (trains in ~15 min)
full: ~7.7M params, 4 TCN blocks k=7 (trains in hours)
Refactored model to use dynamic TCN block count, kernel size,
channel widths, hidden dim, and SPSA perturbation count — all
driven by the scale preset. Default is 'lite' for fast iteration.
Validated: lite model completes 30 epochs on 265 samples in ~2 min
on Windows CPU (vs stuck at epoch 1 with full model).
Scale up with: --scale small|medium|full as dataset grows.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 14:55:35 -04:00
ruv
d09baa6a09
fix: remove hardcoded Tailscale IPs and usernames from public files
...
- ADR-079: strip SSH user/IP from optimization description
- mac-mini-train.sh: replace hardcoded IP with env var WINDOWS_HOST
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 14:39:21 -04:00
ruv
486392bb68
docs: update ADR-079 with validated hardware, ruvector optimizations, baseline
...
- Status: Proposed → Accepted
- Add O6-O10 optimizations (subcarrier selection, attention, Stoer-Wagner
min-cut, multi-SPSA, Mac M4 Pro training via Tailscale)
- Add validated hardware table (Mac camera, MediaPipe, M4 Pro GPU, Tailscale)
- Add baseline benchmark results (PCK@20: 35.3%)
- Update implementation plan with completion status
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 14:38:40 -04:00
ruv
33f5abd0e0
feat: ruvector + DynamicMinCut optimizations for WiFlow training ( #362 )
...
Add 4 ruvector-inspired optimizations to the training pipeline:
- O6: Subcarrier selection (ruvector-solver) — variance-based top-K
selection reduces 128→56 subcarriers (56% input reduction)
- O7: Attention-weighted subcarriers (ruvector-attention) — motion-
correlated weighting amplifies informative channels
- O8: Stoer-Wagner min-cut person separation (ruvector-mincut) —
identifies person-specific subcarrier clusters via correlation
graph partitioning for multi-person training
- O9: Multi-SPSA gradient estimation — K=3 perturbations per step
reduces gradient variance by sqrt(3) vs single SPSA
Also fixes data loader to accept both `kp`/`keypoints` field names
and flat CSI arrays with `csi_shape`, and scalar `conf` values.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 14:22:08 -04:00
ruv
e3522ddcda
feat: camera ground-truth training pipeline (ADR-079, #362 )
...
Add 4 scripts for camera-supervised WiFlow pose training:
- collect-ground-truth.py: synchronized webcam + CSI capture via
MediaPipe PoseLandmarker (17 COCO keypoints at 30fps)
- align-ground-truth.js: time-align camera keypoints with CSI windows
using binary search, confidence-weighted averaging
- train-wiflow-supervised.js: 3-phase supervised training (contrastive
pretrain → supervised keypoint regression → bone-constrained
refinement) with curriculum learning and CSI augmentation
- eval-wiflow.js: PCK@10/20/50, MPJPE, per-joint breakdown, baseline
proxy mode for benchmarking
Baseline benchmark (proxy poses, no camera supervision):
PCK@10: 11.8% | PCK@20: 35.3% | PCK@50: 94.1% | MPJPE: 0.067
Camera pipeline validated over Tailscale to Mac Mini M4 Pro
(1920x1080, 14/17 keypoints visible, MediaPipe confidence 0.94-1.0).
Target after camera-supervised training: PCK@20 > 50%
Closes #362
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 14:07:25 -04:00
ruv
b5e924cd72
fix: embed firmware version from version.txt, log at boot ( #354 )
...
Continuous Deployment / Post-deployment Monitoring (push) Blocked by required conditions
Continuous Deployment / Notify Deployment Status (push) Blocked by required conditions
Continuous Integration / Code Quality & Security (push) Waiting to run
Continuous Integration / Tests (push) Waiting to run
Continuous Integration / Tests-1 (push) Waiting to run
Continuous Integration / Tests-2 (push) Waiting to run
Continuous Integration / Performance Tests (push) Blocked by required conditions
Continuous Integration / Docker Build & Test (push) Blocked by required conditions
Continuous Integration / API Documentation (push) Blocked by required conditions
Continuous Integration / Notify (push) Blocked by required conditions
Security Scanning / Static Application Security Testing (push) Waiting to run
Security Scanning / Dependency Vulnerability Scan (push) Waiting to run
Security Scanning / Container Security Scan (push) Waiting to run
Security Scanning / Infrastructure Security Scan (push) Waiting to run
Security Scanning / Secret Scanning (push) Waiting to run
Security Scanning / License Compliance Scan (push) Waiting to run
Security Scanning / Security Policy Compliance (push) Waiting to run
Security Scanning / Security Report (push) Blocked by required conditions
Firmware CI / Build ESP32-S3 Firmware (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / Build Espressif QEMU (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / Fuzz Testing (ADR-061 Layer 6) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / NVS Matrix Generation (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (boundary-max) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (boundary-min) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (default) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (edge-tier0) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (edge-tier1) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (full-adr060) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (tdm-3node) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / Swarm Test (ADR-062) (push) Has been cancelled
- Add version.txt (0.6.0) read by CMakeLists.txt so
esp_app_get_description()->version matches the release tag
- Log firmware version on boot: "v0.6.0 — Node ID: X"
- Remove stale Kconfig help text (said default 2.0, actual is 15.0)
Fixes the version mismatch reported in #354 where flashing v0.5.3
binaries showed v0.4.3 because PROJECT_VER was never set.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-06 11:26:58 -04:00
rUv
854342297a
Merge pull request #359 from ruvnet/docs/hf-links-update
...
Continuous Integration / Tests (push) Has been cancelled
Continuous Integration / Tests-1 (push) Has been cancelled
Continuous Integration / Tests-2 (push) Has been cancelled
Continuous Integration / Code Quality & Security (push) Has been cancelled
Security Scanning / Static Application Security Testing (push) Has been cancelled
Security Scanning / Dependency Vulnerability Scan (push) Has been cancelled
Security Scanning / Container Security Scan (push) Has been cancelled
Security Scanning / Infrastructure Security Scan (push) Has been cancelled
Continuous Deployment / Pre-deployment Checks (push) Has been cancelled
Security Scanning / Secret Scanning (push) Has been cancelled
Security Scanning / License Compliance Scan (push) Has been cancelled
Security Scanning / Security Policy Compliance (push) Has been cancelled
Continuous Deployment / Deploy to Staging (push) Has been cancelled
Continuous Deployment / Deploy to Production (push) Has been cancelled
Continuous Deployment / Rollback Deployment (push) Has been cancelled
Continuous Deployment / Post-deployment Monitoring (push) Has been cancelled
Continuous Deployment / Notify Deployment Status (push) Has been cancelled
Continuous Integration / Performance Tests (push) Has been cancelled
Continuous Integration / Docker Build & Test (push) Has been cancelled
Continuous Integration / API Documentation (push) Has been cancelled
Continuous Integration / Notify (push) Has been cancelled
Security Scanning / Security Report (push) Has been cancelled
docs: update HuggingFace links to ruv/ruview
2026-04-03 14:23:17 -04:00
ruv
23b4491e7b
docs: update HuggingFace links to ruv/ruview (primary repo)
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 14:23:07 -04:00
rUv
2b24250a69
Merge pull request #358 from ruvnet/feat/deep-scan
...
Continuous Deployment / Deploy to Production (push) Blocked by required conditions
Continuous Deployment / Notify Deployment Status (push) Blocked by required conditions
Continuous Integration / Tests (push) Waiting to run
Continuous Integration / Tests-1 (push) Waiting to run
Continuous Integration / Tests-2 (push) Waiting to run
Continuous Integration / Code Quality & Security (push) Waiting to run
Continuous Integration / Performance Tests (push) Blocked by required conditions
Continuous Integration / Docker Build & Test (push) Blocked by required conditions
Continuous Integration / API Documentation (push) Blocked by required conditions
Continuous Integration / Notify (push) Blocked by required conditions
Security Scanning / Container Security Scan (push) Waiting to run
Security Scanning / Infrastructure Security Scan (push) Waiting to run
Security Scanning / Static Application Security Testing (push) Waiting to run
Security Scanning / Dependency Vulnerability Scan (push) Waiting to run
Security Scanning / Secret Scanning (push) Waiting to run
Security Scanning / License Compliance Scan (push) Waiting to run
Security Scanning / Security Policy Compliance (push) Waiting to run
Security Scanning / Security Report (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / Fuzz Testing (ADR-061 Layer 6) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / NVS Matrix Generation (push) Has been cancelled
Firmware CI / Build ESP32-S3 Firmware (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / Build Espressif QEMU (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (boundary-max) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (boundary-min) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (default) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (edge-tier0) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (edge-tier1) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (full-adr060) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / QEMU Test (tdm-3node) (push) Has been cancelled
Firmware QEMU Tests (ADR-061) / Swarm Test (ADR-062) (push) Has been cancelled
feat: deep-scan.js — comprehensive RF intelligence report
2026-04-03 13:03:28 -04:00
ruv
6d446e5459
feat: deep-scan.js — comprehensive RF intelligence report
...
Shows: who, what they're doing, vitals, position, objects, electronics,
physics, and RF fingerprint. The 'wow factor' demo script.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 13:03:18 -04:00
rUv
62fd1d96af
Merge pull request #357 from ruvnet/docs/v0.6.0-models-guide
...
docs: HuggingFace models + 17 sensing apps + v0.6.0 guide
2026-04-03 10:28:40 -04:00
ruv
b3fd0e2951
docs: add HuggingFace models, 17 sensing apps, v0.6.0 to README + user guide
...
README:
- New "Pre-Trained Models" section with HuggingFace download link
- Model table (safetensors, q4, q2, presence head, LoRA adapters)
- Updated benchmarks (0.008ms, 164K emb/s, 51.6% contrastive)
- "17 Sensing Applications" section (health, environment, multi-freq)
- v0.6.0 in release table as Latest
User guide:
- "Pre-Trained Models" section with quick start + huggingface-cli
- What the models do (presence, fingerprinting, anomaly, activity)
- Retraining instructions
- "Health & Wellness Applications" section with all 4 health scripts
- Medical disclaimer
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 10:28:29 -04:00
rUv
aae01a2be8
Merge pull request #356 from ruvnet/fix/large-dataset-training
...
fix: skip triplet JSON export for large datasets (>100K)
2026-04-03 09:37:30 -04:00
ruv
828d0599d7
fix: skip triplet JSON export for large datasets (>100K)
...
JSON.stringify fails on 1M+ triplets. Training succeeded (33.3%
improvement) but export crashed. Now skips export when >100K triplets.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 09:37:08 -04:00
rUv
21fd7c84e2
Merge pull request #355 from ruvnet/fix/windows-bind-addr
...
fix: --bind flag for Windows firewall compatibility
2026-04-03 09:11:01 -04:00
ruv
85417b84a6
fix: add --bind flag for Windows firewall compatibility
...
Windows firewall blocks UDP on 0.0.0.0 — must bind to specific WiFi IP.
- seed_csi_bridge.py: --bind-addr auto (auto-detects WiFi IP)
- rf-scan.js: --bind <ip> option (default 0.0.0.0, use 192.168.1.x on Windows)
Confirmed: 195 frames received from both ESP32 nodes with --bind 192.168.1.20
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 09:09:53 -04:00
rUv
430243c32c
Merge pull request #310 from orbisai0security/fix-v002-display-buffer-uaf
...
fix: remove unsafe exec() in display_task.c
2026-04-03 09:01:41 -04:00
ruv
b7650b5243
feat(server): accuracy sprint 001 — Kalman tracker, multi-node fusion, eigenvalue counting
...
Original work by @taylorjdawson (PR #341 ). Merged with v0.5.5 firmware
preserved (ADR-069 feature vectors, ADR-073 channel hopping, batch-limited
watchdog from #266 fix).
New server features:
- Kalman tracker bridge for temporal smoothing
- Multi-node CSI fusion with field model
- Eigenvalue-based person counting
- Calibration endpoints (start/stop/status)
- Node positions parsing
- Adaptive classifier enhancements
Co-Authored-By: taylorjdawson <taylor@users.noreply.github.com>
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:59:17 -04:00
ruv
4fc491dea5
feat: ADR-078 — 5 multi-frequency mesh applications
...
RF tomography (2D backprojection imaging), passive bistatic radar
(neighbor APs as illuminators), frequency-selective material
classification (metal/water/wood/glass), through-wall motion
detection (per-channel penetration weighting), device fingerprinting
(RF emission signatures per SSID)
All impossible with single-channel WiFi — require 6-channel hopping.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:52:50 -04:00
ruv
4f6780f884
feat: ADR-077 — 6 novel RF sensing applications
...
Sleep monitor (hypnogram + efficiency), apnea detector (AHI scoring),
stress monitor (HRV + LF/HF via FFT), gait analyzer (cadence + tremor),
material detector (null pattern classification), room fingerprint
(k-means clustering + anomaly scoring)
All validated on overnight data (113K frames). Pure Node.js, zero deps.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:50:48 -04:00
ruv
085af0c2be
docs: update quick start with 3 deployment options
...
Option 1: Docker (simulated, no hardware)
Option 2: ESP32 live sensing ($9)
Option 3: Full system with Cognitum Seed ($140)
Also shows RF scan, SNN, and MinCut commands for v0.5.5 capabilities.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:47:31 -04:00
ruv
f4e636aaa2
docs: refocus README introduction on WiFi sensing
...
WiFi sensing (presence, vitals, activity, sleep, environment) is now
the primary narrative. Pose estimation repositioned as an advanced
capability. Highlights: multi-frequency mesh, SNN adaptation, witness
chain, Cognitum Seed integration.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:45:30 -04:00
ruv
582d51aed6
docs: fix Cognitum Seed pricing — $131 (not $15)
...
Updated all BOM references: ESP32 $9 + Cognitum Seed $131 = $140 total
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:44:22 -04:00
ruv
b31efe5e92
docs: improve README benchmarks — results-focused with context
...
Replace dry metric table with human-readable results that explain
why each number matters. 14 benchmarks with real-world significance.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:42:52 -04:00
ruv
f03b484dd1
docs: update README limitations — remove 2 resolved items
...
Removed:
- "No pre-trained model weights" — weights now published (v0.5.4+)
- "Multi-person counting overcounts #348 " — fixed by MinCut (ADR-075)
Added:
- Camera-free pose accuracy limitation (2.5% PCK@20, honest about it)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:32:04 -04:00
ruv
7a75277d58
chore: add data/ and models/ to .gitignore
...
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:22:29 -04:00
ruv
73ce72d39c
docs: update README with v0.5.5 capabilities and benchmarks
...
- New "What's New in v0.5.5" section: SNN, MinCut (#348 fix), CNN
spectrogram, WiFlow, multi-frequency mesh, graph transformer
- Before/after comparison table (person counting, channels, model)
- 15 new script commands with usage examples
- Release table updated with v0.5.5 as Latest
- v0.5.4 section collapsed (not open by default)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 08:16:23 -04:00
rUv
4e9e92d713
feat: ADR-074/075/076 — SNN + MinCut + CNN Spectrogram (ruvector advanced sensing)
...
feat: ADR-074/075/076 — SNN + MinCut + CNN Spectrogram (ruvector advanced sensing)
2026-04-03 08:00:07 -04:00
ruv
28368b2c70
feat: ADR-076 CNN spectrogram embeddings + graph transformer fusion
...
CSI-as-image: 64x20 subcarrier×time matrix → 224x224 → CNN → 128-dim
embedding. Same-node similarity 0.95+, cross-node 0.6-0.8.
- csi-spectrogram.js: WASM CNN embedding, ASCII visualization, Seed ingest
- mesh-graph-transformer.js: GATv2 multi-head attention over ESP32 mesh,
fuses multi-node features, generalizes to 3+ nodes
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 00:36:38 -04:00
ruv
4bb8c3303f
feat: ADR-075 min-cut person separation — fixes #348
...
Stoer-Wagner min-cut on subcarrier correlation graph replaces broken
threshold-based person counting (was always 4, now correct).
Validated: 24/24 windows correctly report 1 person on test data
where old firmware reported 4. Pure JS, <5ms per window.
- mincut-person-counter.js: live UDP + JSONL replay, overrides vitals
- csi-graph-visualizer.js: ASCII spectrum + correlation heatmap
- ADR-075: algorithm, comparison, migration path
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 00:34:57 -04:00
ruv
b9778c5ad2
feat: ADR-074 spiking neural network for real-time CSI sensing
...
128→64→8 SNN with STDP online learning — adapts to room in <30s
without labels. Event-driven: 16-160x less compute than FC encoder.
- snn-csi-processor.js: live UDP with ASCII visualization, EWMA
- ADR-073 updated with SNN integration for multi-channel fusion
- Fixed magic number parsing to use ADR-018 format (0xC5110001)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 00:34:31 -04:00
ruv
b6c032d665
docs: add multi-frequency mesh + RF scanner to README
...
Continuous Deployment / Post-deployment Monitoring (push) Blocked by required conditions
Continuous Deployment / Notify Deployment Status (push) Blocked by required conditions
Continuous Integration / Code Quality & Security (push) Waiting to run
Continuous Integration / Tests (push) Waiting to run
Continuous Integration / Tests-1 (push) Waiting to run
Continuous Integration / Tests-2 (push) Waiting to run
Continuous Integration / Performance Tests (push) Blocked by required conditions
Continuous Integration / Docker Build & Test (push) Blocked by required conditions
Continuous Integration / API Documentation (push) Blocked by required conditions
Continuous Integration / Notify (push) Blocked by required conditions
Firmware CI / Build ESP32-S3 Firmware (push) Waiting to run
Firmware QEMU Tests (ADR-061) / QEMU Test (boundary-min) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / QEMU Test (default) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / QEMU Test (edge-tier0) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / QEMU Test (edge-tier1) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / QEMU Test (full-adr060) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / QEMU Test (tdm-3node) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / Fuzz Testing (ADR-061 Layer 6) (push) Waiting to run
Firmware QEMU Tests (ADR-061) / NVS Matrix Generation (push) Waiting to run
Firmware QEMU Tests (ADR-061) / Build Espressif QEMU (push) Waiting to run
Firmware QEMU Tests (ADR-061) / QEMU Test (boundary-max) (push) Blocked by required conditions
Firmware QEMU Tests (ADR-061) / Swarm Test (ADR-062) (push) Blocked by required conditions
Security Scanning / License Compliance Scan (push) Waiting to run
Security Scanning / Security Policy Compliance (push) Waiting to run
Security Scanning / Static Application Security Testing (push) Waiting to run
Security Scanning / Dependency Vulnerability Scan (push) Waiting to run
Security Scanning / Container Security Scan (push) Waiting to run
Security Scanning / Infrastructure Security Scan (push) Waiting to run
Security Scanning / Secret Scanning (push) Waiting to run
Security Scanning / Security Report (push) Blocked by required conditions
New capabilities: 6-channel hopping, neighbor APs as passive radar,
real-time RF spectrum visualization with null/reflector/movement detection
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 00:26:48 -04:00
ruv
9d70d621da
feat: ADR-073 enable multi-frequency channel hopping from NVS
...
- main.c: call csi_collector_set_hop_table() at boot when hop_count > 1
- provision.py: add --hop-channels and --hop-dwell flags, write chan_list
blob and dwell_ms to NVS matching firmware's expected format
- Validated: Node 1 hopping ch 1/6/11, Node 2 hopping ch 3/5/9,
200ms dwell, null subcarriers reduced from 19% to 16%
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 00:26:22 -04:00
ruv
b4c9e7743f
feat: ADR-073 multi-frequency mesh RF scanning
...
Live RF room scanner with ASCII spectrum visualization:
- rf-scan.js: single-channel scanner with null/dynamic/reflector classification,
cross-node correlation, phase coherence, Unicode spectrum display
- rf-scan-multifreq.js: wideband view merging 6 channels, null diversity,
per-channel penetration quality, frequency-dependent scatterer detection
- benchmark-rf-scan.js: null diversity gain, spectrum flatness, resolution estimate
Validated: 228 frames in 5s, 23 fps/node, 19% nulls detected,
0.993 cross-node correlation, line-of-sight confirmed
ADR-073: interleaved channel hopping (Node 1: ch 1/6/11, Node 2: ch 3/5/9)
targets 6x subcarrier diversity, <5% null gap, ~15cm resolution
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-03 00:18:29 -04:00
ruv
8f2de7e9f2
feat: ADR-072 WiFlow SOTA architecture — TCN + axial attention + pose decoder
...
Pure JS implementation of WiFlow (arXiv:2602.08661) adapted for ESP32:
- TCN temporal encoder (dilated causal conv, k=7, dilation 1/2/4/8)
- Asymmetric spatial encoder (1x3 residual blocks, stride-2)
- Axial self-attention (width + height, 8 heads, 256 channels)
- Pose decoder (adaptive pooling → 17x2 COCO keypoints)
- SmoothL1 + bone constraint loss (14 skeleton connections)
- 1.8M params (1.6 MB at INT8), 198M FLOPs
Integrated with camera-free pipeline (pose proxy labels from
RSSI triangulation + subcarrier asymmetry + vibration)
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-02 23:40:23 -04:00
ruv
74c965f7ec
docs: remove HuggingFace publishing section from user guide
...
Contains GCloud project ID and secret names — not appropriate for
a public repo. Publishing instructions kept in scripts/ only.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-02 23:14:20 -04:00
ruv
73d4cb9fc2
docs: update README + user guide with v0.5.4 capabilities
...
README:
- Test badge 1300+ → 1463
- Updated capability table (171K emb/s, 100% presence, 0.012ms)
- Added "What's New in v0.5.4" section with full benchmark table
- Training pipeline quick start commands
User guide:
- Camera-Free Pose Training section (10 sensor signals, 5-phase pipeline)
- ruvllm Training Pipeline section (5 phases, quantization options)
- Publishing to HuggingFace section
- Updated table of contents
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-02 23:11:30 -04:00
ruv
ba82fcfc37
feat: camera-free 17-keypoint pose training (10 sensor signals)
...
Multi-modal pipeline using PIR, BME280, reed switch, vibration,
RSSI triangulation, subcarrier asymmetry — no camera needed.
Phases: multi-modal collection → weak label generation → enhanced
contrastive → 5-keypoint pose proxy → 17-keypoint interpolation
→ self-refinement (3 rounds) → LoRA + TurboQuant + EWC
Validated: 2,360 frames, 100% presence, 0 skeleton violations,
82.8 KB model (8 KB at 4-bit), 114.8s training
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-02 23:05:07 -04:00
ruv
ccc543c0e7
feat: Mac Mini M4 Pro training script (7-step pipeline)
...
Clone, copy data via Tailscale, train, benchmark, sync results,
publish to HuggingFace — all automated for M4 Pro hardware.
Co-Authored-By: claude-flow <ruv@ruv.net>
2026-04-02 22:42:32 -04:00