4.6. Xenomai

The system must be setup first the same way as for EC-Simulator 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.6.1. Setting up and running EcSimulatorHilDemo

  1. Prepare system

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

  2. Compile EcSimulatorHilDemo

    As a starting point there is the Eclipse project for EcSimulatorHilDemo for Xenomai located at Workspace/Xenomai/EcSimulatorHilDemo. 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 ./EcSimulatorHilDemo -i8254x 1 0 -f exi.xml -v 3
    (gdb) handle SIGXCPU nostop noprint nopass
    (gdb) run

4.6.2. OS compiler settings

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:

AtesRasSrv EcSimulator pthread dl rt native xenomai
  • Xenomai 3:

AtesRasSrv EcSimulator 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/ .