Developer hintsΒΆ

The initial implementation is from ADLINK Advanced Robotics Platform Group. To integrate the latest Eclipse iceoryx C-API and support zero copy data transfer, contributions were made by Apex.AI. Further contributions and feedback from the community are very welcome, see Contributing to Eclipse Cyclone DDS.

The following is a list of useful tips:

  • To learn about the internal happenings of the Eclipse iceoryx service, there is a useful tool from iceoryx called iceoryx introspection:

    ~/iceoryx/build/iox-introspection-client --all
    
  • Cyclone DDS can be configured to show logging information from shared memory.

    • Setting Tracing::Category to shm shows the Cyclone DDS log related to shared memory, while SharedMemory::LogLevel decides which log level iceoryx shows:

    <?xml version="1.0" encoding="UTF-8" ?>
    <CycloneDDS xmlns="https://cdds.io/config"
                xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                xsi:schemaLocation="https://cdds.io/config https://raw.githubusercontent.com/eclipse-cyclonedds/cyclonedds/iceoryx/etc/cyclonedds.xsd">
        <Domain id="any">
            <Tracing>
                <Category>shm</Category>
                <OutputFile>stdout</OutputFile>
            </Tracing>
            <SharedMemory>
                <Enable>true</Enable>
                <LogLevel>info</LogLevel>
            </SharedMemory>
        </Domain>
    </CycloneDDS>