Pin Map File XML Structure

The pin map XML schema defines the following structure for a pin map XML file:
Legend
1378Root element
1378Element
1378Attribute
1378PinMap
  • 1378schemaVersion—Specifies the version of the schema file.
  • 1378Instruments—Specifies the type of instruments connected to the tester, the name of each instrument, and the number of channels available for each instrument.
    Note
    • Consider getting instrument names to use in ECU Test programs from the System Components » General Information section of the ECU Test System Maintenance Software Report or from NI MAX.
    • Names for NI instruments in the pin map file are not case sensitive.
    • 1378NIDCPowerInstrument—Defines an NI-DCPower instrument.
      • 1378name—Name of the instrument, as defined in MAX.
      • 1378numberOfChannels—Number of channels available on the instrument.
      • 1378ChannelGroup—Defines a group of channels controlled by one session. By grouping channels into a single session, you can avoid using session loops in code modules. By default, the Pin Map Editor creates one channel group containing all instrument channels. To create multiple, custom groups, use a unique name for the set of instrument channels for which you want to create a session. Note that channels within a group do not have to be from the same NI-DCPower instrument. Refer to the NI-DCPower Help for information about independent channels.
        • 1378name—Name of a group of channels. Group names are case sensitive.
        • 1378channels—Channel(s) that are assigned to a group. If not defined, the ECU Software Toolkit will assign all channels from the instrument. Channels can be defined as a comma-separated list (e.g., 0,1,3,..,n), a continuous range (e.g., 0:3), or as a combination of the two (e.g., 0:1,3). All channels from an instrument must be assigned to a group and a channel cannot be in multiple groups.
    • 1378NIDAQmxTask—Defines an NI-DAQmx task, not an instrument.
      • 1378name—Name of the task, as defined in test program code modules.
      • 1378taskType—Category of the task. Pin queries that return tasks of more than one task type return an error.
      • 1378channelList—List of physical channels associated with the task.
    • 1378NIDmmInstrument—Defines an NI-DMM instrument. NI-DMM instruments define a single channel, displayed within the ECU Software Toolkit as channel 0.
      • 1378name—Name of the instrument, as defined in MAX.
    • 1378NIFGenInstrument—Defines an NI-FGEN instrument.
      • 1378name—Name of the instrument, as defined in MAX.
      • 1378numberOfChannels—Number of channels available on the instrument.
    • 1378NIScopeInstrument—Defines an NI-SCOPE instrument.
      • 1378name—Name of the instrument, as defined in MAX.
      • 1378numberOfChannels—Number of channels available on the instrument.
      • 1378group—Name of the group that contains the instrument. Group names are case sensitive. By default, the Pin Map Editor sets this attribute to Scope when you add NI-SCOPE instruments to the pin map file. Group names are case sensitive. By using the same group name for all NI-SCOPE instruments, the ECU Software Toolkit combines all instruments into a single session so you can avoid session loops in code modules. To create multiple NI-SCOPE sessions, use a unique name for each set of instruments for which you want to create a session. Refer to the NI-SCOPE Help for information about hardware limitations that prevent certain instruments from operating together as a single instrument.
    • 1378NIRelayDriverModule—Defines a PXI-2567 relay driver module.
      • 1378name—Name of the relay driver module, as defined in MAX.
      • 1378numberOfControlLines—Number of control lines available on the relay driver module.
    • 1378Instrument—Defines an instrument that the ECU Software Toolkit does not natively support.
      • 1378name—String that identifies the instrument. For instruments that NI provides but that the ECU Software Toolkit does not natively support, specify the name of the instrument, as defined in MAX.
      • 1378instrumentTypeId—String that identifies the instrument type, family, class, or product group. You cannot specify a value that begins with ni. This value is a string that you define in the pin map and is not a predefined value from some other source, such as a name in MAX, that you select. Use this value to identify all instances of a particular instrument type. Instruments of the same type typically have the same session data type and same driver API.
      • 1378ChannelGroup—Defines a synchronized group of channels. Specify individual Channel elements with unique IDs within the channel group.
        • 1378id—Unique ID for the channel group. An instrument cannot contain more than one channel group with the same ID.
        • 1378Channel—Channel within the channel group.
          • 1378id—Unique ID for the channel. An instrument cannot contain more than one channel with the same ID.
      • 1378Channel—Channel on the instrument.
        • 1378id—Unique ID for the channel. An instrument cannot contain more than one channel with the same ID.
    • 1378NIModelBasedInstrument
      • 1378name—Unique string that identifies the instrument.
      • 1378instrumentModel—Installed model description files in the model library.
      • 1378category—String that specifies the category to which the instrument belongs. The instrument model description defines the category for the instrument model.
      • 1378subcategory—(Optional) String that specifies the subcategory to which the instrument belongs. The instrument model description defines the subcategory for the instrument model.
      • 1378Resource—(Optional) If required by the model description file, specifies the instrument resource name in Measurement & Automation Explorer (MAX).
        • 1378owner—Specifies the instrument resource in the model description file to which the attribute values of the <UserData> element apply.
        • 1378UserData—Contains the properties from the model description file you can assign.
          • 1378propertyName—Name of the property defined in the model description file.
          • 1378propertyValue—Value you assign to the property.
    • 1378Multiplexer—Defines a switching instrument to use as a multiplexer across multiple test sites. You can use one instrument multiplexed across multiple test sites or multiple instruments multiplexed across multiple test sites.
      • 1378name—Name of the Switch Executive virtual device, as defined in MAX.
      • 1378multiplexerTypeId—(Optional) String that identifies the switch type, family, class, or product group. You cannot specify a value that begins with ni. This value is a string that you define in the pin map and is not a predefined value from some other source, such as a name in MAX, that you select. Use this value to identify all instances of a particular switch type. Switches of the same type typically have the same session data type and same driver API.
    • 1378NISwitchExecutiveVirtualDevice—Defines a switching instrument to use as a Switch Executive virtual device on one test site or across multiple test sites. You can use one or multiple instruments switched across DUT pins on one or multiple test sites.
      • 1378name—Name of the Switch Executive virtual device, as defined in NI MAX.
  • 1378Pins—Specifies the pins on the DUT and the pins on the tester that the test program associated with the pin map file references.
    • 1378DUTPin—Defines a DUT pin, which is a pin on a DUT or a resource on the tester or DIB that is associated with one or more sites.
      • 1378name—String that identifies the DUT pin.
    • 1378SystemPin—Defines a system pin, which is resource on the tester or DIB that is connected to an instrument.
      • 1378name—String that identifies the system pin.
  • 1378PinGroups—Specifies named grouping of pins.
    • 1378PinGroup—Defines a group of pins that you can reference with a single name.
      • 1378name—String that identifies the group of pins.
      • 1378PinReference—Specifies a pin or a group of pins within the pin group.
        • 1378pin—String that specifies the name of an existing pin or pin group.
  • 1378Relays—Specifies the relays on the site and the relays on the tester that the test program associated with the pin map file references
    • 1378SiteRelay—Defines a site relay, which is a relay on the tester or DIB that is connected to a relay driver module and that is associated with one or more sites.
      • 1378name—String that identifies the site relay.
      • 1378openStateDisplayLabel—(Optional) A description of the connections when the relay is in the open state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
      • 1378closedStateDisplayLabel—(Optional) A description of the connections when the relay is in the closed state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
    • 1378SystemRelay—Defines a system relay, which is a relay on the tester or DIB that is connected to a relay driver module and that is associated with all sites.
      • 1378name—String that identifies the system relay.
      • 1378openStateDisplayLabel—(Optional) A description of the connections when the relay is in the open state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
      • 1378closedStateDisplayLabel—(Optional) A description of the connections when the relay is in the closed state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
  • 1378RelayGroups—Specifies named grouping of relays.
    • 1378RelayGroup—Defines a group of relays that you can reference with a single name.
      • 1378name—String that identifies the group of relays.
      • 1378RelayReference—Specifies a relay or a group of relays within the relay group.
        • 1378relay—String that specifies the name of an existing relay or relay group.
  • 1378RelayConfigurations—Specifies a grouping of relay configurations.
    • 1378RelayConfiguration—Defines a relay configuration. A relay configuration is the name assigned to a set of relays and their positions.
      • 1378name—String that identifies the relay configuration.
      • 1378RelayPosition—Specifies a relay and its position.
        • 1378relay—String that specifies the name of an existing relay or relay group.
        • 1378position—String that specifies the position of the relay or relay group. Valid values are Open or Closed.
  • 1378Sites—Specifies the sites on the tester.
    • 1378Site—Defines a site to test.
      • 1378siteNumber—Number that identifies the site. Site numbers must start at 0 and be consecutive without gaps.
  • 1378Connections—Specifies mappings among pins, sites, instruments, and instrument channels.
    • 1378Connection—Defines a connection between a DUT pin and an instrument channel.
      • 1378pin—Name of the DUT pin to connect. The value must match the value of the name attribute of a DUTPin element.
      • 1378siteNumber—The site or group of sites associated with the connection. The value must match the value of the siteNumber attribute of one of the Site elements or it must be a comma-separated list of site numbers.
      • 1378instrument—Name of the instrument or DAQmx task to connect. The value must match the value of the name attribute of an Instrument element.
      • 1378channel—ID of the instrument channel or physical channel ID of the DAQmx task to connect.
      • 1378deembeddingFilePath—Path, relative to the path of the pin map file, to the S2P file for de-embedding an RF Port Module connection. You can manually specify an absolute path.
      • 1378deembeddingOrientation—(Optional) Used with the deembeddingFilePath attribute to specify the orientation of the data in the S2P file relative to the port the channel attribute specifies. Valid values are Port1TowardDUT or Port2TowardDUT.
    • 1378SystemConnection—Defines a direct connection between a system pin and an instrument channel.
      • 1378pin—Name of the system pin to connect. The value must match the value of the name attribute of a SystemPin element.
      • 1378instrument—Name of the instrument to connect. The value must match the value of the name attribute of an Instrument element.
      • 1378channel—(Optional) ID of the instrument channel to connect.
      • 1378deembeddingFilePath—Path, relative to the path of the pin map file, to the S2P file for de-embedding an RF Port Module connection. You can manually specify an absolute path.
      • 1378deembeddingOrientation—(Optional) Used with the deembeddingFilePath attribute to specify the orientation of the data in the S2P file relative to the port the channel attribute specifies. Valid values are Port1TowardDUT or Port2TowardDUT.
    • 1378MultiplexedConnection—Defines a multiplexed connection between the same DUT pin on multiple sites and a single instrument channel.
      • 1378instrument—Name of the instrument to connect. The value must match the value of the name attribute of an Instrument element.
      • 1378channel—ID of the instrument channel to connect.
      • 1378MultiplexedDUTPinRoute—Specifies the route required to connect a DUT pin on a specific site to the instrument channel.
        • 1378pin—Name of the DUT pin to connect. The value must match the value of the name attribute of a DUTPin element.
        • 1378siteNumber—Site for the DUT pin in the system. The value must match the value of the siteNumber attribute of a Site element.
        • 1378multiplexer—String that identifies the multiplexer required to create the route. The value must match the value of the name attribute of a Multiplexer element.
        • 1378routeName—String that identifies the multiplexer route required to connect the pin and site to the instrument and channel.
        • 1378deembeddingFilePath—Path, relative to the path of the pin map file, to the S2P file for de-embedding an RF Port Module connection. You can manually specify an absolute path.
        • 1378deembeddingOrientation—(Optional) Used with the deembeddingFilePath attribute to specify the orientation of the data in the S2P file relative to the port the channel attribute specifies. Valid values are Port1TowardDUT or Port2TowardDUT.
    • 1378SwitchExecutiveConnection—Specifies a switched connection between a DUT pin and an instrument channel for one site using a Switch Executive virtual device.
      • 1378pin—Name of a DUT pin to connect. The value must match the name attribute value of a DUTPin element.
      • 1378siteNumber—Site for the DUT pin in the system. The value must match the siteNumber attribute value of a Site element.
      • 1378instrument—Name of the instrument to connect. The value must match the name attribute value of an Instrument element.
      • 1378channel—ID of the instrument channel to connect.
      • 1378switchExecutiveVirtualDevice—Specifies the Switch Executive virtual device used to connect a DUT pin on a specific site to the instrument channel.
    • 1378RelayConnection—Defines a connection between a site relay and a control line of a relay driver module.
      • 1378relay—Name of the site relay to connect. The value must match the value of the name attribute of a SiteRelay element.
      • 1378siteNumber—The site or group of sites associated with the connection. The value must match the value of the siteNumber attribute of one of the Site elements or it must be a comma-separated list of site numbers.
      • 1378relayDriverModule—Name of the relay driver module to connect. The value must match the value of the name attribute of an NIRelayDriverModule element.
      • 1378controlLine—ID of the physical control line of the relay driver module to connect.
    • 1378SystemRelayConnection—Defines a direct connection between a system relay and a control line of a relay driver module.
      • 1378relay—Name of the system relay to connect. The value must match the value of the name attribute of a SystemRelay element.
      • 1378relayDriverModule—Name of the relay driver module to connect. The value must match the value of the name attribute of an NIRelayDriverModule element.
      • 1378controlLine—ID of the physical control line of the relay driver module to connect.

