This chapter lists all functions that are used to configure the EtherNet/IP stack. These functions must be called within appl_setup() before goal_eipNew() was called. Otherwise these functions have no effect. Each configuration has a default value that will be applied if no other value was set.
goal_eipCfgVendorIdSet
Set the Vendor ID of this EtherNet/IP stack instance. The vendor ID is assigned by the ODVA.
Default Value: 1114
Parameter | Description |
---|---|
uint16_t vendorId | Vendor ID |
Table: goal_eipCfgVendorIdSet parameters
res = goal_eipCfgVendorIdSet(1114);
goal_eipCfgDeviceTypeSet
Set the Device Type of this EtherNet/IP stack instance. Valid values are defined by the CIP specification.
Default Value: 0x2B
Parameter | Description |
---|---|
uint16_t deviceType | Device Type |
Table: goal_eipCfgDeviceTypeSet parameters
res = goal_eipCfgDeviceTypeSet(0x2B);
goal_eipCfgProductCodeSet
Set the Product Code of this EtherNet/IP stack instance. This value is defined by the device vendor.
Default Value: 1
Parameter | Description |
---|---|
uint16_t productCode | Product Code |
Table: goal_eipCfgProductCodeSet parameters
res = goal_eipCfgProductCodeSet(0xABCD);
goal_eipCfgRevisionSet
Set the Revision of the EtherNet/IP stack instance. The revision consists of a major and a minor number. It represents changes in the firmware that affect the device’s behaviour.
Default Value: 1.1
Parameter | Description |
---|---|
uint8_t revMajor | major revision number |
uint8_t revMinor | minor revision number |
Table: goal_eipCfgRevisionSet parameters
res = goal_eipCfgRevisionSet(1, 3);
goal_eipCfgSerialNumSet
Set the Serial Number of the EtherNet/IP stack instance. This number is assigned by the vendor and should be unique for each device.
Default Value: 1
Parameter | Description |
---|---|
uint32_t serial | Serial Number |
Table: res = goal_eipCfgRevisionSet(1, 3);
res = goal_eipCfgSerialNumSet(12345678);
goal_eipCfgProductNameSet
Set the Product Name of the EtherNet/IP stack instance. This name is assigned by the vendor. Its maximum length is 32 characters.
Default Value: “EtherNet/IP Adapter”
Parameter | Description |
const char *strName | Product Name |
Table: goal_eipCfgProductNameSet parameters
res = goal_eipCfgProductNameSet("EtherNet/IP Adapter");
goal_eipCfgDomainNameSet
Set the default Domain Name of the EtherNet/IP stack instance. This name is used as the device’s domain name if no valid configuration was found. Its maximum length is 48 characters.
Default Value: “port.de”
Parameter | Description |
---|---|
const char *strName | default Domain Name |
Table: goal_eipCfgDomainNameSet parameters
res = goal_eipCfgDomainNameSet("example.org");
goal_eipCfgHostNameSet
Set the default Host Name of the EtherNet/IP stack instance. This name is used as the device’s host name if no valid configuration was found. Its maximum length is 64 characters.
Default Value: “eipdevice”
Parameter | Description |
---|---|
const char *strName | default Host Name |
Table: goal_eipCfgHostNameSet parameters
res = goal_eipCfgHostNameSet("example_device");
goal_eipCfgNumExplicitConSet
Set the maximum number of explicit Connections the device can handle at once.
Default Value: 6
Parameter | Description |
---|---|
uint16_t num | number of explicit connections |
Table: goal_eipCfgNumExplicitConSet parameters
res = goal_eipCfgNumExplicitConSet(10);
goal_eipCfgNumImplicitConSet
Set the maximum number of implicit Connections the device can handle at once.
Default Value: 6
Parameter | Description |
---|---|
uint16_t num | number of implicit connections |
Table: goal_eipCfgNumImplicitConSet parameters
res = goal_eipCfgNumImplicitConSet(10);
goal_eipCfgEthLinkCountersOn
Enable support for Ethernet Link attributes 4, 5, 12 and 13. The hardware must support the appropriate counters.
Default Value: GOAL_TRUE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgEthLinkCountersOn parameters
res = goal_eipCfgEthLinkCountersOn(GOAL_TRUE);
goal_eipCfgEthLinkControlOn
Enable support for Ethernet Link attribute 6. The hardware must support forced link speeds and duplex modes.
Default Value: GOAL_TRUE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgEthLinkControlOn parameters
res = goal_eipCfgEthLinkControlOn(GOAL_TRUE);
goal_eipCfgChangeEthAfterResetOn
A change of Ethernet link speeds or duplex modes requires a reset of the device. The hardware must support forced link speeds and duplex modes.
Default Value: GOAL_FALSE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgChangeEthAfterResetOn parameters
res = goal_eipCfgChangeEthAfterResetOn(GOAL_FALSE);
goal_eipCfgChangeIpAfterResetOn
A change of the IP address requires a reset of the device.
Default Value: GOAL_FALSE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgChangeIpAfterResetOn parameters
res = goal_eipCfgChangeIpAfterResetOn(GOAL_FALSE);
goal_eipCfgNumSessionsSet
Set the number of Encapsulation sessions the device can handle at once.
Default Value: 20
Parameter | Description |
---|---|
uint16_t num | number of sessions |
Table: goal_eipCfgNumSessionsSet parameters
res = goal_eipCfgNumSessionsSet(10);
goal_eipCfgTickSet
This function is deprecated and has no effect. It is kept for compatibility with older versions.
goal_eipCfgO2TRunIdleHeaderOn
Default Value: GOAL_TRUE
Enable the Run/Idle Header for consumed (Originator-to-Target) cyclic data.
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgO2TRunIdleHeaderOn parameters
res = goal_eipCfgO2TRunIdleHeaderOn(GOAL_TRUE);
goal_eipCfgT2ORunIdleHeaderOn
Enable the Run/Idle Header for produced (Target-to-Originator) cyclic data.
Default Value: GOAL_FALSE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgT2ORunIdleHeaderOn parameters
res = goal_eipCfgT2ORunIdleHeaderOn(GOAL_FALSE);
goal_eipCfgQoSOn
Enable support of the QoS object.
Default Value: GOAL_TRUE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgQoSOn parameters
res = goal_eipCfgQoSOn(GOAL_TRUE);
goal_eipCfgNumDelayedEncapMsgSet
Set the number of Encapsulation messages that can be delayed at the same time.
Default Value: 2
Parameter | Description |
---|---|
uint16_t num | number of messages |
Table: goal_eipCfgNumDelayedEncapMsgSet parameters
res = goal__eipCfgNumDelayedEncapMsgSet(2);
goal_eipCfgDhcpOn
Enable the DHCP client if it is supported by the platform.
Default Value: GOAL_FALSE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgDhcpOn parameters
res = goal_eipCfgDhcpOn(GOAL_TRUE);
goal_eipCfgDlrOn
Enable support of the DLR object. This feature requires the DLR stack and support of the hardware.
Default Value: GOAL_FALSE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgDlrOn parameters
res = goal_eipCfgDlrOn(GOAL_TRUE);
goal_eipCfgAcdOn
Enable support for Address Conflict Detection (ACD).
Default Value: GOAL_FALSE
Parameter | Description |
---|---|
GOAL_BOOL_T enable | enable or disable feature |
Table: goal_eipCfgAcdOn
res = goal_eipCfgAcdOn(GOAL_TRUE);
goal_eipCfgAcdConflictBehavior
Configure Behavior if Address Conflict Detection (ACD) detects an address conflict. There are three configurations possible, where DHCP is prioritized:
Transit into error state and do nothing: pass ipAddress = 0 and flgDhcpEnable = GOAL_FALSE,
Set fallback IP configuration: pass valid IP configuration and flgDhcpEnable = GOAL_FALSE,
Get IP per DHCP: pass flgDhcpEnable = GOAL_TRUE.
Default Value: flgDhcpEnable = GOAL_TRUE
Parameter | Description |
---|---|
uint32_t ipAddress | fallback IP address |
uint32_t subnetMask | fallback subnet mask |
uint32_t gateway | fallback gateway address |
GOAL_BOOL_T flgDhcpEnable | enable or disable DHCP |
Table: goal_eipCfgAcdConflictBehavior
uint32_t ipAddress = GOAL_NET_IPV4(192, 168, 0, 100); uint32_t subnetMask = GOAL_NET_IPV4(255, 255, 255, 0); uint32_t gateway = GOAL_NET_IPV4(192, 168, 0, 1); GOAL_BOOL_T flgDhcpEnable = GOAL_FALSE; res = goal_eipCfgAcdConflictBehavior(ipAddress, subnetMask, gateway, flgDhcpEnable);