freenect /camera/depth/points topic not published under a group namespace tag.
Hi! I am currently running Octomap on my Qbot using ROS kinetic and Ubuntu 16.04. (My plan is to run ROS navigation stack using the built octomap and create a multi-robot system) Because of the multi-robot networking requirement I need to name my robots uniquely, and I tried doing this using both <include> and <group> tags. While my launch file works as expected without the namespace parameter, it does not give the expected result with the namespace. I generated rqt_graphs for my working and not working programs and figured out that /camera/depth/points topic is not published so that it can output into the octomap_server node.
This is my first launch file which works accurately.
<launch>
<!-- run kobuki base -->
<include file="$(find kobuki_node)/launch/minimal.launch"/>
<!-- tf config -->
<include file="$(find multi_robot_exploration)/launch/tf_pub.launch" />
<!-- run kinect -->
<include file="$(find freenect_launch)/launch/freenect.launch"/>
<!-- run octomap_server -->
<include file="$(find octomap_server)/launch/octomap_mapping.launch"/>
</launch>
And here is the relevant rqt_graph (generated without running RViz)
This is my second launch file which I wrote by including the group tag and a namespace
<launch>
<group ns="qbot1">
<!-- run kobuki base -->
<include file="$(find kobuki_node)/launch/minimal.launch"/>
<!-- tf config -->
<include file="$(find multi_robot_exploration)/launch/tf_pub.launch" />
<!-- run kinect -->
<include file="$(find freenect_launch)/launch/freenect.launch"/>
<!-- run octomap_server -->
<include file="$(find octomap_server)/launch/octomap_mapping.launch"/>
</group>
</launch>
And this is the relevant rqt_graph
It looks like the /camera/depth/points topic is not available in the second setting, and hence it cannot publish to octomap_server. But it is available when I launch the file without <group> tag. Does anybody know what I am doing wrong here?
Note: I use the standard ROS packages for Octomap, kobuki_node, and freenect drivers. I have located all of them within my working directory and sourced them. I have tried adding namespace variable as different include tags also.
Hi, 1. Do you see any errors / warnings when you launch the qbot1 launch file? 2. What is the output when you execute
?
In the info log I can see these relevant information
Node [/qbot1/camera/camera_nodelet_manager] Publications:
The full log is published here. https://drive.google.com/file/d/1XYYn...
That means the nodelet has advertised the topic
The next two steps to debug are 1. Check if the nodelet is actually publishing to
/qbot1/camera/depth/points
by executing 'rostopic echo /qbot1/camera/depth/points' 2. If messages are published, then tryrosnode info /qbot1/octomap_server
to see if octomap server has subscribed to the proper topicThe data stream is published into the topic /qbot1/camera/depth/points
The octomap_server seems to subscribe to the topic without the namespace.
Guess I have to look inside octomap_server node.