Beckhoff Library creation
To create your own release / licensed version of the Beckhoff Slave SampleCode for Sitara usage you have to follow these steps.
Prerequisites
To create your licensed library we recommend the usage of a Linux Development host or at least WSL with e.g. Ubuntu image. Tools required on development host:
- cmake (Version 3.20 or later)
- dos2unix utility
- patch utility
- bash utility
- unzip utility
For FreeRTOS
- Code Composer Studio (currently 12.4 or later)
- TI CLang (2.1.3 LTS)
- Industrial communications SDK for your MCU (Ind Comms SDK 9.00.00.01 or later)
- SysConfig 1.17
For FreeRTOS/Jacinto (AM65)
- Code Composer Studio (currently 12.1 or later)
- TI CLang (1.3.0 LTS)
- CoreSDK for your MCU (SDK 8.2.0.05 or later)
For Linux
- gcc 10
- arago SDK (8.6.x or later)
BuildSteps
- Obtain Slave Sample Code from ETG/Beckhoff (Vendor ID and ETG membership required, free of charge in that case) Current version support: 5i13
- Unzip the V5i13 package
- Copy SlaveFiles.zip from that package to your development host
- Change dir to ind comms sdk folder (e.g. ind_comms_sdk_am243x_09_00_00_01/source/industrial_comms/ethercat_slave/stack/patch/)
- Unzip SlaveFiles.zip to SlaveFiles subfolder
Use Code Composer contained gmake to build full version library
~/ti/ccs1240/ccs/utils/bin/gmake -f makefile.custom-ssc ssc
- The full version library resides in your industrial communications SDK folder hereafter
Changes on Bechoff SSC definitions
The Beckhoff SSC library is parametrized using defines. These defines are located in the ecat_def.h file. Apply the patch and if there is any define to set differently, modify it and then build the library again. For example, the default MAX_MBX_SIZE is set to 0x0400 but it is possible to adjust it manually.