Excellent video Tom! Thanks for spreading the news. One comment: We recommend that you replace the contents of Start Module.vi with Start Module2.vi, the DQMH Validator gives you some tips on how to go about that and remove Start Module2.vi to avoid confusion and benefit from any future validation tools that will look for Start Module.vi. This also means you don't have to go changing your calling code and replacing Start Module.vi itself. Thanks again! Fab
For the MGI Panel Manager, one thing I didn't show in the video, is that you have to update the inputs (inside the Start Module VI) - There are tips on how to do this inside the StartModule2 VI - Also, see the comment by Fab that I've pinned.
Hello Tom, Thank you for your tutorial on DQMH. It helped me a lot to understand the basic principles quickly and easily. There is certainly a lot of work behind all your videos and providing the LabVIEW files. Even if you don't have as many views and likes compared to other TH-cam videos, please keep going! We programmers appreciate your work very much! You are also no stranger to LabVIEW coders in our company, which operates worldwide.
Great video again Tom! Would love to see more in-depth how you created this 'Wizard' custom module type. Is the example code of that one also available somewhere? I simply love these videos. You explain everything so clearly and understandable. Thanks again for everything!
Thank you very much for your update,Tom.I just see "helper loops" in acquisition.lvlib of "CML DQMH" template.Why don't use queue? If the data acquisition is very fast, will it cause data loss when the real data processing is too slow?
User Events are 'Queued' in the background, so if you send 100 user events, the event structure will execute them 1 at a time, but all 100 will be actioned. One thing I typically do is create a little buffer of x-elements (let's say 1000 elements) in my DAQ loop, I then broadcast those 1000 elements as an array, that means there are fewer messages. I also make the size of the buffer adjustable, so slower DAQ could have a buffer of 1, but fast-DAQ could have a buffer of 10,000 for example. Cheers, Tom
Thank You very much. Could You share code with helper loop in github? Or create a movie how It should be done (better option)? I did similar functionality with second queue betwen MHL and my new loop but Your solution looks much better ;)
Excellent video Tom! Thanks for spreading the news.
One comment: We recommend that you replace the contents of Start Module.vi with Start Module2.vi, the DQMH Validator gives you some tips on how to go about that and remove Start Module2.vi to avoid confusion and benefit from any future validation tools that will look for Start Module.vi. This also means you don't have to go changing your calling code and replacing Start Module.vi itself.
Thanks again! Fab
Thanks for the tip Fab!
Thanks a lot, Tom! Especially for the trick with making MGI manager back to life again. Congrats with new house!
For the MGI Panel Manager, one thing I didn't show in the video, is that you have to update the inputs (inside the Start Module VI) - There are tips on how to do this inside the StartModule2 VI - Also, see the comment by Fab that I've pinned.
Hello Tom,
Thank you for your tutorial on DQMH. It helped me a lot to understand the basic principles quickly and easily. There is certainly a lot of work behind all your videos and providing the LabVIEW files.
Even if you don't have as many views and likes compared to other TH-cam videos, please keep going! We programmers appreciate your work very much! You are also no stranger to LabVIEW coders in our company, which operates worldwide.
Great to hear from you again 😉✌️
thanks for making these excellent videos!
Thanks Tom for the video on DQMH updates
Great video again Tom! Would love to see more in-depth how you created this 'Wizard' custom module type. Is the example code of that one also available somewhere? I simply love these videos. You explain everything so clearly and understandable. Thanks again for everything!
Unfortunately, I can't share the DQMH Wizard Template. However, a video about DQMH helper loops is doable - no promises on when that would be though!
@@TomsLabVIEWAdventure Great - looking forward to it...
Thank you very much for this Tom, very helpful introduction. I wonder if you will consider doing a video about helper loops.
Thank you very much for your update,Tom.I just see "helper loops" in acquisition.lvlib of "CML DQMH" template.Why don't use queue?
If the data acquisition is very fast, will it cause data loss when the real data processing is too slow?
User Events are 'Queued' in the background, so if you send 100 user events, the event structure will execute them 1 at a time, but all 100 will be actioned.
One thing I typically do is create a little buffer of x-elements (let's say 1000 elements) in my DAQ loop, I then broadcast those 1000 elements as an array, that means there are fewer messages.
I also make the size of the buffer adjustable, so slower DAQ could have a buffer of 1, but fast-DAQ could have a buffer of 10,000 for example.
Cheers,
Tom
Thank You very much. Could You share code with helper loop in github? Or create a movie how It should be done (better option)?
I did similar functionality with second queue betwen MHL and my new loop but Your solution looks much better ;)
I can't share the DQMH Wizard Template unfortunately. However, a video on DQMH helper loops is a good idea, I can't promise when that will be though!