1.2. Frequently Asked Questions for Sitara Industrial

1.2.1. General Development Questions

1.2.1.1. Processor SDK Training Series

The Processor SDK training series is available at: https://training.ti.com/processor-sdk-training-series In particular Sections 1.1 through 1.4 provide a good high level overview of the RTOS sections.

1.2.1.2. PRU-ICSS Industrial Overview

An overview of the PRU-ICSS Industrial Software and Processor SDK is available at #. PRU-ICSS Industrial Software : https://software-dl.ti.com/processor-industrial-sw/esd/docs/indsw/index.html #. Processor SDK RTOS: https://software-dl.ti.com/processor-sdk-rtos/esd/docs/latest/rtos/index.html

1.2.1.4. PRU-ICSS/PRU_ICSSG migration guide

Information on migrating AM335x applications to AM57x is available at: https://www.ti.com/lit/an/spracj8/spracj8.pdf

1.2.2. Industrial Communications Protocol

1.2.2.1. What EVMS Support Industrial Protocols

EtherCAT slave, Profinet RT/IRT Slave, ProfiBus DP Slave, Ethernet/IP adapter, HSR, PRP, Sercos, for the AMIC110, AM335x ICEv2, AM437x IDK, AM57x IDK and AM65x IDK. Please refer to the release notes at PRU-ICSS Industrial software for Sitara™ Processors at https://www.ti.com/tool/PRU-ICSS-INDUSTRIAL-SW.

1.2.2.2. Where to find additional information on TI’s Profinet solutions on Sitara processors

There is a design guide for PROFINET® IRT which is available at https://www.ti.com/tool/TIDEP0029 that discusses the architecture and implementation of the Sitara PROFINET® solutions. Additionally there is a white paper for PROFINET® on TI’s Sitara ™ processors that is available on https://www.ti.com/tool/TIDEP0008. The Industrial SDK Profinet example has a limited configurability that provides only a limited implementation of the third party stack. To use the full feature set, it is necessary to purchase the stack and SNMP stack from our third party stack partners. Note that the HCC Embedded SNMP stack library in the Industrial SDK is limited to 1000 SNMP accesses – this might be OK for evaluation (and even certification), but the customer has to purchase the SNMP stack for production. PROFINET stack – TMG. The contact for TMG is: Klaus-Peter Willems (willems@tmgte.de) and at https://www.hcc-embedded.com/embedded-snmp SNMP stack – HCC Embedded: The contact at HCC Embedded is sales@hcc-embedded.com

1.2.2.3. Where to find information on TI’s High-availability Seamless Redundancy (HSR) Ethernet solutions on TI Sitara Processors

There is a High-availability Seamless Redundancy (HSR) Ethernet for Substation Automation Reference Design that is available at https://www.ti.com/tool/TIDEP0053 The ICSS HSR PRP Developer Guide is available at https://processors.wiki.ti.com/index.php/ICSS_HSR_PRP_Developer_Guide The TI Training presentation IEC 62439-3 HSR/PRP Implementation on Sitara is available at https://training.ti.com/iec-62439-3-hsrprp-implementation-sitara%E2%84%A2-processors-using-pru-icss

1.2.2.4. Where to find information on TI’s Parallel Redundancy Protocol (PRP) Ethernet solutions on TI Sitara Processors

There is a Parallel Redundancy Protocol (PRP) Ethernet Reference Design for Substation Automation that is available at https://www.ti.com/tool/tidep0054 The ICSS HSR PRP Developer Guide is available at https://processors.wiki.ti.com/index.php/ICSS_HSR_PRP_Developer_Guide The TI Training presentation IEC 62439-3 HSR/PRP Implementation on Sitara is available at https://training.ti.com/iec-62439-3-hsrprp-implementation-sitara%E2%84%A2-processors-using-pru-icss

1.2.2.5. Where to find information on TI’s Packet Processing Engine for IEC61850 GOOSE Forwarding on TI Sitara Processors

There is a Packet Processing Engine Reference Design for IEC61850 GOOSE Forwarding that is available at https://www.ti.com/tool/tidep0074

1.2.2.6. Where to find information on TI’s Multi-Protocol Industrial Ethernet Detection w/PRU-ICSS solutions on TI Sitara Processors

There is a Multi-Protocol Industrial Ethernet Detection w/PRU-ICSS for Industrial Automation Reference Design that is available at https://www.ti.com/tool/TIDEP0032

1.2.2.7. Where to find information on Fast Startup for Industrial Ethernet Applications on TI Sitara Processors

There is a Fast Startup Reference Design For Industrial Ethernet Applications With AM335x Processors that is available at https://www.ti.com/tool/TIDEP0049

