Showing results for 
Search instead for 
Did you mean: 
Intel Support hours are Monday-Fridays, 8am-5pm PST, except Holidays. Thanks to our community members who provide support during our down time or before we get to your questions. We appreciate you!

Need Forum Guidance? Click here
Search our FPGA Knowledge Articles here.

EtherCAT Getting Started FAQ

EtherCAT Getting Started FAQ

Where can I get the EtherCAT protocol IP and reference design?

You can download the EtherCAT protocol IP and design from either Altera's or Softing's web site.

I've downloaded the EtherCAT protocol IP and reference design. What is the next step?

Please refer to the <ProjectRoot>/altera_ink_esc/GettingStartedEtherCATAcessIP.pdf document in the delivered IP. It provides a complete description of the reference design, compiling and debugging the firmware, programming the EtherCAT EEPROM, installing the TwinCAT PLC software and running the PLC program.

What versions of Quartus can I use?

The EtherCAT reference design was developed and tested with Quartus II software version 13.0. Any other version of Quartus may or may not work as expected, and no support is available for any other version of Quartus for this development kit.

What software and EtherCAT hardware do I need from Beckhoff or any other source to get started?

You can use The TwinCAT 3 PLC software available from Beckhoff. Download from TwinCAT 3 Download or any EtherCAT PLC.

What licenses do I need to compile and run?

Ensure that your Quartus license path (Tools -> License Setup) includes both Softing's and Beckhoff's license files. The required license files are provided in the delivered IP.

Softing's license file is in:


Beckhoff's is in:


In addition, you will need a NIOS II license to build the out-of-box design, which can be acquired from Altera. The NIOS II IP core can be used in a limited, unlicensed mode using Altera's Open Core Plus (OCP), which allows for unlimited usage as long as the device is connected to a licensed Quartus tool (i.e. tethered to a computer) or in a time-limited capability if untethered.

How do I get a permanent license (CPLD)?

Go to the Design for Multiple Industrial Ethernet Protocols web page for instructions on how to obtain a permanent license.

How do I know the design is working?

If the design is working properly without a PLC, the LEDs on the INK board will flash immediately after rebooting the INK, and LCD screen wil display



Follow the instructions in the <ProjectRoot>/altera_ink_esc/GettingStartedEtherCATAcessIP.pdf document, to determine if the design is working as expected with a PLC.

Note that the delivered IP core is set up with a 15 minute time-bomb license. You can run the demo application for 15 minutes without any license or authentication CPLD attached.

How do I know the CPLD authentication is working?

This following section describes IP authentication for short-term development and how to authenticate the IP beyond the 15 minute maximum operational time.

Security Chip

The Softing EtherCAT IP uses an Altera MAX II CPLD as a security chip to ensure that only authorized instantiations of the IP are allowed. However, to facilitate evaluation and development of the IP, a 15 minute evaluation period is integrated into the design, allowing the system to run without the security chip until the 15 minute window expires. Once this window expires, a power cycle of the INK will trigger a new 15 minute evaluation period. Once the 15 minute window expires and no CPLD is attached to the IP, the IP no longer communicates with the PLC or passes traffic through the Ethernet ports.

The delivered IP contains a temporary EtherCAT Vendor ID package for testing purposes. The value of this Vendor ID is 0xEEEEEEEE. You need to replace this temporary Vendor ID with your own to allow the Softing EtherCAT IP to run longer than the 15 minute window.

Here are the step you need to take:

  1. Contact your local Altera representative and request a prebuilt/preprogrammed daughter card for the INK board. The daughter card is built on an Altera MAX II development kit with the Softing security authentication programmed on it.
  2. Join the EtherCAT Technology Group and obtain a Vendor ID. Please visit the ETG web site or send an email to
  3. Request an EtherCAT Vendor ID from this page.
  4. After approval of the Vendor ID, the ID will appear on the above page in the table "Existing Vendor-IDs" (bottom right). There will be a button in this table right next to the Vendor ID, to request the vendor ID package. You will receive the Vendor ID package by email afterwards.
  5. You must then recompile the IP core with the Vendor ID package. Replace the encrypted VHDL source file <ProjectRoot>/hardware/ip_core/ethercat_esc30/ETHERCAT_VENDORID.VHD with your own. Then re-generate Qsys and re-synthesize.
  6. You will also have to edit the EtherCAT Slave Information (ESI) and Slave Information Interface (SII) files which the TwinCAT software uses to identify your device. The ESI is located in <ProjectRoot>/software/devicedescription/etheract/altera_ink_esc/Altera-INK-EtherCAT-Slave-TwinCAT2.xmland the SSI file is located in <ProjectRoot>/software/devicedescription/etheract/altera_ink_esc/Altera-INK-EtherCAT-Slave.xml In both files, you will find the Vendor ID and Name near the top. Edit each file to reflect your information.

