Unreal5 Issue-Cannot create the participant

16 posts / 0 new
Last post
Offline
Last seen: 1 year 6 months ago
Joined: 04/10/2024
Posts: 1
Unreal5 Issue-Cannot create the participant

Hello all,

I'm using Unreal5.3 with Simplified Real Time Data Sharing Plugin in the marketplace, I followed the guided tutorial and everything goes fine until I hit the play button at the end.

Error message shows as following:

RTIConnextLog: Error: [URTIConnext::create_participant] EXCEPTION in the creation of the participant. ERROR: Unknown exception
RTIConnextLog: Error: [URTIConnext::init_datawriter] Cannot create the participant with name: ParticipantLibrary::DomainParticipant

The RTI Connext version I Installed is 7.2.0 with 30-day trial license, and Python 3.11.

I'm pretty sure I have properlly set License Information in RTI Launcher Configuration as well as NDDSHOME, RTI_LICENSE_FILE 

Any help will be useful
Cheers!

Offline
Last seen: 2 days 14 hours ago
Joined: 04/01/2024
Posts: 2

Hi yuantianyi1994,

To be sure that the license is not the problem, because the plugin ersion uses its own libraries, can you copy the license file to C:/ProgramFiles/EpicGames/Unreal_(version)/Engine/Plugins/Marketplace/ConnextPlugin/Source/ThirdParty/rti_connext_(version)/ 

I have to ask you if you have created an xml and the entities are correctly named in the blueprint (Create RTIConnext DataWriter) the name of the participant (including the library name) and the name of the datawriter (including the publisher name).

Let me know if you have any problems.

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

Hello,

I am newbie and I am testing UE with RTI Connext. I have the same problem (UE 5.3, Connext 7.5.0). UE output log is reporting an issue with participant name.

The participant name "ParticipantLibrary::DomainParticipant" mentioned in the pdf documention does not work.

So my question is: shall this name be defined in the xml file (CarInfo.xml)?  More generally, what shall be the content this "Qos" file? In the pdf documentation, only types definition are listed. 

Thanks in advance.

Howard's picture
Offline
Last seen: 1 day 22 hours ago
Joined: 11/29/2012
Posts: 673

Can you paste the error output that you see?

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

Thanks Howard for taking care of my issue.

The error is (I have tried all participant names I can imagine, this one is just an example!) :

RTIConnextLog: Display: [URTIConnext::create_participant] Initialize participant
RTIConnextLog: Error: [URTIConnext::create_participant] EXCEPTION in the creation of the participant. ERROR: Unknown exception
RTIConnextLog: Error: [URTIConnext::init_datawriter] Cannot create the participant with name: ParticipantLibrary::DomainParticipant

With the name given by default when creating the Blueprint function "CreateRTI Connext DataWriter", I get this:

RTIConnextLog: Display: [URTIConnext::create_participant] Initialize participant
RTIConnextLog: Error: [URTIConnext::create_participant] Error setting the name of the participant config, Ex: ParticipantLibrary::DefaultParticipant
RTIConnextLog: Error: [URTIConnext::init_datawriter] Cannot create the participant with name: DefaultParticipant

Howard's picture
Offline
Last seen: 1 day 22 hours ago
Joined: 11/29/2012
Posts: 673

Sorry, I haven't used this plugin before.  What's the contents of CarInfo.xml?

Also, did you see this from the previous posting "To be sure that the license is not the problem, because the plugin ersion uses its own libraries, can you copy the license file to C:/ProgramFiles/EpicGames/Unreal_(version)/Engine/Plugins/Marketplace/ConnextPlugin/Source/ThirdParty/rti_connext_(version)/ "

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

Yes, I see the previous comment. I have checked environment variable RTI_LICENSE_FILE and copied the file there.

Which is ambiguous btw as a rti_connext_dds-6.1.2 was already existing. I also clone the directory and rename it rti_connext_dds-7.5.0 (my version), with license file copied in both directories.

Here is my CarInfo.xml, used to generate C++ code:

