Private VIs should not appear in the Instrument Drivers palette and therefore are not intended to be used by the end user. Private VIs never appear on the block diagram of an Example VI or VI Tree. An example of a support VI is the Default Instrument Setup VI, which sends a default command string to the instrument whenever a new VISA session opens, or the instrument is reset.
Do not confuse Private support VIs with user-accessible Utility VIs.
The VI Tree VI is a non-executable VI that helps end users visually see the hierarchy of the instrument driver VIs. Arrange the VIs in the VI Tree VI by functional grouping, such as Initialize, Configuration, Action/Status, Data, Utility, and Close. The functional grouping should be similar to grouping of the instrument driver palette.
A VI Tree VI should not contain front panel controls, so include instructions on the front panel to view the block diagram. The figures below show the front panel and block diagram of a sample VI Tree VI.
This helps end users select the VIs needed to begin communication with their instrument.
End users need write access to the instrument driver VIs and menu palettes. Users might want to optimize the code in the instrument driver and often need to mass compile VIs in other versions of LabVIEW. Although users are less likely to modify .mnu files, give them write access to these files because read-only files frustrate end-users when they need to modify them.
The <labview>/instr.lib subdirectory contains subdirectories for all installed LabVIEW Plug & Play instrument drivers. The name of each instrument driver subdirectory is the driver prefix. This subdirectory all instrument driver files. For example, the Agilent 34401 DMM instrument driver files reside in the <labview>/instr.lib/Agilent 34401 subdirectory.
For distribution, each instrument driver is compressed as a .zip file. The name of the zip file is driver_identifier.zip, such as agilent_34401.zip. Creating a .zip file provides a convenient way to keep track of all your instrument driver files. Files can be archived using common utilities such as 7Zip. Create the zip file so that it automatically creates a subdirectory with the prefix name. This prevents users from overwriting files in the root <labview>/instr.lib directory accidentally.
Submit your driver for review to be included in IDNet.