“VI is not executable” Error Is Triggered When Trying to Deploy Two Different Custom Devices at the Same Time in VeriStand

Updated Jan 19, 2026

Reported In

Software

  • VeriStand

Issue Details

I have two VeriStand custom devices which work when deployed separately, but when I deploy a system definition containing both custom devices, I get the following error:

how can I fix it?

Solution

This is typically caused by a conflict in VI or library names between the two custom devices. As custom devices are typically built as LLBs, there is no name spacing applied to the VI names at build time by default, which can make hitting conflicts easy.

A very common cause for this error is when two custom devices share a dependency (e.g. the Inline-Async API) but one of them is built against a newer version of the dependency. If the dependency added new VIs to its LabVIEW library, or changed a VI connector pane (even adding optional terminals), this can cause deployment problems when both custom devices are present.

The workaround for this is to use LabVIEW's ability to rename VIs or libraries during the build to force each dependency library to have a name unique to that custom device, such as prepending the custom device name. Modifying the name in the build specification requires that the dependencies be added to a virtual folder in the LabVIEW project. 

Then Adding an UDP_Addon_ prefix to the Inline-Async APIs folder can avoid this error.