Great insight. Though I would make the case that the press and release signals are not sent by the button to the Controller until completion of the desired press action.It would be logically possible only if the actions were strictly related to one another. Otherwise the consequences might be undesirable.
E.g. say you have this configuration:
Clearly 2 or 3 would start with 1 and it would still work.
- Single-press: headlight blinders momentarily on (upon release back to normal)
- Long-press: headlight flash burst (i.e. 3x or more automatically sequenced)
- Double-press: headlight blinders toggle on (upon release still on)
But if you had the following:
Clearly you understand why the controller needs to wait to see if the first press followed by another in quick succession or retained until the long-press preset threshold, before triggering 1, 2 or 3.
- Single-press: turn signal left
- Double-press: open glovebox
- Long-press: acceleration toggle chill/standard
As disappointing as it looks, I quickly realized that my plan of having 3 actions on my left steering wheel button failed miserably, as it was only following the lack of correct advertisement on their website, about the necessity of such delay.
Using your example...
- Single-press: turn signal left. The button detects two actions here...a press and a release.....then sends an S signal to Controller
- Double-press: open glovebox The button detects four actions here...a press, release, press release....then sends a DP signal to Controller
- Long-press: acceleration toggle chill/standard The button detects prolonged press (no release signal) ....then sends an LP signal to Controller
The Controller is only listening for a unique S, DP or LP signal to respond to accordingly. This would make the response time equal for all button press types.
To your point..it seems like the Controller is listening and pausing to be sure nothing else follows before issuing the command like a Morse Code telegraph reader....lol
Folks have stated that the response time of lastest SEXY HW is faster but not sure if that's by way of a faster processing hardware or code but it's safe to say they might not have had turn signal response time as a focus.
If my signaling theory is correct the delay can be fixed with code.