1.2.2.8. Where to find additional information on TI’s EtherCAT Master / Slave Solutions on Sitara processors

The EtherCAT Technology Group (ETG) recommends membership for parties implementing EtherCAT in a machine or machine line. For additional information about EtherCAT and ETG membership, see the following links: • EtherCAT FAQs: https://www.ethercat.org/en/faq.html • EtherCAT Technology Group site: https://www.ethercat.org

EtherCAT Slave: There is a TI EtherCAT design guide for AM335x EtherCAT Communications Development Platform at https://www.ti.com/tool/TIDEP0001, a design guide for AM437x Single Chip Drive for Industrial Communications and Motor Control at https://www.ti.com/tool/TIDEP0025. These contain an overview of TI’s Sitara EtherCAT solutions. Additional information and example project is included in the industrial Software Development Kit (see https://software-dl.ti.com/processor-industrial-sw/esd/docs/indsw/EtherCAT_Slave/EtherCAT_Slave.html). The Industrial SDK EtherCAT example has a limited configurability and exposes only limited implementation of the third party stack. To use the full feature set, it is necessary to purchase the Beckoff IP stack from our third party stack partner. The Industrial SDK EtherCAT slave implementation is integrated with EtherCAT Slave Stack Code (SSC) ET9300. A limited feature version is included as an EtherCAT example. A full featured EtherCAT Industrial example uses Patches for the Beckhoff Slave Stack Code (SSC 5.12) that enable the SDK to build a full featured EtherCAT application which can be customized as described in the PRU ICSS EtherCAT Slave User Guide The full stack code is available for ETG members from the ETG website Slave Stack Code (SSC) ET9300.

Documentation on ET9300 is available at https://download.beckhoff.com/download/document/io/ethercat-development-products/an_et9300_v1i7.pdf. This description is applicable for the TI EtherCAT Slave Controller since any differences in hardware platforms are abstracted by the stack HAL layer. For additional questions and support on SSC5.12 and ET9300 customers should use the EtherCAT ETG forums.

In addition to Beckoff the EtherCAT stack is also available from Stack also available from Port - Please contact Christian Bornschein cb@port.de ESD - Please contact Dirk Flege sales@esd.eu EtherCAT Master: There is a TI EtherCAT master design guide for AM335x using SYSBIOS at https://www.ti.com/tool/TIDEP0043. This TI design uses Acontis EC-Master CPSW drivers and stack. Acontis - Please contact Stefan Zintgraf s.zintgraf@acontis.com

1.2.2.9. Where to find additional information on TI’s Sitara processor EtherCAT Slave Implementation

This information is most relevant for customers porting custom stack implementation to TI EtherCAT slave Processor and for stack providers. The details on the Sitara EtherCAT implementation and APIs are available at, processors.wiki.ti.com/index.php . The EtherCAT Industrial application uses Patches for Slave Stack Code (presently using SSC 5.12) that enable the SDK to build a full featured EtherCAT application which can be customized as described in the PRU ICSS EtherCAT Slave User Guide

1.2.2.10. Are there other EtherCAT stack partners for Sitara devices

There are other stack partners who has ported their stack to TI EtherCAT Slave Controller whom customers can contact for support and customization. The following are 2 suppliers for customers looking for dedicated support:

ESD electronics : https://esd.eu/sites/default/files/manuals/ethercat_slavestack_datasheet_en_1.pdf

KPA (Konig PA) : https://koenig-pa.de/pdf/KPA_EtherCAT_Slave_Stack_EN_20181017.pdf

1.2.2.11. EtherCAT slave DDR-less on AMIC110

For a video on how to build an run EtherCAT slave DDR-less demo on AMIC110 please check this video: https://training.ti.com/amic110-ddrless-ethercat

1.2.2.12. Where to find additional information on TI’s Sercos-III solutions on Sitara processors?

There is a TI Sercos-III design guide for AM335x Sercos III Communications Development Platform at https://www.ti.com/tool/TIDEP0010 and a AM437x Sercos III Slave For AM437x Communication Development Platform Reference Design at https://www.ti.com/tool/tidep0039 which contain an overview of TI’s Sitara Sercos-III solutions. Sercos-III is one of the technologies that is supported directly by the stack partner, Cannon Automata. The solution is based on the industrial SDK. The link at the stack partner is: http://www.cannon-automata.com/index.php?ti_sitara_1_en. A Sercos III limited evaluation binary for TMDSICE3359 ICEv2 EVM is available via Cannon-Automata. The Cannon-Automata contact is Christoph Melzer chmelzer@automata.de

