mirror of
https://github.com/rstrouse/ESPSomfy-RTS.git
synced 2026-10-31 13:52:15 +01:00
fix: count the set-My settle delay from the end of the job ahead
The delay was counted from when the job was queued. The stop at the target is queued just before the favorite and is on air for about 245ms, so the 200ms settle delay had run out before the favorite's turn and only the 100ms beat between jobs was left. A delayed job now waits its delay after whichever came later: being queued, or the job ahead of it going off air. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
parent
4dd4a9872e
commit
b768c5f987
5 changed files with 69 additions and 16 deletions
|
|
@ -17,7 +17,7 @@ What submitting a radio job returns: the job's sequence number, 0 when the radio
|
|||
A job normally joins the back of the queue. A *priority* job (a stop) goes to the front, unless an earlier job from the same remote is still waiting. Overtaking that job would put the remote's rolling codes out of order, and the motor would reject the older frame.
|
||||
|
||||
**Delayed job**
|
||||
A job that must not go on air before a given time (for example the long press that stores a favorite). It holds up the jobs behind it, but front jobs may overtake it while it waits.
|
||||
A job that must wait a given time after it was queued and after the transmission ahead of it ended, so the motor has settled (for example the long press that stores a favorite). It holds up the jobs behind it, but front jobs may overtake it while it waits.
|
||||
|
||||
**Flush**
|
||||
Drops every waiting job (each gets a *dropped* event) and stops the job on air after its current frame (it gets *aborted*).
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue