Dynamically Load Pinmap File for TestStand Semiconductor Module Test Program

Updated Jun 15, 2026

 

This KB details how to programmatically update the pinmap path used in a TSM test program sequence.  This can be used to choose between different pinmaps depending on the detected hardware configuration, propagate a pinmap from a main sequence file to subsequence sequence files, or to just programmatically apply a new pinmap to many sequence files.

 

The pinmap path in the TSM test program configuration can be changed programmatically using the TestStand API, but this must be done in edit time and cannot be changed during test program execution.  The SequenceFileLoad callback is a good option, as this runs at edit time when first loading a sequence file:

 

  1. In your test program sequence file, insert or create a blank SequenceFileLoad callback sequence.
  2. Place a LabVIEW action step in the sequence.
  3. Create a VI for the code module, and pass it the Sequence Context as a parameter.
  4. In the VI, use the TestStand API to update the TSM attribute for the pinmap path:
    1. Note: the TSM attributes only exist for a TSM test program sequence file.  If a new sequence file was created, you must launch the TSM test program configuration tool(Semiconductor Module>>Edit Test Program) at least once and click OK to apply changes to create the attributes.
    2. The Sequence File attribute that stores the pinmap file path for the test program configuration is NI.SemiconductorModule.PinMapPath.

 

When this code module executes, it will update the pinmap file path used in the TSM test program configuration to the new value specified.

Please see attached VI for reference.  VI may need modification depending on your application.

Attachments