fix(zap): raise repeat_count 6→15 for reliable chairs ON latch - #14
Merged
Conversation
Chairs (pos5) outlet latched ON only intermittently off 6 repeats, distance-independent; OFF and the other three lamps were reliable. Pulse train is byte-correct and structurally identical to working lamps, so the differentiator is frame count: the factory remote sends ~47 frames/press vs our 6. 15 frames (352ms, well under the 5s budget) gives a marginal receiver enough clean frames to latch. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Symptom
The chairs (pos 5) outlet latched ON only intermittently, independent of transmitter distance. OFF worked reliably, and the other three lamps' ON worked reliably.
Diagnosis (systematic-debugging, no guessing)
Ruled out a code bug by evidence before touching anything:
ea8afc8(our stored code) across ~47 frames; OFF toea8af38. Our stored code is correct.Root cause: frame count. The factory remote sends ~47 frames/press; we sent 6. That outlet's receiver is marginally less sensitive on the ON latch and needs more consecutive clean frames than 6 provides — which is exactly why it's distance-independent and unit-specific.
Fix
repeat_count6 → 15 (YAML-only; timings are read from the profile at send time, no reflash). Chairs ON = 352 ms/transmit, well under the 5 s firmware budget. Bench-confirmed: chairs ON switched reliably across repeated trials at 15 where it was intermittent at 6.All 65 tests pass. PROTOCOL.md documents the diagnosis. Companion PWA regen: homelab#259.
🤖 Generated with Claude Code