Robotics & Autonomous Systems
ROS 2, humanoid robots, drones and autonomous vehicle systems.
ChunkHeader
Chunks are the transport capsules in iceoryx. They store data from a publisher as payload and are sent to one or more subscriber. Furthermore, there is some meta information which is stored alongside the payload, e.g. th
Read article →Service Discovery
Service discovery over IPC channel e.g. message queue or UNIX domain socket is not performant since larger data is transferred, which can lead to transmission of several frames. If lots of services are discovered at high
Read article →Logging and error handling
Logging is performed by the Iceoryx internal logger. The logger is used internally to record errors and general system runtime information. It can also be used by the user in application code for the same purpose.
Read article →Listener
The Listener is besides the WaitSet one of the building blocks to realize a push approach to detect and react to certain events. The Listener offers the user the ability to attach objects with a corresponding event and c
Read article →Lockfree Queue
We explain some details of the lockfree queue in order to provide an intuition for the way the lockfree queue works. This could serve as a basis for a formal proof later if desired.
Read article →Relocatable and Relative Pointers
When memory is shared between applications and each application maps the shared memory to a different starting address in its own address space, raw pointers cannot be used anymore. This is due to the fact that a pointer
Read article →Request/Response Communication
Beside the publishsubscribe messaging pattern initially supported by iceoryx, the requestresponse pattern is also widely used in the field where iceoryx is headed. Since we aim for a good integration with ROS 2, this is
Read article →Goals and nongoals
Goalsgoals NonGoalsnongoals User personasuserpersonas
Read article →Shared memory communication
When a process in a POSIX system starts it is given its own virtual address space.
Read article →FAQ
In this document are tips and hints documented which can help for troubleshooting on RouDi.
Read article →Configuration guide
When building iceoryxposh, there are several configuration options set by default. These options adjust the limits of Publisher and Subscriber Ports for resource management. These limits are used to create management str
Read article →Installation guide for contributors
While developing on iceoryx, you may want to know if your changes will break existing functionality or if your newly written tests will pass. For that purpose, we generate CMake targets that execute the tests. First, we
Read article →Architecture
This article provides an overview of the Eclipse iceoryx architecture and explains the rationale for it.
Read article →Best practice for testing
This is a guide on how to write tests for iceoryx. It intends to cover the most common cases which will probably apply to 99% of tests. This shall not encourage to be more royalist than the king and common sense shall be
Read article →How optional and error values are returned in iceoryx
Many parts of the iceoryx C++ API follow a functional programming approach and allow the user to specify functions which handle the possible cases, e.g. what should happen when data is received.
Read article →QoS policies
Unlike other middlewares, e.g. DDS used in ROS 2https://docs.ros.org/en/galactic/Concepts/AboutQualityofServiceSettings.html, iceoryx keeps things simple and offers basic Quality of Service QoS settings. The QoS settings
Read article →Installation
All iceoryx libraries are deployed as independent CMake packages. Posh is using functions from hoofs and is depending on it. You are able to build posh and hoofs and integrate them into existing CMake projects.
Read article →Overview
This document covers the core functionality of Eclipse iceoryx and is intended to provide a quick introduction to setting up iceoryx applications.
Read article →What is Eclipse iceoryx?
The technology behind Eclipse iceoryx originated in the automotive domain. With the introduction of videobased driver assistance, the amount of data to be exchanged between different threads of execution increased to GBy
Read article →Welcome to iceoryx.io
Eclipse iceoryx™ is an interprocesscommunication middleware that enables virtually limitless data transmissions at constant time.
Read article →iceoryx vx.x.x
Full Changeloghttps://github.com/eclipseiceoryx/iceoryx/compare/vx.x.x...vx.x.x
Read article →iceoryx v1.0.0
Full Changeloghttps://github.com/eclipseiceoryx/iceoryx/compare/v0.90.7...v1.0.0
Read article →iceoryx v.1.0.1
Full Changeloghttps://github.com/eclipseiceoryx/iceoryx/compare/v1.0.0...v1.0.1
Read article →iceoryx v.1.0.2
Full Changeloghttps://github.com/eclipseiceoryx/iceoryx/compare/v1.0.1...v1.0.2
Read article →