Hello!
I've noticed that the default timeout between actions in a macro is 40 milliseconds, and there appears to be 120 ms pause before the macro begins. It's easy enough to go into the xml and change them all to something faster, or.. to remove them perhaps (not tried it yet). I've looked around and can't seem to find where that number comes from. I assumed perhaps Base.xml sitting in Program Files.. alas, I believe, no. I would much rather do it globally and forever, and be able to alter it at will. Where is this number being served from!??!
Thanks
<ActionID Pause="40">
Moderator: Moderators
Re: <ActionID Pause="40">
Hi dumbweighter2,
It's hard-coded. It's basically a parameter defined at compile-time. It is not part of the driver configuration; in other words, it cannot be changed at runtime.
Nuno Gomes
-
dumbweighter2
- Posts: 11
- Joined: Mon Nov 02, 2020 8:59 am
Re: <ActionID Pause="40">
Welp, that's bad news but I guess still workable. Thanks for the info!
Re: <ActionID Pause="40">
You can set the "pauses" all the way down to zero, I believe, but there will be always a small delay due to the internal queueing of events.
The initial 120ms delay probably something else, more likely due to inefficiencies in the early set-up of the macro. I think you will not have much control over that.
The initial 120ms delay probably something else, more likely due to inefficiencies in the early set-up of the macro. I think you will not have much control over that.
-
dumbweighter2
- Posts: 11
- Joined: Mon Nov 02, 2020 8:59 am
Re: <ActionID Pause="40">
<ButtonAction Type="Sequence">
<ID>Macro_*************************</ID>
<Name>leave comment</Name>
<Sequence Pause="120">
<ActionID Pause="1">HIDMouse_Left</ActionID>
<ActionID Pause="1">F</ActionID>
<ActionID Pause="1">Ctrl+Enter</ActionID>
</Sequence>
</ButtonAction>
the bolded pause is what i am referencing. are we not sure what it does? it's new between 10.6.8 and 10.9.#
<ID>Macro_*************************</ID>
<Name>leave comment</Name>
<Sequence Pause="120">
<ActionID Pause="1">HIDMouse_Left</ActionID>
<ActionID Pause="1">F</ActionID>
<ActionID Pause="1">Ctrl+Enter</ActionID>
</Sequence>
</ButtonAction>
the bolded pause is what i am referencing. are we not sure what it does? it's new between 10.6.8 and 10.9.#
Re: <ActionID Pause="40">
My bad. I misunderstood your earlier question.dumbweighter2 wrote: ↑Wed Aug 13, 2025 9:36 am <ButtonAction Type="Sequence">
[...]
<Sequence Pause="120">
[...]
the bolded pause is what i am referencing. are we not sure what it does? it's new between 10.6.8 and 10.9.#
Here's what we have in the (internal) documentation:
The "sequence" button action is composed of "child" actions, which can be other button actions and the "<Pause>" and "<Text>" actions. If you have the <Sequence> element "Pause" attribute set to "120", then the driver will insert a 120ms delay between executions of the child actions.Delay time (in ms) between steps in the sequence. Note this adds an additional delay to the user-defined "Pause" actions.
-
cuckoo.zcrr
- Posts: 1
- Joined: Wed Aug 13, 2025 11:29 pm
- Contact:
Re: <ActionID Pause="40">
I also noticed that the <Sequence Pause="120"> tag started appearing in version 10.9, while it hasn't appeared in version 10.6.8. According to my research, the Pause value at the Sequence level may be the delay before executing the entire macro chain, separate from the Pauses in each ActionID.dumbweighter2 wrote: ↑Wed Aug 13, 2025 9:36 am <ButtonAction Type="Sequence">
<ID>Macro_*************************</ID>
<Name>leave comment</Name>
<Sequence Pause="120">
<ActionID Pause="1">HIDMouse_Left</ActionID>
<ActionID Pause="1">F</ActionID>
<ActionID Pause="1">Ctrl+Enter</ActionID>
</Sequence>
</ButtonAction>
the bolded pause is what i am referencing. are we not sure what it does? it's new between 10.6.8 and 10.9.#
This may be a new feature to ensure that the driver has enough time to "recognize" before sending a series of commands, especially for macros with many consecutive actions. If this number is reduced too low, there is a risk that some of the first actions will be missed on some slow systems.
I tried setting it to 0 and it still works, but sometimes in heavy apps, the first action doesn't work. It's possible that 3Dconnexion hard-codes this default number in the driver, and when you save the macro, it automatically inserts it into the XML.
Have you tried setting both the Pause of Sequence and the Pause of each Action to the minimum for comparison? I think the results will be quite interesting.
