Primary EtherCAT Network Interface (NIC) name. This is the NIC connected to your EtherCAT nodes.
- Linux
- Required. Use the network interface name (for example, eth0 or enp2s0). Run ip link to list the interfaces on your system.
- Windows/INtime
- Optional. Use the INtime HPE device name (for example, ie1g0), not the Windows adapter name. The NIC must be supported by an INtime High Performance Ethernet (HPE) driver; see the Tenasys supported NIC list. The name is an HPE driver family plus a zero-based unit number: ie100m (Intel 100 Mbps), ie1g (Intel 1 Gbps), ie1ge (Intel 82575/82576/82580), ie25g (Intel 2.5 Gbps), rtl100m (Realtek 100 Mbps), rtl1g (Realtek 1 Gbps). So the first Intel gigabit NIC assigned to the INtime node is ie1g0 and the second is ie1g1. Use the INtime Device Manager to see which NICs are assigned to the INtime node and which driver each one uses.
When empty (the default), RMPNetwork probes the first unit of the most common driver families in a fixed order (ie1g0, rtl1g0, rtl100m0, ie100m0, ie25g0) and uses the first one that opens. This works well when exactly one NIC is assigned to the INtime node.
Set NicPrimary when:
- More than one NIC is assigned to the INtime node, so probing could pick the wrong one.
- The EtherCAT NIC is not the first unit of its driver family (for example, ie1g1). Probing only ever tries unit 0, so such a NIC can only be selected with this parameter.
- The NIC uses a driver that is not in the probe list at all (for example, ie1ge). Such a NIC can only be selected with this parameter.
- You want startup to fail immediately and clearly if the expected NIC is missing, instead of silently running on whichever NIC probing finds.
When set, only the specified device is tried. If it cannot be opened, network startup fails with RSINetworkStartError::RSINetworkStartErrorNIC_SPECIFIED_NOT_FOUND and the network log reports the failed device and INtime HPE status.
- Note
- On Windows/INtime, this value is passed to RMPNetwork when the MotionController starts it. If RMPNetwork is already running, a changed value takes effect only after RMPNetwork restarts (for example, MotionController::Shutdown followed by Create).
- Examples
- config.h.
Definition at line 1019 of file rsi.h.