1.2.2.13. Where to find additional information on TI’s EthernetIP solutions on Sitara processors

There is a TI ICSS EIP Adapter Developer that is available at Guide at https://processors.wiki.ti.com/index.php/ICSS_EIP_Adapter_Developer_Guide. In addition there is a TI Ethernet IP design Ethernet/IP Communications Development Platform and a white paper EthernetIP on TI Sitara Processors is available at https://www.ti.com/tool/TIDEP0003 that provides an overview of TI’s Sitara Ethernet IP solutions.

1.2.2.14. When trying to use Industrial SDK ethernetip_adapter example, the code can only be used for one hour only. Why? What is required to get the full version?

The Industrial SDK Ethernet/IP example has a limited configurability and exposes only limited implementation of the third party stack. To use the full feature set, it is necessary to purchase the Ethernet IP stack from one of our third party stack partner TMG. The contact for TMG is: Mr. Willems, willems@tmgte.de.

1.2.2.15. Where to find additional information on TI’s PROFIBUS solutions on Sitara processors?

There is a white paper on TI’s PROFIBUS solutions that is available at: PROFIBUS on Sitara Processors. The TI Design can be found at TIDEP0002 https://www.ti.com/tool/TIDEP0002. An example Profibus slave project is contained in the Industrial SDK. This example project uses a example TMG stack library has limited functionality. The Slave customer IDENT number is fixed The master supports only up to 3 slaves. To obtain the full featured Profibus implementation please contact Mr. Willems, willems@tmgte.de at TMG. Website: http://www.tmgte.de/.

1.2.2.16. Looking for an industrial Ethernet slave design which supports several industrial ethernet protocols. Where to find additional information on multi- protocol industrial ethernet solutions for Sitara processors?

There is a multiprotocol TI design guide Multi-Protocol Industrial Ethernet Detection w/PRU-ICSS for Industrial Automation Reference Design at https://www.ti.com/tool/TIDEP0032. The TIDEP0032 shows how to use PRU-ICSS to detect the type of industrial Ethernet by analyzing the frame header.

1.2.2.17. Can an ICSS support more than one Industrial Ethernet slave at the same time?

This is dependent upon the protocol architecture and physical configuration. The TI Examples for EtherCAT, Profinet IRT, and the Ethernet/IP Adapter are used in a linear or loop configuration. In this configuration two ports (one on each PRU) are used. One port is used to provide upstream interface to the network master and one port is used to connect to the downstream slaves.

1.2.2.18. In developing a multi-protocol industrial Ethernet slave, which slave industrial Ethernet interfaces can run without using an ICSS?

We recommend when implementing a multi-protocol slave device to use one of the existing designs that are based on the Programmable Real-time Unit - Industrial Communications Engine ( PRU-ICSS). These implementations are provided in the PRU-ICSS-INDUSTRIAL-SW and/or are available from our third party partners. The PRU-ICSS offloads the ARM from cyclic tasks. This reduces the load and real-time requirements on the ARM side while permitting the Sitara to demonstrate best in class industrial communications performance. Running industrial Ethernet over a standard Ethernet MAC depends on the customer requirements as well. Any standard Ethernet MAC support “store-and-forward” Ethernet frame handling only – this means that first the complete Ethernet frame has to be received before any forwarding and/or processing decision can be done by the industrial Ethernet stack. There are classes of PROFINET and EtherNet/IP that allow using standard Ethernet MAC with the store-and-forward mechanism. EtherCAT slave, Sercos III and PROFINET IRT require PRU-ICSS support.

1.2.2.20. How many PRU cores are required for running EtherCAT slave in AM335x/AM437x devices?

TI provides firmware for some Industrial communication protocols, such as EtherCAT slave, EtherNet/IP, Profibus and Profinet RT/IRT, as part of AM335x/AM437x PRU-ICSS-INDUSTRIAL-SW package. If users want to use TI’s EtherCAT slave firmware, then, one ICSS (2-PRU cores) is required.

1.2.2.21. Can we use the MII2 (from the CPSW) as the MAC for industrial Ethernet?

The CPSW interface can be used to support a few Industrial Ethernet cases. The CPSW can be used to support an EtherCAT master. This implementation is available from our third party partners, Acontis Technologies http://www.acontis.com/eng/index.php and 3S-Smart Software Solutions https://www.codesys.com/products.html.

