Open Real-Time Ethernet - ORTE v0.3.4 release includes RTEMS support

Pavel Pisa pisa at
Mon Nov 18 18:32:59 UTC 2013

Hello RTEMS developers,

I would like to announce that current version of ORTE communication
middleware runs on RTEMS.

The Open Real-Time Ethernet (ORTE) is an open source implementation
of the Real-Time Publish-Subscribe (RTPS) communication protocol
which is based on UDP. Main features of RTPS protocol are automatic
discovery of applications, support for redundancy and automatic
detection of message deadlines misses. The Real-Time Publish-Subscribe
protocol has been standardized as Data Distribution Services (DDS)
Interoperability Wire Protocol by OMG (see ).
ORTE project started before the protocol was standardized which is
a reason why ORTE does not fully comply with the latest protocol

RTPS is network protocol targeted to real-time communication area
which is build on the top of standard UDP stack. Since TCP/IP stack 
implementations is available for the most of operating systems
and RTPS protocol does not have any other special HW/SW requirements,
it can be easily ported to many HW/SW target platforms. Because
it uses only UDP protocol, it retains control of timing and reliability
(mainly when compared to TCP based solutions) and lightweight
implementation allows its combination with RT preemption and task

ORTE documenteation, presentations and resources can be found
on the project homepage

The ORTE advantages

  + broad range of supported platforms
     Linux, FreeBSD, Windows MinGW/Cygwin/ReactOS, Mac OS X, Android, Solaris
     sucesfull experimental testing on  PharLap, RTAI and Blackberry/QNX
  + Open-source implementation of the RTPS protocol
  + C language, based on POSIX
  + Self contained project with minimal external dependencies
  + IDL compiler to generate (de)serialization functions

Disadvantages and other facts

  - One of the first few implementations that supported standardization
    - actual version is not still updated to the final standard version
  +/- Uses custom API instead of the DDS API (another OMG standard)
    + The use is really simple and does not pull in TAO, CORBA
      or C++ dependencies
  +/- Publisher/subscriber matching is decentralized and each
    application builds its own network model which includes not only
    its own publishers and subscribers but even all other nodes/applications
    information. This requires quite some memory. I.e. 4 MB RAM is reasonable
    minimal size for full TCP/IP stack, buffers, network model
    and application

The orte-0.3.4-rtems.tar.gz archive provides ORTE sources preconfigured
for RTEMS build. BSP selection and "make" is all required to build
ORTE libraries for own applications and "orte_rtems_shell_example"
for interactive RTEMS shell testing.

BSP selection and build

   echo RTEMS_MAKEFILE_PATH=/opt/rtems{X}/{arch}-rtems{X}/{bsp} >


    echo RTEMS_MAKEFILE_PATH=/opt/rtems4.10/powerpc-rtems4.10/icecube \


Clone GIT sources, renaming Makefile.rules.rtems to Makefile.rules
and and config.omk preparation is required for RTEMS
build from GIT

  git clone git:// orte-orte

Best wishes,

               Pavel Pisa

e-mail: pisa at
fax: +420 224918646
tel: +420 224357223, +420 224355712

Department of Control Engineering,
Faculty of Electrical Engineering,
Czech Technical University in Prague
Karlovo namesti 13
121 35 Prague 2
Czech Republic


More information about the devel mailing list