ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
2

Rviz Client md5sum Error

asked 2017-05-04 07:21:27 -0500

Tixiao gravatar image

I am running Ubuntu 14.04 and indigo on my host computer. I want to visualize some rviz visualization markers on my remote laptop. However, I cannot install Ubuntu 14.04 on my laptop since some hardware problems (too new?kabylake). So I installed Ubuntu 16.04 and kinetic instead. However, when I subscribe to the same topic, I get this error:

[ERROR]: Client [/rviz_1493900002586455363] wants topic /prm_graph to have datatype/md5sum [visualization_msgs/Marker/4048c9de2a16f4ae8e0538085ebf1b97], but our version has [visualization_msgs/Marker/18326976df9d29249efc939e00342cde]. Dropping connection.

I checked that the message type both are "visualization_msgs/Marker". The only difference is those numbers and letters. Any idea why this is happening? I guess it is because the ROS version is different.

edit retag flag offensive close merge delete

Comments

BTW, the Rviz is running ok on another client computer that is installed with Indigo.

Tixiao gravatar image Tixiao  ( 2017-05-04 07:32:12 -0500 )edit
1

Your two system use different versions of the visualization_msgs/Marker (It was changed between Indigo and Kinetic)

NEngelhard gravatar image NEngelhard  ( 2017-05-04 13:20:59 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted
2

answered 2017-05-09 18:41:08 -0500

Tixiao gravatar image

updated 2017-07-26 12:45:41 -0500

I will pose the answer for myself. The reason is that the MD5Sum value for visualization markers is changed for different ROS distributions. Here are the steps to fix this problem (example: use Kinect rviz to display Indigo visualization markers)

  1. Find the MD5Sum for Indigo. (Go to /opt/ros/indigo/include/visualization_msgs/Marker.h, find the MD5Sum value, which is 18326976df9d29249efc939e00342cde)

  2. Change MD5Sum for Kinect. (Go to /opt/ros/Kinect/include/visualization_msgs/Marker.h, replace the MD5Sum with the value in Indigo distribution)

  3. Download Kinetic Rviz source files to your workspace and compile it. (The newly compiled Rviz will use this modified Marker.h file, which has Indigo's MD5sum, to compile)

Now you should have a re-compiled Kinetic version of Rviz to visualize markers that are sent from Indigo.

edit flag offensive delete link more

Comments

Did you find a workaround for this?

George Petrogiannis gravatar image George Petrogiannis  ( 2017-07-26 10:54:35 -0500 )edit
1

Hi George, the revised answer is updated above.

Tixiao gravatar image Tixiao  ( 2017-07-26 12:43:20 -0500 )edit
1

This is really not a good idea, as your from-source RViz is now incompatible with all other 'normal' ROS installs. Also: editing files in /opt/ros/.. is not a good idea. For one thing, your changes will be overwritten next time ROS pkgs get updated.

gvdhoorn gravatar image gvdhoorn  ( 2017-07-26 15:53:02 -0500 )edit
1

answered 2018-09-06 11:13:26 -0500

biglotusturtle gravatar image

I had a similar problem and found a more robust solution that won't break your kinetic install.

In order to get kinetic to publish an indigo friendly visualization msgs marker, you can simply download the indigo branch of the common msgs git repo: https://github.com/ros/common_msgs/tr...

Then copy the visualization_msgs folder into your catkin workspace, do a catkin_make, and then your kinetic branch will publish an indigo compliant message (because your workspace packages override your installed packages)

To go back to the standard kinetic format, simply remove the visualization_msgs package from your workspace, delete build/ and devel/, then catkin_make again. No need to permanently break your kinetic install.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2017-05-04 07:21:27 -0500

Seen: 6,554 times

Last updated: Sep 06 '18