Common XML Validation Error Messages

If the contents of the pin map XML file do not satisfy the constraints the pin map schema defines, the ECU Software Toolkit reports error messages. Some of the error messages are generic XML validation errors and can be difficult to decipher.

Refer to the following tables to interpret certain error messages.

Error Message The key sequence '<Item>' in 'http://www.ni.com/TestStand/SemiconductorModule/PinMap.xsd:<Element>' Keyref fails to refer to some key.
Interpretation The following table includes the exact meaning of the error message, which depends on the value of the Element text.
Value of Element Meaning of Error Message
PinName The specified pin Item does not exist in the pin map.
SystemPinName The specified system pin Item does not exist in the pin map.
PinOrPinGroupName The specified pin or pin group name Item does not exist in the pin map.
RelayName The specified relay Item does not exist in the pin map.
SystemRelayName The specified system relay Item does not exist in the pin map.
RelayOrRelayGroupName The specified relay or relay group name Item does not exist in the pin map.
SiteNumber The specified site number Item does not exist in the pin map.
InstrumentName The specified instrument Item does not exist in the pin map.
MultiplexerName The specified multiplexer Item does not exist in the pin map.
RelayDriverModuleName The specified relay driver module Item does not exist in the pin map.
Error Message There is a duplicate key sequence '<Item1> [<Item2>]' for the 'http://www.ni.com/TestStand/SemiconductorModule/PinMap.xsd:<Element>' key or unique identity constraint.
Interpretation The following table includes the exact meaning of the error message, which depends on the value of the Element text.
Value of Element Meaning of Error Message
PinName, AllPinNames, AllPinOrPinGroupNames, AllPinAndRelayNames The specified pin, pin group name, relay, or relay group name Item1 is defined multiple times in the pin map.
SiteNumber The specified site number Item1 is defined multiple times the pin map.
InstrumentName The specified instrument Item1 is defined multiple times the pin map.
MultiplexerName The specified multiplexer Item1 is defined multiple times in the pin map.
RelayDriverModuleName The specified relay driver module Item1 is defined multiple times in the pin map.
ConnectionDUTPin The pin Item2 on site Item1 is connected to multiple instrument channels.
ConnectionSiteRelay The relay Item2 on site Item1 is connected to multiple relay driver module control lines.
SystemConnectionDUTPin The system pin Item1 is connected to multiple instrument channels.
SystemConnectionSiteRelay The system relay Item1 is connected to multiple relay driver module control lines.
ConnectionInstrumentChannel The channel Item2 on instrument Item1 is connected to multiple pins.
RelayConnectionModuleDriver The control line Item2 on relay driver module Item1 is connected to multiple relays.
MultiplexedRouteName The multiplexer route Item1 on multiplexer Item2 has duplicate connections.
UniqueChannelAndChannelGroup The specified channel or channel group name Item1 is defined multiple times in the pin map.