Sign Up

DQMH (System) by DQMH Consortium - Toolkit for LabVIEW Download

This package installs all the packages needed for the Delacor QMH toolkit

Watch * 0 ↓4,170
 logo
Version6.0.0.83
ReleasedJun 10, 2021
Publisher DQMH Consortium
License Not Specified
LabVIEW VersionLabVIEW>=0
Operating System Windows, Mac, and Linux
Project links Homepage  

Description

This package installs all the packages needed for the Delacor QMH toolkit:
DQMH Palette
DQMH Project Template
DQMH Event Scripter
DQMH Thermal Chamber Examples

The DQMH project template is based on the National Instruments Queued Message Handler Project Template (NI QMH)

The DQMH project template improves on the NI QMH by providing safe, event-based message handling and scripting tools to make development easy, encourage same style between different developers in the same project and improve efficiency

DQMH modules are best used in applications where there needs to be multiple modules running in parallel that communicate with each other

DQMH modules can also be used for applications that have a single module, where the developer would benefit from having an API Tester has the capability of eavesdropping on the different DQMH events and messages

Each module is implemented following a variation of the National Instruments Queued Message Handler and it has a Test DQMH Module API.vi to help troubleshoot, debug and eavesdrop on the communications between the DQMH Module and its calling code

Release Notes

6.0.0.83 (Jun 10, 2021)

DQMH 6.0
DQMH Toolkit 6.0.0.83
DQMH Event Scripter 6.0.0.122
DQMH Palette 6.0.0.14
DQMH Project Template 6.0.0.91
DQMH Shipping Examples 6.0.0.49

Release notes can be found at delacor.com/dqmh-6-0-release-notes/
The online version includes links to forum posts and blog posts relevant to the release notes.
For DQMH Help go to Help>>Delacor>>DQMH Help....

Release notes for DQMH 6.0
This will be the last DQMH release that supports LabVIEW 2014.

### Major new features
1. New error handling approach to store the DQMH Loop-specific error origin as a tag in the error source string.

2. New 'Find Event Frames' right-click plugin (LabVIEW 2015 and later)

3. When the Validate/Fixer cannot upgrade the Start Module.vi automatically, it creates a StartModule2.vi with instructions on how to migrate the code.

### DQMH Palette

1. #DQMH-638 Change new DQMH 6.0 error handling approach to store the DQMH Loop-specific error as a tag in the error source string. This preserves pre-DQMH 6.0 module behavior that expects the data type for an "Error" message to be an error cluster

2. Added DQMH Error Handler - Helper Loop.vi to the palette

### Project Template

1. #DQMH-694 Re-created the Main.vi for the Singleton and Cloneable module templates from scratch, making sure that their pane origin values make sense and are at (0,0)

2. #DQMH-696 Added a call to Update Module Execution Status.vi (with a 'Running?' value of FALSE) to Close Module.vi for our project template, CML project template, and module template. We also added a validate/fixer for the issue

3. #DQMH-697 Updated the scripting for the DQMH unit test teardown VI to use a Merge Errors for the incoming error so the Stop Module VI always executes. We also added a validate/fixer that checks for this issue

4. #DQMH-688 Creating a new module from template now works if the template exists in the project

5. #DQMH-685 Unbundle the reply in the Request and Wait for Reply (except for error). If there is not enough space for terminals, then the VI outputs the reply cluster as before. No validate/fixer tool

6. #DQMH-666 Updated the context help of the Start Module.vi and Synchronize Module Events.vi for both singleton and cloneable to better illustrate their use together

7. #DQMH-693 The Stop Module.vi for the My Cloneable Module.lvlib in our project template now has Fab's fix for Andreas 2.0, where we poll the module state at the end of stopping the module, if we're running as a singleton

8. #DQMH-638 Added support for parsing DQMH tags from the error source string in the 'Error Reported' broadcast VI. Added a validate/fixer tool

9. #DQMH-664 Made the MHL frame names with "---" prefixes have consistent spacing. Also fixed errant window position of 'Do Something Else and Wait for Reply' VI from singleton module

10. #DQMH-677 Updated Stop Module VI for singleton module to always stop the module regardless of incoming error. Updated testers for both singleton and cloneable to not do a Clear Errors when the event loop stops executing

11. #DQMH-686 Changed data type of Module ID input to Wait on Module Sync.vi to be an I32 instead of a U32. Included validate/fix tool

12. #DQMH-708 Don't show panel of singleton if not running. We changed the singleton template in DQMH 6.0 to broadcast an Update Module Execution Status of FALSE before closing. The application main VI in our project template needed to be updated to not try to show the panel of the singleton module if the module execution status is FALSE (since that means the module has stopped)

### DQMH Event Scripter

1. #DQMH-694 Re-created the Main.vi for the Singleton and Cloneable module templates from scratch, making sure that their pane origin values make sense and are at (0,0)

2. #DQMH-696 Added a call to Update Module Execution Status.vi (with a 'Running?' value of FALSE) to Close Module.vi for our project template, CML project template, and module template. Also added a validate+fixer for the issue

3. #DQMH-697 Updated the scripting for the DQMH unit test teardown VI to use a Merge Errors for the incoming error so the Stop Module VI always executes. We also added a validate+fixer that checks for this issue

4. #DQMH-684 This is the version of the 'Find Event Frames' right-click plugin that was signed off by the DQMH Trusted Advisors. Note that this only works on LabVIEW 2015

5. #DQMH-688 Creating a new module from template now works if the template exists in the project

6. #DQMH-685 Unbundle the reply in the Request and Wait for Reply (except for error). If there is not enough space for terminals, then the VI outputs the reply cluster as before. No validate/fixer tool

7. #DQMH-680 Prior to DQMH 5.0 we could create new DQMH Events for a DQMH module that did not have a MHL. This feature broke in DQMH 5.0. DQMH 6.0 allows the creation of DQMH events for custom DQMH templates that don't have a Message Handling Loop

8. #DQMH-683 Fixed error 1357 when creating an event if there is an unsaved VI in the project. When attempting to create a new event if there are unsaved files, there is a dialog explaining that the DQMH cannot script new Events until all unsaved VIs in the module have been saved to disk

9. #DQMHWL-46 Script the "Status" string update code in the API Tester for new broadcast events

10. #DQMH-676 If there is no module selected in the Create New Event dialog, the OK button is disabled

11. #DQMH-674 Updated the link for the Help button in the Create DQMH Module Template dialog box to point to the 'AddingaNewDQMHModulefromaCustomT' help topic

12. #DQMH-704 Improved the Rename DQMH Module performance and added a progress bar

13. #DQMH-710 Added code as workaround to address a scripting LabVIEW bug that results in error 1397 (NI is tracking this bug as 1281963)

### DQMH Validation Tool

1. #DQMH-696 Added a call to Update Module Execution Status.vi (with a 'Running?' value of FALSE) to Close Module.vi for our project template, CML project template, and module template. We also added a validate+fixer for the issue

2. #DQMH-697 Updated the scripting for the DQMH unit test teardown VI to use a Merge Errors for the incoming error so the Stop Module VI always executes. We also added a validate/fixer that checks for this issue

3. #DQMH-692 Added a validate test that finds bundles in Event Structures with unbundled inputs. This is useful when we add manually new event arguments and we forget to wire them. This is an example of a validate test that would be very useful in a Continuous Integration environment

4. #DQMH-681 Obsolete MHL Frames validator test was incorrectly flagging frames that contained the offending frame names ("Show Panel", "Hide Panel", "Show Diagram"). We improved the logic to do a exact match on the obsolete frame name instead of a partial match

