From e8e4e5cf67f18fcd3c4b7db4409466598eb93371 Mon Sep 17 00:00:00 2001 From: Joe Date: Mon, 7 Sep 2026 12:28:57 -0400 Subject: [PATCH] fix(firmware): define the Kconfig options this gate is guarded by csi_collector.c guards the mesh-aligned gate on CONFIG_CSI_GATE_MESH_ALIGNED, but nothing defined it. Upstream's Kconfig.projbuild has no such symbol and this branch did not add one, so the #ifdef would never be true and the gate would ship dead: present in the diff, absent from the binary, and silent about it. The A/B this PR offers would have compared the old gate with the old gate. Adds CSI_GATE_MESH_ALIGNED (default y, the gate) and CSI_SEQ_DIAG (default n, the probe that measures its effect rather than assuming it). Co-Authored-By: claude-flow Claude-Session: https://claude.ai/code/session_01BHNNWbmKvxXrVaEDwXEBNo --- firmware/esp32-csi-node/main/Kconfig.projbuild | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/firmware/esp32-csi-node/main/Kconfig.projbuild b/firmware/esp32-csi-node/main/Kconfig.projbuild index 6f4f5bfd8..aa3ccaaae 100644 --- a/firmware/esp32-csi-node/main/Kconfig.projbuild +++ b/firmware/esp32-csi-node/main/Kconfig.projbuild @@ -517,3 +517,20 @@ menu "Onboard LED (ADR-183)" colormap, in milli-units (250 = 0.25). Lower = more sensitive (reaches yellow with less motion). endmenu + +config CSI_GATE_MESH_ALIGNED + bool "Align the CSI rate gate to mesh time (enables cross-node pairing)" + default y + help + The per-node elapsed gate ("20 ms since MY last accept") gives every node + an independent phase, so two healthy nodes at 50 Hz accept disjoint + frames and nothing can be paired across them. This aligns the 20 ms + window to mesh time so nodes choose the same windows. + +config CSI_SEQ_DIAG + bool "Log (source MAC, rx_seq) for every CSI callback (ADR-345 phase 2 probe)" + default n + help + Diagnostic. Emits the transmitter address and 802.11 sequence number for + each CSI callback so the effect of the gate above can be measured rather + than assumed. Verbose; leave off in normal operation.