With the daughter card attached to the INK board and the re-compiled IP with your Vendor ID, the system will run beyond the 15 minute window.

Details of this daughter board and its debug features can be found in the "CPLD Daughter Card" section that follows.

CPLD Daughter Card

The Softing EtherCAT IP has a built-in time limit that will allow it to run for a 15 minute evaluation period, but to run longer, a preprogrammed Altera CPLD must be connected to the Softing IP and the IP must be recompiled with your own Vendor ID. An Altera MAX II development kit containing a programmed CPLD is available from your Altera representatives.

This kit has the Softing security chip, but also some additional debug features to help you to confirm the authentication challenges and responses are correct. The next section describes those features.

The Altera MAX II development kit comes with pushbuttons and LEDs. These are listed in the following table with the corresponding features for the CPLD Security design.

Board LabelBrief NameColorDetails
led1Out of ResetRedIndicates the daughter card is out of reset. The system will come out of reset on its own, but it can be placed back into reset using a push button.
led2Clock TogglingRedThis led will pulse approximately twice a second and is an indicator the clock on the board is working.
led3Challenge ValidRedIndicates the Softing IP is sending a challenge request to the CPLD.
led4Response ValidRedIndicates the CPLD is sending a response to the Softing IP.
button1rst_system_n--If needed, the CPLD can be held in reset if this button is pressed. Generally, the system should not require a reset.
button2Insert Error--When this button is pressed and then released, internal logic then waits until the next authentication challenge is sent. When this occurs, the response is purposely corrupted forcing the Softing IP to attempt a challenge retry. This can be observed as second set of pulsing LED3 and LED4.
button3not used----
button4not used----

Procedure to Confirm Correct Authentication Exchange

After the 15 minute window has expired, the IP issues a new challenge to the CPLD approximately once a minute.

The normal challenge and response will cause LED3 to pulse briefly followed by LED4 pulsing briefly. LED3 indicates the Softing IP is issuing a challenge request and the LED4 indicates the CPLD is issuing a response. Each pulse lasts less than half a second. If the Softing IP detects a bad response, it will immediately issue another challenge request. If it continues getting bad responses it will repeat this sequence until the retry timeout occurs (four pulses) and then abort trying to authenticate.

So, by observing the number of LED pulses, you can determine if the challenge and response was correct (one pulse of each LED), or if the challenge response was bad (several pulses of the LEDs). To demonstrate this in steps:

  1. Begin with the INK / CPLD daughter card powered down.
  2. Power up the CPLD daughter card via the USB cable. The LED1 should be pulsing.
  3. Power up the INK by pressing the red "power" button while observing LED4.
  4. Count the number of LED4 pulses and compare that to the following table.
LED4 Pulses CountedStateDetails
0UnknownThis could indicate the daughter card is not connected correctly or some kind of connection issue.
1AuthorizedThis is the common, correct authorized state.
2Authorized with one errorThis indicates that one challenge was sent and the response was incorrect but a second challenge yielded a good response. This can happen as part of the Insert Error functionality (button2, above) or due to random noise on the connectors. The system is in an authorized state.
3 or greaterUnauthorizedThis indicates the CPLD is not programmed with the Softing security key. Contact your Altera representative to get the correct board. The system will continue to run for the 15 minute window.

Since the first challenge occurs very quickly after the INK powers up and the FPGA configures, it may be possible that noise on the FPGA I/O during this time may make counting either of the LED3 or LED4 pulses difficult. If this is the case, the best solution is to use the Insert Error feature by pressing button2 in between steps 2 and 3 above. When the INK is powered up, the first challenge will be given a bad response which will cause a second challenge to be issued. This makes it easier to differentiate a set of LED3/4 pulses due to challenge/response verses noise causing random looking pulses.

The challenge/response sequence (LED3/4) can be also observed after the 15 window. The exchange should happen periodically, approximately once every minute.

When I first programmed the design, it worked. After some time, it stopped working. What happened?

The EtherCAT reference design from Softing has a time limitation that allows the design to run for 15 minutes, then it stops functioning as expected. Please contact Softing for licensing information.

Version history
Last update:
‎06-26-2019 11:17 PM
Updated by: