DDS

OpenSplice Tuner FAQ’s

Several common OpenSplice Tuner problems can be resolved by looking through the User Guide, which can be found here: OpenSplice v6 Guide (pdf | html) OpenSplice v7 Guide (pdf | html) When using the OpenSplice Tuner you may run into some of the following errors: Could not load JNI library error. Could not load JNI […]

OpenSplice Record and Replay FAQ’s

For more information on what the Record and Replay services are see this article. What storage types does OpenSplice Record and Replay support? The service records the data to storage xml files. These xml files can get quite large, and can be difficult to query and read. RnR Manager provides a Storage Editor that makes it […]

Networking and Durability Warnings and what they mean

Lack of privileges The following two types of warnings occur because the user which is running OpenSplice does not have the privileges to set the scheduling priority of the networking process and it’s threads to realtime. Description : sched_setscheduler failed with error 1 (Operation not permitted) for process ‘networking’ Description : pthread_create failed with SCHED_FIFO […]

Release Notes and Known Issues

OpenSplice Release Notes The release notes contain all the information about fixed bugs and changes in the different OpenSplice versions Fixed bugs and changes in OpenSplice 6.11.x Fixed bugs and changes in OpenSplice 6.10.x Fixed bugs and changes in OpenSplice 6.9.x Fixed bugs and changes in OpenSplice 6.8.x Fixed bugs and changes in OpenSplice 6.7.x […]

OpenSplice with MATLAB/Simulink/LabView

API guides MATLAB Demonstration Videos A number of demonstration videos have been created to walk you through the process of developing DDS applications with MATLAB. Installation of MATLAB components Startup OpenSplice Shapes Example Overview How to Process IDL Creating a Topic Block Creating a Reader Block Real-time Simulation Write a Tracking Circle Use Filter Expression […]

Tweaking durability service performance

About the durability service The durability service is one of the services that can be configured when deploying a federation. At most, one durability service can be configured per federation. However, since a system typically consists of multiple federations, multiple durability services may be deployed in a single system. The durability service has two main […]

Using OpenSplice DDS with Python

Do you want to model your DDS applications in Python? This article explains how to start using OpenSplice DDS with Python. OpenSplice DDS comes with a Python DCPS API that provides Python classes allowing you model your DDS application using Python. The Python DCPS API is a native Python binding that supports full DDS functionality. […]

Overview of DDS

This guide gives a quick and simple overview of the concepts you will meet when you use a Distributed Data Service (DDS) System. What is DDS? In today’s connected world data is everywhere.  Information is stored on computers and needs to quickly travel around the globe.  Consider a train system.  The trains travel on tracks […]

Controlling the DDSi Networking Service Ports

There may be cases where you need to know what ports the DDSi networking service uses. For example if you are using a firewall you will need to open these ports so communication can take place. This article explains how you can work out these values. In order for the participants in a domain to […]

Cannot see Tuner on CentOS using remove desktop

When using the remote desktop application xrdp there is sometimes a problem seeing the windows in Tuner. Changing the window size does not change anything either. This is due to a combination of the Java gui that Tuner uses and xrdp. To fix the problem the depth setting for xrdp needs to change.   edit […]

How can I connect to multiple DDS domains?

This article explains the steps you need to take to connect one application to multiple DDS domains using OpenSplice. Using DDS in multiple domains For two DDS applications to communicate with each other they need to join the same DDS domain. Occasionally your application may need to receive data from one domain and send it […]

Creating Topics in the Data Distribution Service (DDS)

Creating topics in the Data Distribution Service explores how to make a topic to allow you to send data around the system. The Data Distribution Service (DDS) sends data to the components that need it. Topics are the basic unit of information that the DDS system reads and writes. To allow data to flow around […]

Questions on how Shared Memory is Allocated

When a topic is written by a writer on a particular node, what is the data path to shared memory? Writer -> Writer Cache -> Publisher ->Publisher Cache-> Shared Memory A sample is written in some programming language (let’s say C++) and passed to its application Writer by invoking its write() call. The Writer allocates […]

Why OpenSplice does not allow QoS to change

There are a number of technical reasons that OpenSplice does not allow QoS changes even though the OMG specification does indicate that some should be allowed. This article covers this reasoning and why QoS changes can lead to inconsistencies if allowed. Difficulties The first difficulty is that the specification does not define whether an individual […]

Gathering OpenSplice statistics

When you are developing a DDS system you may want to gather OpenSplice statistics to help you tune the system. This article explains how to do this. Various statistics can be generated by OpenSplice. These will help you analyse and tune application behaviour while you are developing the system. By default statistics are not enabled. […]

How to use LogRotate to limit the size of OpenSplice log files

This article describes how to use LogRotate to limit the size of the OpenSplice log files. This will ensure that the files do not grow too large. The OpenSplice middleware can produce a number of different trace and log files which allow you to find out what is going on in the system. The exact […]

Setting up Microsoft Visual Studio to use ISOC++2 with OpenSplice DDS

This article explains how to set up Microsoft Visual Studio to build ISOC++2 OpenSplice DDS based applications. Setting up Microsoft Visual Studio to use ISOC++2 with OpenSplice DDS Setting up Microsoft Visual Studio to use ISOC++2 for OpenSplice DDS applications can seem complex. This article gives a step by step overview of the process. [cmtoc_table_of_contents] […]

Why might Sample Data not arrive?

Why might Sample Data not arrive? There are a couple of main reasons the sample data may not arrive and here are the causes, and solutions, to these problem The Configuration is not Strict Reliable Setting the Reliability Qos Policy to RELIABLE is not enough on its own to guarantee that a DataWriter delivers a […]

Metaconfig.xml and validating the Configuration File

The metaconfig.xml file was added in v6.7.2 of the product and is used to validate most of the configuration file during startup. This means that any obvious invalid configuration will stop the dds services from starting and feedback quickly to the user. Once the services start these will also individually check the configuration (which they […]