Robotics & Autonomous Systems
ROS 2, humanoid robots, drones and autonomous vehicle systems.
iceoryx v2.0.0
Features: block publisher when subscriber queue full #615 extend chunk header for gateways and recompute #711 Basic Windows 10 support #33 Common puml file for common settings #865 Relocatable Pointers - Version 2.0 #926
Read article →iceoryx v2.0.1
Bugfixes: CMake warning: empty command-line option #1311 thanks to @clalancette iox-#743 Fixes to make docs exportable #1289 Don't exclude implementations of public classes in Doxygen #1293
Read article →iceoryx v2.0.2
Bugfixes: Double build issue in ROS2 build farm #1323
Read article →iceoryx v2.0.3
Bugfixes: Build error on certain versions of Windows/Visual Studio #1476 Fix FileLock leak when lock failed #1440 Fix INTERFACE_INCLUDE_DIRECTORIES in CMake #1481 m_originId in mepoo:ChunkHeader sometimes not set #1668 W
Read article →iceoryx v2.0.4
Features: Add the introspection to the ROS release #2099
Read article →iceoryx v2.0.6
Refactoring: Patch cpptoml to use cmake 3.16 #2011 Update github actions #2011 Remove warning in toml gateway config parser #2266 Fix warnings on macOS #2284
Read article →Iceoryx C Language binding
If you are looking for an example take a look at the icedelivery on c example.
Read article →Gateway to DDS Networks
A gateway for bridging between iceoryx systems and DDS networks. The gateway enables iceoryx systems running on separate hosts to communicate with each other.
Read article →DDS Gateway Examples
Here you can find examples how to use the dds gateway in a real system. The examples use docker to simulate separated hosts running iceoryx.
Read article →List of examples
Example · Description · Level · icehello · Sending data to another process · :star: · icedelivery · Sending and receiving data using C++ · :star: · icedelivery_in_c · Sending and receiving data using C · :star: · icedock
Read article →Listener (or how to use callbacks with iceoryx)
The Listener is thread-safe and can be used without restrictions. But be aware that all provided callbacks are executed concurrently in the background thread of the Listener. If you access structures inside this callback
Read article →Listener in C (or how to use callbacks with iceoryx)
The Listener is thread-safe and can be used without restrictions. But be aware that all provided callbacks are executed concurrently in the background thread of the Listener. If you access structures inside this callback
Read article →complexdata
To implement zero-copy data transfer we use a shared memory approach. This requires that every data structure needs to be entirely contained in the shared memory and must not internally use pointers or references. The co
Read article →ice_access_control
This example demonstrates how access rights can be applied to shared memory segments on Linux-based operating systems. It provides a custom RouDi, a radar and a display application.
Read article →icecrystal
This example shows you how to use the introspection for debugging purposes. With the introspection you can look into the machine room of RouDi. It shows live information about the memory usage and all registered processe
Read article →icedelivery
This example showcases a data transmission setup with zero-copy inter-process communication (IPC) on iceoryx. It provides publisher and subscriber applications. They come in two C++ API flavors (untyped and typed).
Read article →icedelivery in C
You can find a more detailed description of the C API in the iceoryx_binding_c README.md.
Read article →icediscovery
This example demonstrates how to search for specific services using iceoryx's ServiceDiscovery. It provides two applications - one offering different services and one searching for these making different search queries.
Read article →icediscovery in C
This example demonstrates how to search for specific services using iceoryx's service discovery. It provides two applications - one offering different services and one searching for those with different search queries. T
Read article →Use Iceoryx In A Docker Environment
Let's assume we are working on a system in which iox-roudi runs in a docker environment and it should orchestrate two applications which are running again in two different docker containers so that we end up with a syste
Read article →iceensemble
A common use case is that multiple sensors are sending data of the same type, e.g. LIDAR data, and a subscriber is interested in the data of all those sensors.
Read article →icehello
This example demonstrates a basic data transmission with zero-copy inter-process communication (IPC). It provides a publisher and a subscriber application.
Read article →iceoptions
This example demonstrates what kind of quality of service options can be configured on the publisher and subscriber side. The options can be used for the typed and untyped C++ API flavors as well as the C API.
Read article →iceperf
!!! note Since not all IPC mechanisms are supported on all platforms the IPC benchmark only runs fully on QNX and Linux. The iceoryx C or C++ API related benchmark is supported on all platforms.
Read article →