4.14. Xenomai

The system must be setup first the same way as for EC-Master for Linux, especially installation of the atemsys module and optimized Link Layer usage preparation.

See also

Chapter Linux

The binaries are built using the following versions:

  • armv6-vfp-eabihf:
    • Xenomai 2.6.3, tested on Linux Kernel 3.8.13-xenomai-2.6.4

  • x64:
    • Xenomai 3.0.2, tested on Linux Kernel 3.18.20 (Cobalt)

  • x86:
    • Xenomai, tested on Linux Kernel 3.5.7

    • Xenomai 3.0.2, tested on Linux Kernel 3.18.20 (Cobalt) and 3.10.32-rt31 (Mercury)

4.14.1. Setting up and running EcMasterDemo

  1. Prepare system

    Prepare the system to run EcMasterDemo on Linux as described in chapter Linux

  2. Compile EcMasterDemo

    As a starting point there is the Eclipse project for EcMasterDemo for Xenomai located at Workspace/Xenomai/EcMasterDemo. Ensure OPERATING_SYSTEM, ARCH, CFLAGS, LDFLAGS, LD_LIBRARY_PATH are set accordingly (export ARCH=x86, …) when compiling using Eclipse!

  3. Run using GDB

    Provide search path for Xenomai libraries and prevent GDB to stop execution on SIGXCPU:

    export LD_LIBRARY_PATH=../../Bin/Xenomai/x86:/usr/xenomai/lib:.
    gdb --args ./EcMasterDemo -i8254x 2 1 -f eni.xml -v 3
    (gdb) handle SIGXCPU nostop noprint nopass
    (gdb) run

4.14.2. OS compiler settings

Besides the general settings from Compiling the EcMasterDemo the following settings are necessary to build the example application for Xenomai.

Extra include paths
Extra source paths
Extra library paths to the main EtherCAT components
Extra libraries (in this order)
  • Xenomai 2:

AtemRasSrv EcMaster pthread dl rt native xenomai
  • Xenomai 3:

AtemRasSrv EcMaster pthread dl rt

xeno-config --cflags and xeno-config --ldflags of the Xenomai installation return the needed CFLAGS and LDFLAGS. If further information is needed, please refer to http://xenomai.org/ .