<?xml version="1.0" encoding="UTF-8"?>
<dds xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="file:////home/oem/rti_connext_dds-7.5.0/resource/app/app_support/rtiddsgen/schema/rti_dds_profiles.xsd">
    
<types>
    <struct name="Position">
        <member name="x" type="float32"/>
        <member name="y" type="float32"/>
        <member name="z" type="float32"/>
    </struct>
    <struct name="CarInfoData">
        <member name="coordinates" type="nonBasic" nonBasicTypeName="Position"/>
        <member name="speed" type="float32"/>
        <member name="id" type="string" stringMaxLength="100" key="true"/>
    </struct>
</types>

</dds>

I could not find this file on RTI web site, I just guess from what was written in Simplified-Real-Time-Data-Sharing.pdf.

Note that I have to manually modify the automatically generated C++ code to be able  to compile it but this is another story!

 

Howard's picture
Offline
Last seen: 1 day 22 hours ago
Joined: 11/29/2012
Posts: 673

Uh, I'm not sure exactly what you're trying to do and how.  But renaming a directory from connext_dds-6.1.2 to connext_dds-7.5.0 tells me that you're not doing what you're supposed to be doing.

Have been following the directions in Simplified-Real-Time-Data-Sharing.pdf?

Did you download the plugin from Unreal's marketplace?

Did you install the plugin as instructed?  "C:\Users\myuser\Documents\Unreal Projects\Vehicle1\Plugins\ConnextPlugin"

You should have a directory "C:\Users\myuser\Documents\Unreal Projects\Vehicle1\Plugins\ConnextPlugin\Config".  Are you following those directions?

Into what directories did you copy the "rti_license.dat" file?

 

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

Hi Howard

I did not rename the rti_connext_dds-6.1.2. I duplicate it with RTI license file in hte directory (so in both after the copy).

The RTI Connext package was installed as documented. It works and has no license issue, I have tested it with two C++ exe exchanging data, visible in RTI Admin Console or Monitor.

The plugin was installed from the Marketplace with Epic Installation procedure, so is in C:\Program Files\Epic Games\UE_5.3\Engine\Plugins\Marketplace subdirectory.

The plugin is consequently not in the project specific subdirectory C:\Users\myuser\Documents\Unreal Projects\Vehicle1\Plugins. Both locations are usually allowed by Unreal Engine.

My rti_license.dat file is now in 3 locations:

C:\Program Files\rti_connext_dds-7.5.0 // at RTI Connext core  installation ; corresponds to the RTI_LICENSE_FILE environment variable

C:\Program Files\Epic Games\UE_5.3\Engine\Plugins\Marketplace\ConnextPlugin\Source\ThirdParty\rti_connext_dds-6.1.2 // copied here to try to solve the issue, but without success

C:\Program Files\Epic Games\UE_5.3\Engine\Plugins\Marketplace\ConnextPlugin\Source\ThirdParty\rti_connext_dds-7.5.0 // duplicate of above directory, also to try solving the issue, useless

Connect plugin for Unreal Engine works at least partially because:

1) It is shown in plugin list after installation

2) It offer specific Blueprint functions, as Create RTIConnext DataWriter

3) It recognizes and compiles the Blueprint in which my C++ class/struct has been added (CarInfo / CarinfoData)

Should I move the plugin in the project specific directory?

 

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

PS: I have re-created a Vehicle2 project from scratch, with plugin in project specific subdirectory, license file also there, and get the same error :

RTIConnextLog: Error: [URTIConnext::create_participant] EXCEPTION in the creation of the participant. ERROR: Unknown exception

(with the same CarInfo.xml containing no information for domain, participants, etc)

Howard's picture
Offline
Last seen: 1 day 22 hours ago
Joined: 11/29/2012
Posts: 673

When you installed the Plugin, there should be a Config/ directory, e.g.:

C:\Program Files\Epic Games\UE_5.3\Engine\Plugins\Marketplace\ConnextPlugin\Config

Wasn't there a file already created called CarInfo.xml in that directory?

 

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

