Code Monkey home page Code Monkey logo

Comments (5)

juanlofer-eprosima avatar juanlofer-eprosima commented on June 9, 2024

Hi @magladko,

I believe there is nothing wrong with that trace being printed out. It just means --config-file is not being provided, thus it attempts to load DDS_ROUTER_CONFIGURATION.yaml (which succeeds as otherwise the process would terminate with an error trace).

To double check it is well loaded, you may also try the equivalent command:
docker run -it --net=host -v /home/kornel/Programs/dds_router_ws/DDS_ROUTER_CONFIGURATION.yaml:/root/my_config.yaml ubuntu-ddsrouter:v2.0.0 ddsrouter -c /root/my_config.yaml.

Regarding the no communication between the talker/listener and the router, can you at least observe discovery events in the router or nothing at all? Also, may I ask how are you launching demo nodes? It may be that your talker/listener is in a docker network while your router is not (--net=host).

from dds-router.

magladko avatar magladko commented on June 9, 2024

Thank you for your response @juanlofer-eprosima.

  1. You are right, it seems that it is still using the provided yaml file. Just a quick note here, I don't know any way to pass arguments to router ran on docker, other than help and version, here is a print:
docker run -it --net=host -v /home/kornel/Programs/dds_router_ws/DDS_ROUTER_CONFIGURATION.yaml:/root/DDS_ROUTER_CONFIGURATION.yaml ubuntu-ddsrouter:v2.0.0 -h
-------------------------------------------------------------------
Entrypoint script for DDS Router Docker image
  -h|--help|help          Shows this help message
  -v|--version|version    Shows the repositories and versions of all the
                          installed tools and libraries

An empty argument list will launch the application
Any other argument will be executed on the image
-------------------------------------------------------------------
  1. My nodes are run outside of the docker image, just plainly on my machine in another terminal. And yes, there is no information about any traffic.
    This is all I get even after launching the nodes:
~$ docker run -it --net=host -v /home/kornel/Programs/dds_router_ws/DDS_ROUTER_CONFIGURATION.yaml:/root/DDS_ROUTER_CONFIGURATION.yaml ubuntu-ddsrouter:v2.0.0
Not configuration file given, using default file DDS_ROUTER_CONFIGURATION.yaml.
Starting DDS Router Tool execution.
DDS Router running.

from dds-router.

juanlofer-eprosima avatar juanlofer-eprosima commented on June 9, 2024

Hi @magladko,

I tried to recreate your setup and in my case everything works as expected. Regarding your questions:

  1. You need to add the name of the executable (ddsrouter), note that I edited my previous comment as it was wrong.

  2. This clearly should not happen. There might be a transport-related issue (summary: trying to use shared memory transport when that's not possible), however if this was the case you should at least see one or two discovery traces. Just in case, try addding transport: udp under domain: 0 (at the same depth level), that should solve the transport issue.

Nonetheless, what version of ROS 2 are you using? You may try with our own distribution, just to make sure that is not the failing point. For example:

docker run --rm -it --net=host --ipc=host --env ROS_DOMAIN_ID=0 eprosima/vulcanexus:iron-desktop ros2 run demo_nodes_cpp talker

(Note: add also --ipc=host to the DDS-Router docker run command)

from dds-router.

magladko avatar magladko commented on June 9, 2024

Hi @juanlofer-eprosima,
in fact, it works with the distribution you provided me.

I use ROS2 Humble directly installed on my system (not in docker). Everything is up to date and I use ROS2 built-in fastdds version (did not install it externally).

I tried adding the transport: udp, but withot luck. I also ensured that I correctly export export RMW_IMPLEMENTATION=rmw_fastrtps_cpp and export ROS_DOMAIN_ID=0

Not a docker expert, tried also adding ipc argument, but also did not work.

Also just a note, I did not experience any errors while using my installation of ros2, so I am not sure where could I look next.

Still, thanks for your help.

EDIT: Your humble docker distribution still seems to work, but then what could be the reason that the distribution that I installed following the steps of ROS2 tutorial, which works in any other way, is left unfound.

from dds-router.

magladko avatar magladko commented on June 9, 2024

Well, not a docker expert indeed, not sure what was the issue, but running DDS Router on a local installation resolved my issue. Not sure whether to consider it closed, but I won't be needing any furhter assistance (in this case at least 🙃). Thanks for your time!

from dds-router.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.