Custom Instruments (TSM)
- Updated2025-04-10
- 2 minute(s) read
TSM provides built-in support for commonly used instruments, such as NI-DCPower and NI-HSDIO. If you need to use an instrument TSM does not natively support, complete the following steps to define a custom instrument.
- Based on the instrument driver behavior in a multisite environment, complete the following step:
- If each channel operates independently and can be accessed in separate threads with different timing, the instrument operates with one session per channel, similar to NI-DCPower instruments. Copy the <TestStand Public>\Examples\NI_SemiconductorModule\Custom Instruments\Session per Channel\LabVIEW directory to a new location and open the Session per Channel.seq file in the new location.
- If all channels operate synchronously, such that they must all be accessed together, the instrument operates with one session per instrument, similar to NI-HSDIO instruments. Copy the <TestStand Public>\Examples\NI_SemiconductorModule\Custom Instruments\Session per Instrument\LabVIEW directory to a new location and open the Session per Instrument.seq file in the new location.
- If the instrument has groups of channels that must be accessed synchronously, the instrument operates with one session per channel group. Copy the <TestStand Public>\Examples\NI_SemiconductorModule\Custom Instruments\Session per Channel Group\LabVIEW directory to a new location and open the Session per Channel Group.seq in the new location.
- Use the Pin Map Editor to specify instrument channels and IDs.
- Modify the related VI code modules in the example project to create a communication layer between the pin map and the instrument. Ensure that you update the session data inputs and outputs to a datatype that matches the expected data for the custom instrument.
Related Information
- TestStand Directory Structure
- Session per Channel (TSM)
This example demonstrates how to define instruments that TSM does not natively support, how to create API for the instruments, and how to use the API in a code module for a TSM test program. Each instrument in this example has unique session data for each channel, similar to an NI-DCPower instrument. The code module opens one session per channel.
- Session per Instrument (TSM)
This example demonstrates how to define instruments that TSM does not natively support, how to create API for the instruments, and how to use the API in a code module for a TSM test program. Each instrument in this example shares session data across the entire instrument, similar to an NI-HSDIO instrument. The code module opens one session per instrument.
- Session per Channel Group (TSM)
This example demonstrates how to define instruments that TSM does not natively support, how to create API for the instruments, and how to use the API in a code module for a TSM test program. Each instrument in this example has two unique sessions, each with two channels that share a session. The code module opens one session per channel group.
- Pin Map Editor (TSM)