All of the Industrial protocols slave that are provided in PRU-ICSS Industrial Software for Sitara(TM) Processors and SYS/BIOS Industrial Software Development Kit (SDK) for Sitara™ Processors use the PRU based Ethernet configuration. The PRU-ICSS Ethernet with the real time PRU processing capabilities are required for Profinet RT/IRT (conformance class B/C), Sercos III, EtherNet/IP, PowerLink, EtherCAT slave. Although not supported in the Industrial software libraries it is possible to use the CPSW interface to support Profinet RT (conformance class A) and EtherNet /IP (with some constraints)

1.2.2.22. Can we use any AM335x to support EtherCAT slave

Both of these protocols specifically require an AM3357 or AM3359 device.

1.2.2.24. Is there an example that demonstrates a standard Ethernet switch?

The instructions for this are available here. Additionally, Networking examples are present in the Processor SDK that supports the PRU-ICSS Industrial software

1.2.2.25. How to test a Profinet system?

In the PRU-ICSS Profinet Slave package there is a document that describes how to test a Profinet slave. The document is located at “SDK installation Directory”\sdk\protocols\profinet_slave\Docs\Molex-TI-AM335x-devkit-How to get connected using STEP7-CPU300.pdf

1.2.2.26. How are the MAC address set for the PRU-ICSS (Since there is no EMAC present in PRU-ICSS)

Currently it reads the MAC addresses available in the SOC E-fuse. In the case of the AM437x the two entries represent the first and last MAC addresses. For AM57x and AM65x, the reading of MAC address is from board EEPROM and not E-fuse.

1.2.2.27. Can we access PRU firmware sources for Industrial Ethernet protocols?

No, PRU-ICSS-INDUSTRIAL-SW package doesn’t provide source code for PRU Industrial protocols firmware due to protocols certification However the TI Design https://www.ti.com/tool/TIDEP0061 provides a Simple Open Real-Time Ethernet (SORTE) protocol that is implemented in PRU firmware that will be available in source code as part of the Processor SDK shortly.

1.2.2.28. Ethernet PHY Configuration Using MDIO for Industrial Applications

Refer to this `document <https://www.ti.com/lit/an/spracc8/spracc8.pdf>__ for configuration Ethernet PHY using MDIO for Industrial Applications

1.2.2.29. Can we use PHY for EtherCAT which does not provide high speed output indication?

Yes, Beckhoff provides an excellent Phy selection guide to assist in Phy selection and configuration. https://download.beckhoff.com/download/Document/io/ethercat-development-products/an_phy_selection_guidev2.3.pdf . This document also specifies the LED display requirements for Ethernet phy signals. When the PHY does not have LED_LINK/LED_SPEED signal, the “pr1_mii0_rxlink” and “pr1_mii1_rxlink” signals can be left floating. However, in this case, a program modification is required. In the file {IA_SDK_HOME}\protocols\ethercat_slave\ecat_appl\EcatStack\tiescbsp.c in the function bsp_init, before calling bsp_pruss_mdio_init

Set mdioParamsInit.enhancedlink_enable = TIESC_MDIO_RX_LINK_DISABLE; //This forces MDIO h/w state to a m/c based link detection

1.2.2.30. How to upgrade EtherCAT slave application using FoE?

Users can use TwinCAT for online EtherCAT slave application upgrade. Additional details at: PRU ICSS EtherCAT Slave User Guide Users need to keep in mind “app” need to be renamed to “ECATFW__”. FoE upgrades the “app” in Flash memory.

1.2.3. General Topics

1.2.3.1. How to get notified when there is a software update

The PRU-ICSS-INDUSTRIAL-SW website https://www.ti.com/tool/PRU-ICSS-INDUSTRIAL-SW Alert Me buttons enable a request that an notification is sent to you when there is an update.

1.2.3.2. Where to find the PRU-ICSS Frequently Asked Questions

The PRU-ICSS FAQ site is located at: PRU-ICSS FAQs

1.2.3.2.2. UART messages were working with my IDK board but suddenly I am not getting any message, how to fix it?

Please first check if your USB is correctly connected and your serial console terminal application (for example, TeraTerm, minicom, and HyperTerminal) is correctly configured. If these are OK, and you still don’t see any output on your console please disconnect your port (console application) switch on your board and reconnect the port.

1.2.3.2.3. Is it possible to use FIQs Interrupts with AM335x?

No, FIQs are not available in AM335x. Users can use Hwis to create their ISRs. Also users can create High priority Task or Swi.

1.2.3.2.4. The PRU-ICSS Industrial AM3359 examples fails on ICE_AM3359 EVM with no output in UART terminal

When building projects with ICE_AM3359[CortexA] device, link command file AM335x.lds added by CCS. This needs to be removed. It can be removed from Properties->CCS General->Linker command file under the Main tab.