Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit a6382fb

Browse files
committed
feat: Add macOS CoreWLAN WiFi sensing adapter and user guide
- Introduced ADR-025 documenting the implementation of a macOS CoreWLAN sensing adapter using a Swift helper binary and Rust integration. - Added a new user guide detailing installation, usage, and hardware setup for WiFi DensePose, including Docker and source build instructions. - Included sections on data sources, REST API reference, WebSocket streaming, and vital sign detection. - Documented hardware requirements and troubleshooting steps for various setups.
1 parent 3b72f35 commit a6382fb

3 files changed

Lines changed: 1000 additions & 4 deletions

File tree

README.md

Lines changed: 53 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,17 @@ docker run -p 3000:3000 ruvnet/wifi-densepose:latest
4141
4242
---
4343

44+
## 📖 Documentation
45+
46+
| Document | Description |
47+
|----------|-------------|
48+
| [User Guide](docs/user-guide.md) | Step-by-step guide: installation, first run, API usage, hardware setup, training |
49+
| [WiFi-Mat User Guide](docs/wifi-mat-user-guide.md) | Disaster response module: search & rescue, START triage |
50+
| [Build Guide](docs/build-guide.md) | Building from source (Rust and Python) |
51+
| [Architecture Decisions](docs/adr/) | 24 ADRs covering signal processing, training, hardware, security |
52+
53+
---
54+
4455
## 🚀 Key Features
4556

4657
| | Feature | What It Means |
@@ -317,6 +328,44 @@ docker run --rm -v $(pwd):/out ruvnet/wifi-densepose:latest --export-rvf /out/mo
317328

318329
</details>
319330

