DQMH Consortium Toolkits Feature Requests

Showing results for 
Search instead for 
Did you mean: 

Helper Loops - more consistent periode between timeout case executions

Status: New

As shown by Olivier Jourdan at GLA Summit 2024, the current implementation für the Helper Loop timeout case does not "guarantee" a consistent periode between timeout case executions. Since there is already a very sleek solution with the Wovalab Utilities, I would suggest integrating it into the DQMH Helper Loops. Especially now that we have private requests and helper loops in the scripting tools, DQMH users are more encouraged to use them.

Screenshot taken from the Wovalab Utilities example to show the difference bettwen the current implementation and the more consistent one.



Proven Zealot

In my opinion, Olivier's approach should be opt-in when you decide that you need more precise timing. And even then, there are other precision timing approachs besides Olivier's that might be more appropriate... like having a '0' timeout, and using High Resolution Relative Seconds.vi logic within the Timeout frame to control timing.


I don't think the base helper loop template should attempt to implement precise timing when most of the time, it isn't necessary, and even when it is, you may want a different approach.

Active Participant

@Darren, I'm definitely biased on this request 😅

I will certainly not speak for or against @Jens_S idea, but I feel that we, at least, need to give more information about helper loop timing to the DQMH user. It's probably obvious for advanced users that timing can be not precise and steady when using a Helper Loop, but I feel this is not the case for the vast majority of the user.


I would at least see a section of the documentation explaining the pitfalls and the different solutions that can be used (I'm curious about the '0' timeout). I tried to do it in my API documentation (https://wovalab.gitlab.io/open-source/docs/utilities-toolkit/latest/helper-loop-timing.html


For the record, my purpose is to provide a way to guarantee a steady period and keep the phase of each timeout case execution. It also delivers feedback on the execution (late execution, for example). It does not give access to high-resolution timing.

Olivier Jourdan

Wovalab founder | DQMH Consortium board member | LinkedIn |

Stop writing your LabVIEW code documentation, use Antidoc!
Proven Zealot

I agree that the DQMH documentation could provide more useful guidance in regards to helper loop timing.


I like Oliviers approach and agree it should be the default. It helps the vi icons are visually pleasing 😂