Jump to content
OpenSplice DDS Forum


  • Content count

  • Joined

  • Last visited

Everything posted by rodro_jesus

  1. Hello, I am trying to set a Linux-based device running OSPL with promiscuous mode at its ethernet interface, but I do not want to be overflown with data from the IP network the device is located in, as it seems that malfunction when it happens. I know that I can set promiscuous mode in the rc.local file of /etc, but afterwards I guess I should set a filter for traffic that allows DDS data transfer but no other kinds of information. My question is: Is there any other IP address, or IP range of addresses, that should be taken into account, aside from the IP used by DDS for multicast communciations ( Regards.
  2. rodro_jesus

    DDS-based VPN not sending data

    I am trying to set a VPN where there are two machines running DDS implementations in each side. However, although everything seems to be fine at the network layer (both machines can ping each other with the VPN IP addresses) I see no topics been matched, and therefore if I try to transfer information from one machine to the other nothign happnes. If I try to run the two pieces of code locally, they work and topics are interchanged with no issues at all. I believe that it could be related to DDS requiring multicasting (or the lack of), but I have tried to add multicast at both machines (ip route add dev tun0 first, route add dev tun0 afterwards) but still nothing happens. I have Ubuntu 14.04 as the operating system in both machines. OpenSpliceDDS implementation running is V6.4.14.
  3. Hello everyone! I would like to use tis post to ask a question: we are planning to use OpenSpliceDDS for the Jetson TX1 embedded system-on-module like the one described in http://elinux.org/Jetson_TX1. This platform has as its most porminent features Ubuntu 14.04.5, Linux For Tegra R24.1, JetPack-L4T-2.2.1. The architecture of this CPU is aarch64. I was wondering if, among the available versions of OpenSpliceDDS (http://www.prismtech.com/dds-community/software-downloads), there is a compatible one with the Jetson TX1 embedded system-on-module. Can anyone confirm this to me? In any case, thnak you very much for reading this post.
  4. rodro_jesus

    Compiling .idl file to get the generated classes

    Never mind... seems that I have solved it by removing the I path part
  5. Hello Everyone, I am trying to compile an .idl file created in order to generate the Java classes that I am going to use for a Publish/Subscribe component. Everything is ok with the .idl file (named HelloWorldData), both syntax and location of the compiler and the .idl file (or at least, that´s what it seems). The command that I am using is: /.../OpenSplice/V6.4.14/HDE/x86.linux/bin/idlpp –f /home/phd/CompatibilityOSPLNBPrj/idl/HelloWorldData.idl –l java But I get an error message that says: /.../OpenSplice/V6.4.14/HDE/x86.linux/bin/idlpp: error while loading shared libraries: libddshts.so: cannot open shared object file: No such file or directory What is what I am missing here? Should I include the libddshts.so library? I am sorry if my questions are too simple, I just do not know how to do this. I am using Ubuntu LTS 12.04 as the operating system. Java version is 8. Kind regards.
  6. rodro_jesus

    Compiling .idl file to get the generated classes

    Hello, it´s me again. I have notice that I had not source the release.com file as expleined in http://forums.opensplice.org/index.php?/topic/1591-idl-export-error/. Now that I have done it, I seem not to be applying the right commands, since I obtain as follows: Command: /.../OpenSplice/V6.4.14/HDE/x86.linux/bin/idlpp –I /.../OpenSplice/V6.4.14/HDE/x86.linux/etc/idl -l java /.../CompatibilityOSPLNBPrj/idl/hello.idl Result: Usage: /.../OpenSplice/V6.4.14/HDE/x86.linux/bin/idlpp [-c preprocessor-path] [-b ORB-template-path] [-n <include-suffix>] [-I path] [-D macro[=definition]] [-S | -C] [-l (c | c++ | cpp | isocpp | isoc++ | cs | java)] [-j [old]:<new>] [-d directory] [-i] [-P dll_macro_name[,<h-file>]] [-o (dds-types | custom-psm | no-equality)] <filename> Shall I include all the other information?
  7. Dear all, I am trying to run the Java examples that are included in the examples folder of OpenSpliceDDS in Eclipse, as it is the IDE that I am most used to. Specifically, I am trying to run the HelloWorld example. Unfortunately, I have not been able to do so because the four classes included are unable to recognize the DDS libraries. The example runs fine by using command lines, though. The actions that I have carried out are as follows: 1. I have imported the folder "java" containing the code and the ancillary files of the HelloWorld java example, as located in /[home_directory]/OpenSplice/V6.4.14/HDE/x86.linux/examples/dcps/HelloWorld. The imports and the classes used were not recognized in the .java code of the four classes, which is something that I expected at this point. 2. I have created a external tools configuration to run the release.com script that contains all the environment variable paths (Run--> External Tools--> External tools configuration). The imports were still unrecognized. 3. Imported the folder lib into the project. Still unrecognized. 4. Refreshed, just in case. No different result. I am attaching a screenshot for further information. Is there anything I can do to have the examples running in Eclipse? Kind regards!
  8. rodro_jesus

    Using unicast communications in Ubuntu

    Dear Hans, Thank you very much for your prompt answer. Let me be more precise in what I am trying to do. I am trying to run the NetworkPartitions example that is available for Linux environments, but I would like to do so by using unicast messaging rather than multi or broadcast. In addition to that, the files that are available for configuration (network1, network2, ddsie1, ddsie2) are not working in my environment (not sure why, perhaps because of the range of the IP addresses in my network, the network has as IP and as broadcast, so up to 10 pieces of equipment can be added). Therefore, I am using the configuration file below, as there are two PCs connected to a router, namely, PCA and PCB. PCA runs the Chatter part of the NetworkPartitions example, whereas PCB runs the MessageBoard. My issues come because the program is working even though when (I think) it should not. By using the attached configuration file the communications work, but I suspect that broadcast/multicast is still used, because if I write the IP of a nonexistent device it still works, or even if I remove the discovery section and leave everything as false, communications still work! I am running this configuration file by exporting it (export OSPL_URI=file://$OSPL_HOME/examples/dcps/NetworkPartitions/etc/ospl1.xml) before executing the Chatter at the Chatter end, should I run it in both sides? PCA has as IP and PCB <OpenSplice> <Domain> <Name>ospl_sp_ddsi</Name> <Id>0</Id> <SingleProcess>true</SingleProcess> <Service name="ddsi2"> <Command>ddsi2</Command> </Service> <Service name="durability"> <Command>durability</Command> </Service> <Service enabled="false" name="cmsoap"> <Command>cmsoap</Command> </Service> </Domain> <DDSI2Service name="ddsi2"> <Discovery> <Peers> <Peer address=""/> </Peers> </Discovery> <General> <NetworkInterfaceAddress>AUTO</NetworkInterfaceAddress> <AllowMulticast>false</AllowMulticast> <EnableMulticastLoopback>false</EnableMulticastLoopback> <CoexistWithNativeNetworking>false</CoexistWithNativeNetworking> </General> <Compatibility> <!-- see the release notes and/or the OpenSplice configurator on DDSI interoperability --> <StandardsConformance>lax</StandardsConformance> <!-- the following one is necessary only for TwinOaks CoreDX DDS compatibility --> <!-- <ExplicitlyPublishQosSetToDefault>true</ExplicitlyPublishQosSetToDefault> --> </Compatibility> </DDSI2Service> <DurabilityService name="durability"> <Network> <Alignment> <TimeAlignment>false</TimeAlignment> <RequestCombinePeriod> <Initial>2.5</Initial> <Operational>0.1</Operational> </RequestCombinePeriod> </Alignment> <WaitForAttachment maxWaitCount="10"> <ServiceName>ddsi2</ServiceName> </WaitForAttachment> </Network> <NameSpaces> <NameSpace name="defaultNamespace"> <Partition>*</Partition> </NameSpace> <Policy alignee="Initial" aligner="true" durability="Durable" nameSpace="defaultNamespace"/> </NameSpaces> </DurabilityService> <TunerService name="cmsoap"> <Server> <PortNr>Auto</PortNr> </Server> </TunerService> </OpenSplice>
  9. Dear all, I´m a newbie regarding DDS so apologies if these questions are too obvious for all of you. I started using OpenSpliceDDS one week ago and I am running the examples that are provided in the zip file that is obtained from the website for Linux distributions. There are several examples to study and execute, and I am particularly interested in NetworkPartitions. While I have been able to execute it without using the instructions (compiling Chatter and MessageBoard and executing them after setting the environment variables present in release.com), I was wondering how could I create a unicast connection between the two entities that are shown in the example, which is something that I have failed to do. I have tried two solutions: 1. Exporting the network1.xml configuration file present in the example (as said in the instructions, export OSPL_URI=file://$OSPL_HOME/examples/dcps/NetworkPartitions/etc/network1.xml). It did not work. 2. Modifying the configuration file ospl.xml located in /home/[path]/HDE/x86.linux/etc/config in the general properties part (changing AllowMulticast to false, EnableMulticastLoopback to false and NetworkInterfaceAddress to my IP for local tests). It did not work either. <General> <NetworkInterfaceAddress>AUTO</NetworkInterfaceAddress> <AllowMulticast>true</AllowMulticast> <EnableMulticastLoopback>true</EnableMulticastLoopback> <CoexistWithNativeNetworking>false</CoexistWithNativeNetworking> </General> What should I do to create the unicast connection? For this example I already know the IP addreses (or address if requested locally) that will be used in the communcation. Kind regards.