/
ECS SimpleConfig Example

ECS SimpleConfig Example

1 Example project

The location for the ECS SimepleConfig Example is in our Knowledge Base

KB → Software → LFW Host Examples → EtherCAT Slave

For netX90:

2 ECS Sources

Take the netXStudion to open the projcet. The ECS Sources in the ECS SimepleConfig Example are in the folder:

netXStudio_ECSV5_simpleConfig_V2.1.0.0\netX 90 - EtherCAT Slave - simpleConfig V2.1.0.0\Components\cifXApplicationDemoECS\Sources

3 Configuration packet

The ECS Configuration packet is in the file AppECS_DemoApplicationFuction.c

ECSConfigPacket.c

4 Values from ESI file

DeviceInfo values:

#define ECS_PRODUCTCODE_NXEB51_FEATURES                               0x00000038

#define ECS_SECONDARY_VENDORID_HILSCHER                               0xE0000044

#define ECS_REVISIONNUMBER_CIFXMODIFIERMASK                           0x00080004

#define DEV_GROUP_TYPE_INFO                                           "netX"

#define DEV_TYPE_INFO                                                 "NETX ECS Host Example"

#define DEV_NAME_INFO                                                 "NETX ECS Host Example"

need to be same like in ESI file:

Process Data Values:

Choose the number of Input and Output Bytes and tell this the stack in the configuration packet with

  ptConfigReq->tData.tBasicCfg.ulProcessDataOutputSize = sizeof(APP_PROCESS_DATA_INPUT_T); /**< Process Data Output Size from master view */

  ptConfigReq->tData.tBasicCfg.ulProcessDataInputSize = sizeof(APP_PROCESS_DATA_OUTPUT_T); /**< Process Data Input Size from master view */


Change the number of Bytes for RxPdo (Output) and TxPdo (Input) in the ESI file, like in the configuration packet


<RxPdo Sm="2">

          <Index>#x1600</Index>

          <Name>1. RxPDO</Name>

          <Entry>

            <Index>#x2000</Index>

            <SubIndex>1</SubIndex>

            <BitLen>8</BitLen>

            <Name>1 Byte Out (0)</Name>

            <DataType>BYTE</DataType>

          </Entry>

          <Entry>

            <Index>#x2000</Index>

            <SubIndex>2</SubIndex>

            <BitLen>8</BitLen>

            <Name>1 Byte Out (1)</Name>

            <DataType>BYTE</DataType>

          </Entry>

          ........

<TxPdo Sm="3">

          <Index>#x1A00</Index>

          <Name>1. TxPDO</Name>

          <Entry>

            <Index>#x3000</Index>

            <SubIndex>1</SubIndex>

            <BitLen>8</BitLen>

            <Name>1 Byte In (0)</Name>

            <DataType>BYTE</DataType>

          </Entry>

          <Entry>

            <Index>#x3000</Index>

            <SubIndex>2</SubIndex>

            <BitLen>8</BitLen>

            <Name>1 Byte In (1)</Name>

            <DataType>BYTE</DataType>

          </Entry>

          ........


Example ESI file:

10 Byte Output

6 Byte Input

Hilscher NETX90 RE ECS V5.0.X.xml

5 Start Sequenz

  1. Config Stack
  2. Init Config
  3. Start
  4. Stack is in Init State

6 ECM Master

As soon as the ECS Stack is successfully configured and the “Start Communication Request” / “Bus On” is done, the EtherCAT Slave goes in Init State.

The EtherCAT Master now needs to bring the EtherCAT Slave from Init State to Operational State (OP).








Related content

EtherCAT Slave Examples
EtherCAT Slave Examples
Read with this
ECS CustomOD Example
More like this
netX 51 - EtherCAT Slave - Examples
netX 51 - EtherCAT Slave - Examples
Read with this
ECS SimpleConfig Example exercise
ECS SimpleConfig Example exercise
More like this
EtherCAT Slave V5.3.0.1
EtherCAT Slave V5.3.0.1
Read with this
ECS Custom Object 0x1008, 0x1009, 0x100A
ECS Custom Object 0x1008, 0x1009, 0x100A
More like this