The directory C:\Program Files\Epic Games\UE_5.3\Engine\Plugins\Marketplace\ConnextPlugin\Config exists when installing the Plugin from Epic Marketplace.

But there is no CarInfo.xml file there (it should be strange to have a sample file in a general purpose directory). I added mine, created from info found in Simplified-Real-Time-Data-Sharing.pdf.

The Simplified-Real-Time-Data-Sharing.pdf documentation mention another way of installing the plugin, through Simplified_Real_Time_Data_Sharing_v1.1.zip.

Perhaps this zip file has more sample data, but I do not have this file.

Moreover, if you have a full CarInfo.xml file, please give me its content.

Howard's picture
Offline
Last seen: 1 day 22 hours ago
Joined: 11/29/2012
Posts: 673

Hmm, I'm trying to track down how all this is supposed to work, but the developer is located in Europe so I can't talk to him directly.  Unfortunately, the plugin is considered "experimental" and isn't a fully supported product.

And because of that, I can't even install it myself since the Unreal Engine that I can download is version 5.5 or 5.6 and it won't let me install the Connext plugin since it only supports versions 5.2 or 5.3...

In any case, yes, it looks like you have to define the DDS Entities (Participants/Readers/Writers) in the XML file.  

The XML file is basically an Connext XML Application definition file, which can be created by hand or using the RTI System Designer tool. And all of the DDS Entities that you want to use in the Connext DDS functions of a Blueprint must be previously defined in an XML file (which is also configured to be loaded in a Blueprint function...as the "Qos" file...per the example in the PDF).

Please see this documentation:

https://community.rti.com/static/documentation/connext-dds/current/doc/manuals/connext_dds_professional/xml_application_creation/xml_based_app_creation_guide/XMLAppCreationGSG_title.htm

https://community.rti.com/static/documentation/connext-dds/current/doc/manuals/connext_dds_professional/tools/system_designer/index.html

 

I've also attached what should be a working version of CarInfo.xml that corresponds to the example in Simplified-Real-Time-Data-Sharing.pdf.

File Attachments: 
Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

I have also to install an old Unreal Engine 5.3 to test the plugin.

My idea was first to test it, then to ask if RTI has a plan to migrate this plugin towards latests versions of UE (or to tell me how I can migrate it).

Many thanks for the CarInfo.xml, which looks fully consistent with Simplified-Real-Time-Data-Sharing.pdf .

Still get the same error but I will test many small changes in the coming days, hoping to find the right setup.

 

Howard's picture
Offline
Last seen: 1 day 22 hours ago
Joined: 11/29/2012
Posts: 673

So, given that currently RTI has no plans to productize the Unreal Engine plugin and thus when/if the plugin is updated for the latest version of Unreal Engine...as well as the latest version of RTI Connext DDS....I would advise you to use RTI Connext DDS with Unreal Engine simply via creating your own Blueprint Functions to call the DDS APIs provided by RTI Connext DDS.

That makes what you do independent of an unsupported plugin...as well as makes it much easier (in my opinion) to create Blueprint "code" that uses DDS to send/receive data.

Your custom Blueprint function (in C++) could create all of the DDS entities needed by your app (perhaps using the methodology of XML app creation so that you don't have to recompile your code just to add/modify DDS Entities), and other Blueprint functions to access the DDS Entities (via API calls to lookup DataWriters/DataReaders as needed).  

So, in essense, build your own "plugin".

But, you will

1) have to learn how to program using the DDS API

2) must use the Traditional C++ (or C) API of Connext DDS.  You cannot use the Modern (C++11) version of the C++ API since Unreal Engine does not allow libraries to use RTTI...apparently it has its own way to do runtime type checking....you can do a Google search on this issue...it's generic and not specific to RTI or DDS at all.

Best of luck!

Offline
Last seen: 1 day 22 hours ago
Joined: 10/08/2025
Posts: 8

Many thanks Howard for the recommandation.

C++ coding is not an issue for me, and I intend to learn/use DDS API in this context anyway. I will check the Modern C++ issues with UE.