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

md5sum issue when calling a service from another computer

asked 2016-10-18 11:00:28 -0600

s1839705 gravatar image

updated 2021-11-28 19:04:46 -0600

lucasw gravatar image

I am running ROS on two computers. The master and it is the one requesting the service. The other is the one to which my robot is connected, and the one providing the service I wish to use (move the robot to a point).

When I try to request the service, the following error shows:

unable to connect to service: remote error reported: client wants service /enhance/MoveRobotToPoint to have md5sum 78ad5397dff8517113a4ce521add09a7, but it has 3b74f5e1707ea77798238c7e929349b7. Dropping connection.

Then, I noticed that the .srv files in the machines were different. By running the command

rossrv md5 MoveRobotToPoint

I noticed that the md5sum was indeed 78ad5397dff8517113a4ce521add09a7 on the ROS Master and 3b74f5e1707ea77798238c7e929349b7 on the server. So, I changed the files so they were the same (and then built the workspace again, sourced devel/setup.bash and restarted the computer). The error still occurs! However, with the above command, I get for both machines 78ad5397dff8517113a4ce521add09a7. So, I am pretty sure the md5sum is correct.

Could it be that somehow the service still "thinks" that the .srv file is the old one? How can I force him to update? I even deleted the hidden ~/MoveRobotToPoint.srv backup file.

Thank you in advance.

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted
1

answered 2016-10-18 15:29:53 -0600

lucasw gravatar image

You should try deleting catkin_ws/build and catkin_ws/devel and rebuilding.

edit flag offensive delete link more

Comments

sorry @lucasw, I get this error is it that same? I am playing a bag file and trying to do rostopic echo /nav_status. Maany thanks

ERROR] [1638125363.279734078]: Client [/rostopic_28339_1638125362937] wants topic /nav_status to have datatype/md5sum [marta_msgs/NavStatus/ccb836e840c83634382508157bfdb91e], but our version has [marta_msgs/NavStatus/2652576ed189854bff45893603a05bc0]. Dropping connection.
v.leto gravatar image v.leto  ( 2021-11-28 13:00:07 -0600 )edit

The bag could have been recorded with a different (older?) version of NavStatus, if you can track it down you could compile it in a catkin_ws just for playing back the bag with. Or look into https://github.com/facontidavide/ros_... or https://github.com/StefanFabian/ros_b... if you don't know what the different NavStatus is.

lucasw gravatar image lucasw  ( 2021-11-28 21:54:30 -0600 )edit
2

answered 2020-05-07 21:41:13 -0600

Rufus gravatar image

Also make sure your

nh.advertiseService<my_package::my_service::Request, my_package::my_service::Response>("service_name", 
        [&](my_package::my_service::Request &req, my_package::my_service::Response &res) -> bool
        {...});

and

nh.serviceClient<my_package::my_service>("service_name");

is consistent.

The error can happen when the service type advertised and the service type of the client to is different.

edit flag offensive delete link more

Comments

+1. FYI in my case, the error said [/unnamed], which didn't give much hints but still looked different from other issues where the cause is checksum discrepancy.

Service call failed: unable to connect to service: remote error reported: request from [/unnamed]: md5sums do not match vs...
130s gravatar image 130s  ( 2021-04-22 14:33:19 -0600 )edit
1

answered 2016-10-18 15:50:50 -0600

s1839705 gravatar image

Maybe the answer given by lucasw would have worked. I solved the problem by typing 'make' in the command line in the directory catkin_ws/build/<package_name>

edit flag offensive delete link more

Comments

This solution worked for me, thnk you!

LucasGV gravatar image LucasGV  ( 2021-03-04 13:46:48 -0600 )edit

Question Tools

2 followers

Stats

Asked: 2016-10-18 11:00:28 -0600

Seen: 8,137 times

Last updated: Nov 28 '21