yggvault ratatoskr-space connected via regular web
Color theme
also available via yggdrasil mesh http://[203:b338:2a84:a18f:986:47ae:1a4:d8d3]/pkg/ruview/v1339
vault / ruview / v1339

ruview @ v1339

integrity

size
60.0 MiB
downloaded
last checked
source https://github.com/ruvnet/RuView · available · github

release notes

Automated release from CI pipeline

Changes: feat(adr-125 iter 2): real C6 feature_state UDP → HAP characteristic

scripts/c6-presence-watcher.py parses the 60-byte rv_feature_state_t struct (RV_FEATURE_STATE_MAGIC = 0xC5110006) emitted by firmware/esp32-csi-node/main/rv_feature_state.[ch] at 1-10 Hz from the real ESP32-C6 on ruv.net, validates the IEEE CRC32 over bytes [0..end-4], gates on RV_QFLAG_PRESENCE_VALID, applies hysteresis (entry 0.40 / release 0.20) plus a 5 s idle-release fallback, and toggles /tmp/ruview-motion — the same touch-file contract that the already-paired HAP bridge consumes.

E2E validated against real hardware (no mocks, no simulation): C6 (192.168.1.179, ch 5, RSSI -38) └─ UDP/5005 → mac-mini (192.168.1.166) └─ c6-presence-watcher.py (pid 8276) └─ /tmp/ruview-motion └─ hap-test-sensor.py (pid 84602) └─ HAP-1.1 over mDNS └─ iPhone Home app: RuView Test Motion = True

10 s sample: pkts=63 valid=51 crc_bad=0 motion -> True

Iter 3 next: insert wifi-densepose-bfld PrivacyGate between the UDP parse and the threshold so only class-2/3 frames cross the HAP boundary (ADR-118 §2.2 invariant I1 holds at the HomeKit edge — ADR-125 §2.1.d).

Refs ADR-125, ADR-118, ADR-081.

Co-Authored-By: claude-flow ruv@ruv.net

Docker Image: ghcr.io/ruvnet/RuView:1f13aa96c2261308a2f2b7a5ca7d9f3620284e67

download

unix · zip
curl -fL -o v1339.zip https://ratatoskr.space/pkg/ruview/v1339.zip
                    printf '%s  %s\n' 'cf578f304b3d0a5ab05a358d9a977d1517620c3fc4f948313e9efe8a63c96f1b' 'v1339.zip' | sha256sum -c -
windows · zip
$url = "https://ratatoskr.space/pkg/ruview/v1339.zip"
$out = "v1339.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "cf578f304b3d0a5ab05a358d9a977d1517620c3fc4f948313e9efe8a63c96f1b") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1339.tar.gz https://ratatoskr.space/pkg/ruview/v1339.tar.gz
                    printf '%s  %s\n' '0cc6846276e4644a424453dd09431122f930d17d01cbb5792679f89b9e5ef552' 'v1339.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "https://ratatoskr.space/pkg/ruview/v1339.tar.gz"
$out = "v1339.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "0cc6846276e4644a424453dd09431122f930d17d01cbb5792679f89b9e5ef552") { throw "sha256 mismatch" }
download via yggdrasil mesh
unix · zip
curl -fL -o v1339.zip http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1339.zip
                    printf '%s  %s\n' 'cf578f304b3d0a5ab05a358d9a977d1517620c3fc4f948313e9efe8a63c96f1b' 'v1339.zip' | sha256sum -c -
windows · zip
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1339.zip"
$out = "v1339.zip"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "cf578f304b3d0a5ab05a358d9a977d1517620c3fc4f948313e9efe8a63c96f1b") { throw "sha256 mismatch" }
unix · tar.gz
curl -fL -o v1339.tar.gz http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1339.tar.gz
                    printf '%s  %s\n' '0cc6846276e4644a424453dd09431122f930d17d01cbb5792679f89b9e5ef552' 'v1339.tar.gz' | sha256sum -c -
windows · tar.gz
$url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1339.tar.gz"
$out = "v1339.tar.gz"
Invoke-WebRequest -Uri $url -OutFile $out
if ((Get-FileHash $out -Algorithm SHA256).Hash.ToLowerInvariant() -ne "0cc6846276e4644a424453dd09431122f930d17d01cbb5792679f89b9e5ef552") { throw "sha256 mismatch" }
artifact format size hashes
v1339.zip zip 60.0 MiB
blake3-24 4cc7d8993a1c08198a2b7cf38cf0968219b0e7995a6cebbd
sha256 cf578f304b3d0a5ab05a358d9a977d1517620c3fc4f948313e9efe8a63c96f1b
sha1 05f27e32ce62703eb8655ce4927513f101c60769
v1339.tar.gz tar.gz 58.4 MiB
blake3-24 90357bdc3f458fed1c7333b52c5903915094fed59b9d1680
sha256 0cc6846276e4644a424453dd09431122f930d17d01cbb5792679f89b9e5ef552
sha1 e3f918380e2a2a1334cf9f7deafa7f7f09c405ac

install

bazel
http_archive(
    name = "ruview",
    urls = ["https://ratatoskr.space/pkg/ruview/v1339.tar.gz"],
    integrity = "sha256-DMaEYnbkZEpCRFPdCUMRIvkw0X0By7V5Jnn4m55e9VI=",
    strip_prefix = "ruview-v1339",
)
zig
.url = "https://ratatoskr.space/pkg/ruview/v1339.tar.gz",
install via yggdrasil mesh
bazel
http_archive(
    name = "ruview",
    urls = ["http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1339.tar.gz"],
    integrity = "sha256-DMaEYnbkZEpCRFPdCUMRIvkw0X0By7V5Jnn4m55e9VI=",
    strip_prefix = "ruview-v1339",
)
zig
.url = "http://14cc7d57b5e70f679b851fe5b272ce17c70632ff4beb5b35ab64bc706b2485af.pk.ygg/pkg/ruview/v1339.tar.gz",
← v1362v1338 →