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

ROS Communication Protocol [closed]

asked 2012-09-03 06:46:50 -0600

updated 2014-04-20 14:09:20 -0600

ngrennan gravatar image

Hello, Is there a complete documentation for the ROS communication protocol anywhere? (especially explaining the buildup of the XMLrpc messages)

I want to write a very slim ROS independent node in C for it, which does not use any ROS library.

Do I need XML for the Master or is there another simpler possibility of publishing or subscribing topics?



edit retag flag offensive reopen merge delete

Closed for the following reason the question is answered, right answer was accepted by cyborg-x1
close date 2015-06-26 04:09:53.578672

1 Answer

Sort by ยป oldest newest most voted

answered 2012-09-03 07:08:00 -0600

Lorenz gravatar image

I guess the conceptual overview wiki page is a good starting point. The master xmlrpc API and slave xmlrpc API and parameter xmlrpc API pages should provide a hopefully complete list of xmlrpc functions that are implemented by the core and that must be implemented (slave api) by a node.

For setting up subscriptions and publications and accessing parameters, xmlrpc will be required. The actual communication on the topics then uses a different binary format. Have a look at the msg wiki page for at least some information. For a really generic implementation of ros in C, you will have to implement a message generator that translates msg files to c files that contain code for serializing and deserializing that message. The serialized message format is actually pretty simple. Best if you have a look at the generated files for C++ or Python to find out more information.

edit flag offensive delete link more


Is there a documentation for the direct XML format like below (captured by wireshark): <?xml version='1.0'?> <methodResponse> <params> <param> <value><array><data> <value><int>1</int></value> <value><string>Unregistered [/listener] as provider of [/rosout]</string></value> <value><int>1</int>...

cyborg-x1 gravatar image cyborg-x1  ( 2012-09-03 08:06:05 -0600 )edit

Well, that's just normal xmlrpc. Google shows this as first hit.

Lorenz gravatar image Lorenz  ( 2012-09-03 08:08:43 -0600 )edit

Oh, ok, thought that is done by ros, because somewhere in the text it says it was "heavily" changed.

cyborg-x1 gravatar image cyborg-x1  ( 2012-09-03 08:17:36 -0600 )edit

Question Tools


Asked: 2012-09-03 06:46:50 -0600

Seen: 2,912 times

Last updated: Sep 03 '12