Another existing option is the multimaster stack (different from the multimaster_experimental that rosproxy is part of).

http://ros.org/wiki/multimaster

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
William Woodall
Graduate Software Engineering
Auburn University
w@auburn.edu
wjwwood@gmail.com
williamjwoodall.com
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~



On Mon, Jul 2, 2012 at 4:25 PM, Austin Hendrix <legotown@aol.com> wrote:
I would take a look at rosproxy: http://ros.org/wiki/rosproxy

The serialization in ROS should be cross-platform/endianness.

-Austin


On 07/02/2012 12:46 PM, William Woodall wrote:
Sophisticated as this question is, I think it is still serviceable via http://answers.ros.org/questions/

For part 1):

Not sure, potentially if the code that deserializes was generated for an ARM target.  Maybe some else can comment on this.

For part 2):

The message type '<pkg>/<MessageName>', the actual message definition, and the md5sum of the message are all part of the data being sent in the serialized data. See:

http://www.ros.org/wiki/ROS/TCPROS
http://www.ros.org/wiki/ROS/Connection%20Header

This is how, from what I understand, rosbag can record and republish ros topic data with out linking to any message type headers, because it never actually deserializes anything, similarly your proxies can forward the data in its serialized form without ever knowing the type and ros nodes on the other side can still determine the type and then deserialize the data.

--

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
William Woodall
Graduate Software Engineering
Auburn University
w@auburn.edu <mailto:w@auburn.edu>
wjwwood@gmail.com <mailto:wjwwood@gmail.com>
williamjwoodall.com <http://williamjwoodall.com>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~




On Mon, Jul 2, 2012 at 2:20 PM, Karan, Cem F CIV (US) <cem.f.karan.civ@mail.mil <mailto:cem.f.karan.civ@mail.mil>> wrote:

    Hi all, I'm trying to pass data between multiple robots in a manner
    similar to what multimaster (http://ros.org/wiki/multimaster) is/was
    supposed to do, but after some work, I've realized that what I'm
    really
    trying to do is proxy messages from one robot to another.  I can
    do this
    by grabbing a message and asking it for its serialized
    representation, and
    then rsyncing that across the network, but I realized that that
    leaves 2
    potential problems:

    1) I don't know how portable the serialization format really is.
     Can I
    take a message that was serialized on a little endian 32 bit
    machine (x86)
    and forward it to a big endian 16 bit machine (ARM), and have the
    data be
    correctly serialized/deserialized?  I know I can do this via google
    protocol buffers (https://developers.google.com/protocol-buffers/) or
    MessagePack (http://msgpack.org/), but I'm not too sure if I can
    do this
    with serialized message format that ROS uses.

    2) Is the message type encoded into the serialized data?  It doesn't
    appear so, but I just wanted to make sure.  This affects what kind of
    proxy I can make; if the message type is encoded in the message,
    then the
    proxy can be oblivious to messages, and will simply forward the data
    along.  The receiver can likewise be oblivious, putting the
    message 'on
    the bus' and letting all listeners decode what they want.
     Conversely, if
    the messages don't encode their own type, then the proxies will
    need to
    know every message type that they encode; otherwise, the receivers
    won't
    be able to put the right message type 'on the bus'.

    Any help/pointers would be appreciated.

    Thanks,
    Cem Karan

    _______________________________________________
    ros-users mailing list
    ros-users@code.ros.org <mailto:ros-users@code.ros.org>
    https://code.ros.org/mailman/listinfo/ros-users





_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users


_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users