-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DDS error while node creation #71
Comments
How are you opening the micro-ROS Agent? |
I'm using the micro ros agent snap package currently. |
Can you try with: docker run -it --rm --net=host -v /dev/shm:/dev/shm -v /dev:/dev --privileged microros/micro-ros-agent:foxy udp --port 8888 -v6 |
Exact same error, It is connected to the agent but there is an error while creating the node in ESP32. I think the problem is related to ESP32 firmware, instead of micro ros agent. |
what output provides the agent if |
|
Try to rebuild all the project and clean the micro-ROS component environment, I just have tested the |
Also, try to get the newest docker with: |
Damn, with this it started working, without needing to rebuild.
One last thing, I can't seem to find the node or topics with the ros2 node/topic list command. I thought the -v parameter in the docker command should reflect the changes. So, is the snap package of the micro ros agent broken(or not updated)? |
micro-ROS agent snap package is not working properly due to snap+ROS2 plugin problems. The recommended option is to use dockerized version. In general, micro-ROS does not have an internal logging system in order to keep it as small as possible. It is in our roadmap to implement it, but it is not currently available. Regarding your question, please paste the output of the agent and tell us how and where are you using the |
This is not isolated. I just picked up microros again today and I'm having the same issue (microros foxy latest, idf v4.3, udp transport) node init is broken against current micro-xrce-dds-agent (snap 2021-04-05), and broken against micro-ros-agent:foxy under docker from a few months ago Current docker micro-ros-agent:foxy allows the micro-ros application to function normally, but no topics or nodes are visible on the host. (using --net=host) I have an application built with 96a37cd that still works perfectly using snap micro-xrce-dds-agent, but has the same non-visible topic problems with docker, so I think the docker micro-ros-agent:foxy issue is related but orthogonal. I'm running is there any way to access the error messages like these from rclc? |
In fact, micro-ROS Agent in snap is not updated and not using the binary entity creation mode that's why it is impossible to create nodes using a modern version of the micro-ROS client and the outdated micro-ROS Agent from the snap package. Dockerized micro-ROS agent is the recommended option. Regarding the communication between the micro-ROS Agent and the docker run -it --rm --net=host -v /dev/shm:/dev/shm -v /dev:/dev --privileged microros/micro-ros-agent:foxy udp --port 8888 -v6 ``` |
I am able to see the topics with the shared memory. The host still can't echo the topics, but it can see active subscribers ( The stated issue is resolved with the docker pull, I'll take the agent topic visibility problem elsewhere edit: building the agent from source and running it directly on the host is giving me less trouble, still needed a daemon reset, but the topics aren't vanishing again |
Yup, out of options even I tried building from source, and it is working just fine. But the topic visibility issue seems to occur irregularly. Which I think can be solved by restarting the daemon whenever it arises as stated by @BrettRD. Thanks for the help! |
Steps to reproduce the issue
Expected behavior
Ideally, after flashing the code ESP32, it should create a node and start publishing the msg via the micro ros agent.
Actual behavior
In ESP32 monitoring terminal :
It shows
Failed status on line 52: 1. Aborting.
Which refer to the line below in main.c file
RCCHECK(rclc_node_init_default(&node, "esp32_int32_publisher", "", &support));
In micro-ros-agent terminal :
The micro ros client got connected to the server using UDP over wifi but there is DDS error which I assume is due to the error while creating the node.
A verbosity level 5 was giving this output :
Additional information
I tried and tested most of the micro ros ESP IDF component examples when first used it, like a month back.
But currently after updating the repo, it is building successfully but while running the code on ESP32 I'm facing these errors.
I did try to debug it myself, looking deeper into function definitions(thanks to vs code), but I hit a roadblock there as I was unable to enable micro ros logging messages.
To enable the log, I redefined
#define RCUTILS_LOG_MIN_SEVERITY RCUTILS_LOG_MIN_SEVERITY_WARN
and changed the ESP verbosity but that didn't affect the micro ros logging.Is someone else getting the same issue? any help would be really appreciated.
Thanks
The text was updated successfully, but these errors were encountered: