From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

BLT for LabVIEW (Build, License, Track)

Showing results for 
Search instead for 
Did you mean: 

_STARTUP_VI is broken

Go to solution



I am evaluating BLT and using it for the first time.  My application consists of a bunch of DQMH modules called by top level vi which is also a DQMH module.


I was working through the BLT documentation (which is excellent), and reached upto where BLT builds its top level VI.  However the build through the BLT environment failed. Opening the STARTUP_VI reveals that its broken because its not part of the top-level application's lvlib.


What is the workaround?  Should I manually place the BLT _STARTUP_VI into my application's lvlib?





0 Kudos
Message 1 of 3
Accepted by topic author Neville_D

Hi Neville, 

If I understand correctly, you have a DQMH Module which calls several other DQMH Modules.

So if we forget about BLT, the main VI for your application would be the of your parent DQMH Module. By default, the of a DQMH Module is private (it cannot be accessed outside of the DQMH Module library) in order to for you to use the public methods available (Start and Stop Module).

There are several ways you can solve your issue:


1. The best approach is to create a Launcher VI outside of your parent DQMH Module. This launcher VI will simply start your parent DQMH Module using the public method Start Module. I suggest you look at the DQMH CML sample project ( to see how the launcher is implemented in "CML". Then, make sure to modify the _STARTUP_VI to call this new launcher VI instead of the private of your DQMH Module

2. You could make the of your parent DQMH module to be Public instead or Private, but I don't recommend this approach since it breaks the DQMH guidelines and best practises

3. You could make the BLT STARTUP_VI part of your parent DQMH Module Library but I don't recommend this approach either since it could create issues with future releases of BLT.


So definitely, go with #1 even if this is a little bit more work.

Hope this helps.

Matthias Baudot | Software Architect | Founder at STUDIO BODs

STUDIO BODs     BLT for LabVIEW     LabVIEW Champion     Certified Professional Instructor     DQMH Trusted Advisor     GCentral Sponsor

 Check out my LabVIEW presentations and videos!

0 Kudos
Message 2 of 3

Makes sense.  I will create a that starts my application and make that the top-level vi called through BLT.





0 Kudos
Message 3 of 3