Hello there,
I have the same issue as Bruno.
I have ROS2 Foxy installed. I do not source it in the terminal with which I launch Omniverse (it is not sourced in the bashrc file).
I use Omniverse 2022.2.0 and when I start it, I switch from the ros_bridge to the ros2_bridge, then load my USD file created following the Turtlebot tutorial. I created the node graph as explained in the tutorial.
I have my ROS_DOMAIN_ID set in the bashrc file and I use the same ID in the node graph.
When I run the simulation and then open a terminal, source Foxy and run ros2 topic list
, I cannot see the /cmd_vel
topic as it should be expected when following the tutorial.
In the installation page for ROS2 for IsaacSim (6. ROS & ROS 2 Installation — Omniverse Robotics documentation), they instruct to unset the variable LD_LIBRARY_PATH
which I do in the bashrc file. Then, I added export FASTRTPS_DEFAULT_PROFILES_FILE="~/.ros/fastdds.xml"
as indicated in the tutorial. fastDDS.xml file looks as follows:
<?xml version="1.0" encoding="UTF-8" ?>
<license>Copyright (c) 2022, NVIDIA CORPORATION. All rights reserved.
NVIDIA CORPORATION and its licensors retain all intellectual property
and proprietary rights in and to this software, related documentation
and any modifications thereto. Any use, reproduction, disclosure or
distribution of this software and related documentation without an express
license agreement from NVIDIA CORPORATION is strictly prohibited.</license>
<profiles xmlns="http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles" >
<transport_descriptors>
<transport_descriptor>
<transport_id>UdpTransport</transport_id>
<type>UDPv4</type>
</transport_descriptor>
</transport_descriptors>
<participant profile_name="udp_transport_profile" is_default_profile="true">
<rtps>
<userTransports>
<transport_id>UdpTransport</transport_id>
</userTransports>
<useBuiltinTransports>false</useBuiltinTransports>
</rtps>
</participant>
</profiles>
When I run Omniverse, IsaacSim and play back the simulation, and then go to a terminal, source ROS2 and run ros2 topic list
, I again cannot see the /cmd_vel
topic.
When I then run ros2 run teleop_twist_keyboard teleop_twist_keyboard
I get the following error messages:
dave@adminuser-Precision-5560:~$ ros2 run teleop_twist_keyboard teleop_twist_keyboard
2023-01-11 10:33:58.574 [XMLPARSER Error] Error opening '~/.ros/fastdds.xml' -> Function loadXML
2023-01-11 10:33:58.574 [XMLPARSER Error] Error parsing '~/.ros/fastdds.xml' -> Function loadXMLFile
2023-01-11 10:33:58.577 [RTPS_TRANSPORT_SHM Error] Failed init_port fastrtps_port20162: open_and_lock_file failed -> Function open_port_internal
2023-01-11 10:33:58.578 [RTPS_TRANSPORT_SHM Error] Failed init_port fastrtps_port20163: open_and_lock_file failed -> Function open_port_internal
This node takes keypresses from the keyboard and publishes them
as Twist messages. It works best with a US keyboard layout.
[...]
I checked the fastDDS.xml file with xmllint
and receive the following:
dave@adminuser-Precision-5560:~/.ros$ xmllint fastdds.xml
fastdds.xml:11: parser error : Extra content at the end of the document
<profiles xmlns="http://www.eprosima.com/XMLSchemas/fastRTPS_Profiles" >
^
This is the file I copy-paste as is from the website.
I went to copy the file manually (typing it over) line-by-line. The xmllint
now gives no issues. Yet, when running the teleop node, I receive the same errors.