-
Notifications
You must be signed in to change notification settings - Fork 3
Implement polling rate limiting #174
Copy link
Copy link
Open
Labels
enhancementNew feature or requestNew feature or request
Description
Per spec (§8.2.6), polling MUST comply with strict timing requirements to avoid saturating the Z-Wave radio. If polling is used, PollTime MUST NOT be less than 1s + CommandTime (recommended 10s+). After a failed transmission, the controller must wait 10s+ before polling another node.
Scope:
- Add a
PollManageror rate-limiting wrapper in the Driver:- Track last poll time per node
- Enforce minimum PollTime between successive polls to any node (configurable, default 10s)
- After failed transmission: enforce 10s + CommandTime delay before next poll to ANY node
- After missing Report: enforce ReportTime delay (CommandTime + 10s)
- Distinguish polling from user-initiated commands (user actions are exempt from poll limits)
- Optional: add a
PollAsync(byte nodeId, CommandClassId ccId)method to Node that respects these limits - Lower priority than other items - polling is actively discouraged by the spec; most data comes via lifeline reports
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or request