331+
<details>
332+
<summary><strong>Rust Crates</strong> — Individual crates on crates.io</summary>
333+
334+
The Rust workspace consists of 14 crates, all published to [crates.io](https://crates.io/):
335+
336+
```bash
337+
# Add individual crates to your Cargo.toml
338+
cargo add wifi-densepose-core # Types, traits, errors
339+
cargo add wifi-densepose-signal # CSI signal processing (6 SOTA algorithms)
340+
cargo add wifi-densepose-nn # Neural inference (ONNX, PyTorch, Candle)
341+
cargo add wifi-densepose-vitals # Vital sign extraction (breathing + heart rate)
342+
cargo add wifi-densepose-mat # Disaster response (MAT survivor detection)
343+
cargo add wifi-densepose-hardware # ESP32, Intel 5300, Atheros sensors
344+
cargo add wifi-densepose-train # Training pipeline (MM-Fi dataset)
345+
cargo add wifi-densepose-wifiscan # Multi-BSSID WiFi scanning
346+
```
347+
348+
| Crate | Description | RuVector | crates.io |
349+
|-------|-------------|----------|-----------|
350+
| [`wifi-densepose-core`](https://crates.io/crates/wifi-densepose-core) | Foundation types, traits, and utilities | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-core.svg)](https://crates.io/crates/wifi-densepose-core) |
351+
| [`wifi-densepose-signal`](https://crates.io/crates/wifi-densepose-signal) | SOTA CSI signal processing (SpotFi, FarSense, Widar 3.0) | `mincut`, `attn-mincut`, `attention`, `solver` | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-signal.svg)](https://crates.io/crates/wifi-densepose-signal) |
352+
| [`wifi-densepose-nn`](https://crates.io/crates/wifi-densepose-nn) | Multi-backend inference (ONNX, PyTorch, Candle) | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-nn.svg)](https://crates.io/crates/wifi-densepose-nn) |
353+
| [`wifi-densepose-train`](https://crates.io/crates/wifi-densepose-train) | Training pipeline with MM-Fi dataset (NeurIPS 2023) | **All 5** | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-train.svg)](https://crates.io/crates/wifi-densepose-train) |
354+
| [`wifi-densepose-mat`](https://crates.io/crates/wifi-densepose-mat) | Mass Casualty Assessment Tool (disaster survivor detection) | `solver`, `temporal-tensor` | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-mat.svg)](https://crates.io/crates/wifi-densepose-mat) |
355+
| [`wifi-densepose-vitals`](https://crates.io/crates/wifi-densepose-vitals) | Vital signs: breathing (6-30 BPM), heart rate (40-120 BPM) | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-vitals.svg)](https://crates.io/crates/wifi-densepose-vitals) |
356+
| [`wifi-densepose-hardware`](https://crates.io/crates/wifi-densepose-hardware) | ESP32, Intel 5300, Atheros CSI sensor interfaces | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-hardware.svg)](https://crates.io/crates/wifi-densepose-hardware) |
357+
| [`wifi-densepose-wifiscan`](https://crates.io/crates/wifi-densepose-wifiscan) | Multi-BSSID WiFi scanning (Windows-enhanced) | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-wifiscan.svg)](https://crates.io/crates/wifi-densepose-wifiscan) |
358+
| [`wifi-densepose-wasm`](https://crates.io/crates/wifi-densepose-wasm) | WebAssembly bindings for browser deployment | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-wasm.svg)](https://crates.io/crates/wifi-densepose-wasm) |
359+
| [`wifi-densepose-sensing-server`](https://crates.io/crates/wifi-densepose-sensing-server) | Axum server: UDP ingestion, WebSocket broadcast | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-sensing-server.svg)](https://crates.io/crates/wifi-densepose-sensing-server) |
360+
| [`wifi-densepose-cli`](https://crates.io/crates/wifi-densepose-cli) | Command-line tool for MAT disaster scanning | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-cli.svg)](https://crates.io/crates/wifi-densepose-cli) |
361+
| [`wifi-densepose-api`](https://crates.io/crates/wifi-densepose-api) | REST + WebSocket API layer | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-api.svg)](https://crates.io/crates/wifi-densepose-api) |
362+
| [`wifi-densepose-config`](https://crates.io/crates/wifi-densepose-config) | Configuration management | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-config.svg)](https://crates.io/crates/wifi-densepose-config) |
363+
| [`wifi-densepose-db`](https://crates.io/crates/wifi-densepose-db) | Database persistence (PostgreSQL, SQLite, Redis) | -- | [![crates.io](https://img.shields.io/crates/v/wifi-densepose-db.svg)](https://crates.io/crates/wifi-densepose-db) |
364+
365+
All crates integrate with [RuVector v2.0.4](https://github.com/ruvnet/ruvector) for graph algorithms and neural network optimization.
366+
367+
</details>
368+
320369
---
321370

322371
## 🚀 Quick Start
@@ -548,8 +597,8 @@ cargo bench --package wifi-densepose-signal
548597
| **Confidence** | 0.0-1.0 per sign | Spectral coherence + signal quality |
549598

550599
```bash
551-
./target/release/sensing-server --source simulate --ui-path ../../ui
552-
curl http://localhost:8080/api/v1/vital-signs
600+
./target/release/sensing-server --source simulate --http-port 3000 --ws-port 3001 --ui-path ../../ui
601+
curl http://localhost:3000/api/v1/vital-signs
553602
```
554603

555604
See [ADR-021](docs/adr/ADR-021-vital-sign-detection-rvdna-pipeline.md).
@@ -1026,9 +1075,9 @@ GET /api/v1/model/sona/profiles # SONA profiles
10261075
POST /api/v1/model/sona/activate # Activate SONA profile
10271076
```
10281077

1029-
WebSocket: `ws://localhost:8765/ws/sensing` (real-time sensing + vital signs)
1078+
WebSocket: `ws://localhost:3001/ws/sensing` (real-time sensing + vital signs)
10301079

1031-
> Default ports: HTTP 8080, WS 8765. Docker images remap to 3000/3001 via `--http-port` / `--ws-port`.
1080+
> Default ports (Docker): HTTP 3000, WS 3001. Binary defaults: HTTP 8080, WS 8765. Override with `--http-port` / `--ws-port`.
10321081
10331082
</details>
10341083

0 commit comments

Comments
 (0)