Setting up ROS bridge

I am trying to setup ROS bridge, for which I am following this tutorial.

I already have a container that is running Isaac Sim 2022.1.0 (image obtained from here). I have another container with ROS setup (with roscore running locally). However to verify if roscore is running, I require the rosgraph module, which is not present in the container running Isaac (the one provided by Nvidia). Additionally, I also require rospy and other modules to integrate ROS/ros_bridge with my current work in Isaac.

Essentially, I have some questions about this entire setup:

  • I am confused about how my environment should be setup. Do I need ROS in the same container that runs ISAAC? If so, how do I modify my dockerfile? Or rather, is there an image containing both?
    • I have a feeling the answer to this is a no, since with v2021.2.1, I could use one of the omni.kit commands (RosBridgeRosMasterCheck) to verify if roscore is running, and it worked just fine
  • If the answer to the previous question is a no (i.e., one container running ROS, one container running Isaac, as I currently have setup) , then how do I install modules/libraries such as rospy and rosgraph? Are there any instructions on setting up an environment?

Solved it. Essentially, I was importing rospy and rosgraph before I was enabling the extension. So essentially, the code below worked

from omni.isaac.core.utils.extensions import enable_extension
enable_extension("omni.isaac.ros_bridge")
import rospy
import rosgraph
1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.