发布

  • fix(firmware,server): watchdog crash + no detection from edge vitals (#321, #323)

    frostbyte_neo 发布于 2026-03-27 21:31:06 +00:00

    • fix(firmware,server): watchdog crash on busy LANs + no detection from edge vitals (#321, #323)

    Firmware (#321): edge_dsp task now batch-limits frame processing to 4
    frames before a 10ms yield. On corporate LANs with high CSI frame rates,
    the previous 1-tick-per-frame yield wasn't enough to prevent IDLE1
    starvation and task watchdog triggers.

    Sensing server (#323): When ESP32 runs the edge DSP pipeline (Tier 2+),
    it sends vitals packets (magic 0xC5110002) instead of raw CSI frames.
    Previously, the server broadcast these as raw edge_vitals but never
    generated a sensing_update, so the UI showed "connected" but "0 persons".
    Now synthesizes a full sensing_update from vitals data including
    classification, person count, and pose generation.

    Closes #321
    Closes #323

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

    • fix(firmware): address review findings — idle busy-spin and observability
    • Fix pdMS_TO_TICKS(5)==0 at 100Hz causing busy-spin in idle path (use
      vTaskDelay(1) instead)
    • Post-batch yield now 2 ticks (20ms) for genuinely longer pause
    • Add s_ring_drops counter to ring_push for diagnosing frame drops
    • Expose drop count in periodic vitals log line

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

    • fix(server): set breathing_band_power for skeleton animation from vitals

    When presence is detected via edge vitals, set breathing_band_power to
    0.5 so the UI's torso breathing animation works. Previously hardcoded
    to 0.0 which made the skeleton appear static even when breathing rate
    was being reported.

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

    下载附件