DDS

Upgrading OpenSplice

If you are using an older version of OpenSplice DDS and want to upgrade to the latest version we provide some documentation to help you.

API/IDL Guides

When you begin development on OpenSplice DDS you will need to consult the API documentation. C++ and Java have the original DCPS API support (referred to as Classic) and the newer ISO C++ and Java 5 PSM APIs. The C++ and Java APIs will have been built with a specific ORB and a specific compiler […]

Future Airborne Capability Environment (FACE)

ZettaScale FACE™ Certified TSS Product for Both C++ and JAVA APIs Reduces Time, Cost and Risk for Avionics Systems Integration. The Future Airborne Capability Environment (FACE™) Consortium  is taking a leadership role in developing open standards for avionics systems of the future so helping to make military aviation computing operations more robust, interoperable, portable and secure. ZettaScale is […]

Getting Started with OpenSplice

Getting Started Guide If you are new to OpenSplice DDS then the OpenSplice DDS Getting Started Guide (v6 pdf | html) (v7 pdf | html) is a good place to start. The Getting Started Guide provides: OpenSplice Launcher The OpenSplice launcher is a tool that will allow you to configure OpenSplice and run the examples […]

DDS Tutorial

What is DDS? The Proven Data Connectivity Standard for the Industrial Internet of Things The OMG Data Distribution Service (DDS) is a middleware protocol and API standard for data-centric connectivity from the Object Management Group. It integrates the components of a system together, providing low-latency data connectivity, extreme reliability, and a scalable architecture that business […]

Deployment Guides for Configuration

Deployment Guide is the essential reference for configuring OpenSplice DDS. It also includes information on the various configuration elements and attributes available to configure OpenSplice.

DDSI configuration without multicast using unicast peers

When not using multicast, you must define your set of ‘peers’ as automatic discovery relies on multicast. So the ‘ddsi2’ section in the configuration should look like this; <DDSI2Service name=”ddsi2″> <General> <NetworkInterfaceAddress>AUTO</NetworkInterfaceAddress> <AllowMulticast>false</AllowMulticast> <EnableMulticastLoopback>false</EnableMulticastLoopback> <CoexistWithNativeNetworking>false</CoexistWithNativeNetworking> </General> <Compatibility> <StandardsConformance>lax</StandardsConformance> </Compatibility> <Discovery> <Peers> <Peer Address=”name_or_address_of_machine1″/> <Peer Address=”name_or_address_of_machine2″/> <Peer Address=”name_or_address_of_machine3″/> </Peers> </Discovery> </DDSI2Service> If you run multiple applications […]

Can you tell the difference between historical samples and new samples?

After calling wait_for_historical_data writers may still be producing new data during that the time in takes to complete. Can you tell the difference between historical samples and new samples (where the latter might be defined as “written since I called wait_for_historical_data”)? Answer There is no such ‘break’ between the samples received so you may have […]

Can you build a DDS application on Windows using CYGWIN?

I want to use the same program code as for an application on a Linux-PC (GNU GCC/G ++). Is this possible? For OpenSplice we use the cygwin environment only for tools like make, flex, bison and the bash scripting: the OpenSplice source code is compiled with the Microsoft compiler from within the cygwin environment. This […]

Transient Durability for Single Process

Federated Deployment TRANSIENT durability is typically exploited when using ‘federated-deployment’ where federations have a configured durability-service that maintains non-volatile data for late-joiners even when no applications are running. Single Process In case you’re using standalone-deployment (aka ‘single-process) you can still use TRANSIENT data but that then relies on applications being active that have configured a […]

Java JRE for Tester and Tuner

What JRE implementations do Tester and Tuner work with? Our build servers build with either Oracle JDK 8 or OpenJDK 8 builds so these are the standard JRE implementations used for Tester and Tuner. Is DDS consistent with Zulu JRE 8 implementation ? Zulu 8 is a TCK certified build of OpenJDK 8. As such, […]

DDSI Release Notes

Introduction These notes document the current state of release of the OpenSplice DDSI2 Service. The DDSI2 service is an implementation of the OMG DDSI 2.1 specification for OpenSplice. There is a solid body of evidence that there is real interoperability between OpenSplice and other vendors’ implementations, and in particular with RTI DDS. Nevertheless, there are […]

Known Issues in OpenSplice V6.11.x

New versions of OpenSplice are released on a regular basis.  This page lists all the known issues for OpenSplice V 6.11.x You may also want to read the following: Fixed bugs and changes for OpenSplice v6.11.x New Features in OpenSplice v6 Known Issues in OpenSplice V6.11.x Operating System/Platform Related Issues aarch64 / 64-bit ARM – […]

OpenSplice C# .NET SDK Migration

Building CSharp examples for .NET Framework on legacy systems. The CSharp examples target .NET Standard 2.0 (for class libraries) and .NET Core App 3.1 (for applications), per Microsoft guidelines for maximum portability amongst all .NET implementations (.NET Core, .NET Framework, Mono, Xamarin etc). However there are situations where users still desire to use .NET Framework […]

OpenSplice Visual Studio Pre-Processer

OpenSplice for Windows is built with this specific Pre-Processor Definition which must also be used for the application during the OpenSplice build process _WIN32_WINNT=0x0502 OpenSplice may have memory corruption if the application is compiled with a different _WIN32_WINNT value than OpenSplice. If the definition is set after everything from OpenSplice is included then a newer value […]

Disposing stale data in DDS

Normally, when data is stale in DDS it is disposed automatically. There are other ways that this can occur though. When the auto-dispose option in the QoS is enabled then when a subscriber detects that a writer has become unresponsive (or has been deleted) then the data is disposed implicitly for all instances of that […]

Error “System clock has been set back (-40)” when starting a tool or application

“License checkout failed! Caught com.reprisesoftware.rlm.RlmException: System clock has been set back (-40)” OpenSplice and its toolsuses RLM for its licensing.  RLM detects windback by looking for future-dated files (access and modified times) in system directories. In many cases just running the system for a little while with the correct date will access the future-dated files […]

Network Channel / Transport Priority FAQ’s

DDSI-Extended (DDSI2E) is an extended version of the DDSI2 networking service, giving extra features for: Network partitions: Network partitions provide the ability to use alternative multicast addresses for combinations of DCPS topics and partitions to separate out traffic flows, for example for routing or load reduction. Security: Encryption can be configured per network partition. This […]

OpenSplice Tester FAQ’s

What is Tester? The OpenSplice Tester Tool is a major leap forward in automated testing and debugging of Data Distribution Service (DDS) based systems. The 100% Java based OpenSplice Tester Tool is designed with the systems integrator in mind and offers an intuitive set of features to aid this task, offering both ‘local’ operation (where […]