The interface controls the communication on the physical network cluster. Multiple NI-XNET sessions can share the interface. For example, you can use one session for input on interface ENET1 and a second session for output on interface ENET1.

Figure 7. NI-XNET Interface State Model


Ethernet Interface States

  • Stopped—The interface is not communicating on its port; the PXIe-8520 initially powers on in state: Interface=Stopped. Unlike a session, the interface does not need to be created because it represents the communication controller of the PXIe-8520 port. This physical port is wired to a cable that connects to one or more remote ECUs.

    While the interface is stopped, you can change properties specific to the interface (those in the interface category of your API). When more than one session exists for a given interface, interface properties provide shared access to the interface configuration. For example, if you set an interface property using one session, then get that same property using a second session, the returned value reflects the change.

    Properties that you change in the interface are not saved from one execution of your application to another. When the last session for an interface is cleared, the interface properties are restored to defaults.

  • Started—The interface is waiting for the associated communication controller to complete its integration with the network.
    This state is transitory in nature, in that your application does not control transition out of state: Interface=Started.
  • Communicating—The interface is communicating on the network: one or more communicating sessions can use the interface to receive and/or transmit frame values.

    The interface remains in state: Interface=Communicating as long as communication is feasible. For information about how the interface transitions in and out of this state, see state: Interface=Comm State Communicating and state: Interface=Comm State Not Communicating.

    In LabVIEW, state: Interface=Communicating behaves differently for Ethernet as compared to other XNET protocols (e.g., CAN). For more information, refer to the Ethernet Operational Status property in the NI-XNET API reference.

  • Ethernet Interface State Transitions

  • Set Interface Property—Interface properties are committed to the interface; the interface remains in state: Interface=Stopped. state: Interface=Stopped is the only state in which you can set interface properties; if there is an exception for a specific property, documentation for the property states this.
  • Start Interface—You can request that the interface start in two ways:
    • Read or Write: The automatic start described for state: Session Transition=Start Session uses a scope of Normal, which requests that the interface and session start.
    • Start: Calling this function with scope of Normal or Interface Only requests that the interface start.

    state: Interface Transition=Start Interface occurs as follows, based on the start trigger connection:

    • Disconnected (default): Occurs as soon as it is requested (calling Read, Write, or Start).
    • Connected: Occurs when the connected source terminal transitions low-to-high (for example, pulses). Every Start Interface transition requires a new low-to-high transition, so if your application stops the interface (for example, with Stop), then restarts the interface, the connected source terminal must transition low-to-high again.
  • Stop Interface—Under normal conditions, the interface is stopped when the last session is stopped (or cleared). In other words, the interface communicates as long as at least one session is in use.

    If your application calls Stop with a scope of Interface Only, this immediately transitions the interface to state: Interface=Stopped for all sessions that are communicating with the interface. Use this feature with care, because it affects all sessions that use the interface and is not limited to the session passed to Stop.

  • Comm State Communicating—Occurs when the interface is integrated with the network.
  • Comm State Not Communicating—Occurs when the interface is no longer integrated with the network.

    If a significant number of errors occur on the network, the communication controller may make this transition to stop the interface on its own, regardless of whether you call Stop.