Using Alarms to Report Error Conditions at Runtime

An alarm in the TestStand Semiconductor Module™ (TSM) enables NI driver software to report error conditions for an instrument during test program execution.

Complete the following steps to enable and configure the behavior of alarms for your test sequence.

  1. In TestStand, open your test sequence in the Sequence Editor.
  2. Click Edit Test Program on the TSM toolbar to launch the Test Program Editor.
  3. On the Alarms panel, check Alarms enabled to enable alarms for the test program.
    The Alarms panel displays DUT pins you define in the pin map with the supported alarms.
  4. Select an alarm handling behavior for each row on the Alarms panel, then click OK.
    During test program execution, TSM simultaneously monitors the status of every alarm that you configure on the Alarms panel. When an alarm latches, TSM supports four options to determine runtime, binning, and logging behaviors for alarm handling. The following table shows an overview of the supported behavior options for alarms.
    Table 3. Alarm handling behavior options
    Option Runtime Behavior Binning Behavior Logging Behavior
    Ignore
    Log (Default) Alarm documented in STDF report in DTR, FTR, and PTR records.
    Fail step and any tests in step The alarm causes the test step to fail and TSM records all tests within the step as failed. The DUT is sent to the configured failure bin for the tests within the step. Alarm documented in STDF report in DTR, FTR, and PTR records.
    Error step and bin part to alarm bin The alarm causes a runtime error, which the test station handles per its configured settings. TSM automatically bins the DUT to the alarm software bin and does not evaluate the tests within the test step. The DUT is sent to the configured alarm software bin. Alarm documented in STDF report in DTR, FTR, and PTR records.
  5. Configure the default bin for alarms.
    1. Click Edit Bin Definitions File on the TSM toolbar to open the Bin Definitions Editor.
    2. Go to the Default Bins tab.
    3. Select a bin destination for your test scenario from the Alarm drop-down menu.
      By default, the alarm bin is set to the 99 - Alarm software bin.

After you enable alarms, when an event that meets an alarm criteria occurs during the execution of a test step, the alarm latches for the remainder of the test step. After the test step is complete, TSM queries the alarm status and follows the runtime behavior defined in the Alarms panel of the Test Program Editor.

At runtime, the Output pane in the TestStand Sequence Editor displays information about alarms that occur during test execution, including the type of alarm, the relevant pin and site, the time stamp, and the step and sequence in which the alarm occurred. TestStand updates this pane only after a step in the test sequence is completed. If the alarm condition occurs multiple times during a test step, TSM only generates messages for the first occurrence. The following figure shows an example of the Output pane.

Figure 1. Output Pane in TestStand Sequence Editor
Tip The time stamp on the Output pane indicates the time at which TSM displays the message, not the time at which the alarm occurred.

After TSM completes a test step, it processes alarms with the behavior you configure and clears the alarm status.

Note The alarm status of an instrument is also cleared when the instrument is hard reset.

The following figures demonstrate common examples of the alarm behavior.

Figure 2. Event occurs during test step execution
Figure 3. Event occurs between test steps
Figure 4. Event persists across Test steps

After test execution is complete, you can view alarm information in the Lot Summary Report and in STDF Log files.

  • The Lot Summary Report contains a section at the end of the report that displays the number of alarm occurrences during test program execution for each site, pin, and step. This report also displays alarm occurrence information within the Test Results section.
  • TSM stores information about alarm occurrences in the ALARM_ID field of the PTRs and FTRs in STDF files.
  • TSM creates a DTR in the STDF file for each alarm occurrence.

Lot Summary Report, Test Results and Alarms sections

Configuring Alarms Programmatically

You can also use the following code module APIs to interact with alarms:
.NET Code Module API LabVIEW Code Module API Description
DisableAlarms Disable Alarms.vi Temporarily prevents instruments from raising alarms in a code module.
EnableAlarms Enable Alarms.vi
OverrideAlarmBehavior Override Alarm Behavior.vi Temporarily changes how TSM responds to raised alarms.
RestoreAlarmBehavior Restore Alarm Behavior.vi
GetAlarmBehavior Get Alarm Behavior.vi
QueryForRaisedAlarms Query for Raised Alarms.vi Locates the section of code that raised an alarm by calling from conditional breakpoints.

Refer to the following topics in this section for information about the supported alarms in TSM.