5. #DQMH-691 Added a new validate test for Broadcast Event Cluster Naming. This test checks that the broadcast cluster outputs from key VIs in a module have a label that matches the format " Broadcast Events". Key VIs are: Obtain Broadcast Events.vi, Obtain Broadcast Events for Registration.vi, Start Module.vi, Init Module.vi, and Obtain Request Events.vi. There are scripting tools that rely on these indicators having the correct name

6. #DQMH-695 When the validate/fixer cannot upgrade the Start Module.vi automatically, it creates a StartModule2.vi with instructions on how to migrate the code

7. #DQMH-693 There is now a validate/fixer to fix the Andreas 2.0 issue in the Stop Module.vi of a cloneable module for the issue of starting/stopping a cloneable running as singleton in rapid succession

8. #DQMH-638 Added a new validate/fixer for modifying Error Reported.vi to the new DQMH 6.0 approach of parsing for DQMH tags. The fixer will also remove the Module Name constant VI that was added to the 'Error' frame of the MHL in the Main VI in DQMH 5.0

9. #DQMH-686 Added a validate/fixer to change the Module ID input of Wait on Module Sync.vi to an I32

10. #DQMH-677 Added a new validate/fixer to fix Stop Module.vi error propagation so the VI executes even on incoming error. The fixer also tells the developer which VIs in the current project call Stop Module.vi, in case they want to see if they need/want to modify code to account for this change

18. #DQMH-703 There is now a validate/fixer that will create all necessary core files in the DQMH module if any of them are missing. This mainly helps when running our validator on very old modules (like DQMH 2.0-era) that may be missing core files that were added in a post-2.0 DQMH release

### DQMH Thermal Chamber Examples

1. Ran validation tools to ensure DMQH Modules in the examples match DQMH 6.0

2. #DQMH-664 Made the MHL frame names with "---" prefixes have consistent spacing

3. #DQMH-686 Change data type of Module ID input to Wait on Module Sync.vi to be an I32 instead of a U32

4. #DQMH-696 Updated all the modules in the shipping example to call Update Module Execution Status.vi inside Close Module.vi

5. #DQMH-693 Updated the Stop Module.vi in the cloneable DUT module with the Andreas 2.0 fix (and updated context help)

6. #DQMH-638 Updated the 'Error Reported' broadcast VIs in the shipping example to use the new DQMH 6.0 approach for parsing DQMH tags out of the incoming error source string. Removed the Module Name--constant.vi from the 'Error' frame of the Main VI MHL case structure

7. #DQMH-713 Updated changed VI steps in sequence files

### DQMH CML Project Template

1. Ran validation tools to ensure DMQH Modules in this project match DQMH 6.0

2. #DQMH-598 Removed the unused queue wire in the helper loop of the Acquisition Main VI. Also replaced the error handler VI in the helper loop with the new DQMH 6.0 Helper Loop Error Handler VI

3. #DQMH-644 Added 'logging' state to Logger module to be able to no-op in the following situations:
a. Start logging if logging is already started
b. Stop logging if logging is already stopped
c. Log to file if logging has not started

4. #DQMH-667 Updated the filter for the CML DQMH project template to be 'Sample Projects:Desktop' instead of just 'Sample Projects'. I also updated the QMH template filter to include 'Templates:Desktop' so it will also appear in the Templates filter (it was previously not appearing)

###Help
1. Updated video link to Validating an Existing DQMH Module that shows the new features for DQMH 6.0 and how to validate an existing DQMH 5.0 project to match DQMH 6.0
2. Renamed the section What is New on DQMH to What is New in DQMH
Updated Introduction with the new DQMH logo and added extra information on the transfer from Delacor to the DQMH Consortium
3. Added section on Find Broadcast Event Frames
4. Added section on new error handling VIs called Additional Error Information
5. Changed references to “National Instruments” to NI
6. Updated contact email
7. Renamed and updated the What is New in DQMH with all the new features for DQMH 6.0
8. Added a new section for Feature Requests


Download Package

Versions

  Post an Idea   Post a Resource

Recent Posts