<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Wed, May 22, 2013 at 9:37 AM, Esteve Fernandez <span dir="ltr"><<a href="mailto:esteve@apache.org" target="_blank">esteve@apache.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hi,<br>
<br>
there doesn't seem to be a SIG for ROS comm protocols and APIs, so I'm<br>
writing here anyway :-)<br></blockquote><div><br></div><div style>There is a ros-sig-ng-ros mailing list. There was some good discussion, but it has not been very active, lately:</div><div style><br></div><div style> <a href="https://groups.google.com/forum/?fromgroups#!forum/ros-sig-ng-ros">https://groups.google.com/forum/?fromgroups#!forum/ros-sig-ng-ros</a></div>
<div style> </div><div style>I am cross-posting there to archive your message.</div><div style><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">

Following Dirk's talk about the future of ROS 2.0, I thought of<br>
experimenting with alternate protocols for serialization and RPC. I<br>
hacked together rosthrift [1], a package for using Apache Thrift [2]<br>
as the transport for serialization and RPC, it generates code out of<br>
Thrift definition files and integrates nicely with catkin.<br>
<br>
I just added support for Python, but Apache Thrift supports many more<br>
languages. Apache Thrift is being used by many open source projects<br>
(HBase, Cassandra, Scribe, etc.) and unlike Protocol Buffers, it comes<br>
with a full RPC framework for C++, Java, Python, Ruby, Perl and many<br>
more. Disclaimer: I'm one of the developers of Apache Thrift, so I'm<br>
clearly biased :-)<br>
<br>
I also pushed a bunch of examples [3] that use rosthrift and txrospy<br>
[4] that mimic the AddTwoInts example from the tutorial, but use<br>
Apache Thrift instead of TCPROS, thus replacing much of the low level<br>
networking code.<br>
<br>
Is there something in the roadmap about the network stack for ROS 2.0?<br>
I'd love to contribute! Maybe we could create a SIG and move any<br>
discussion there.<br>
<br>
Cheers.<br>
<br>
1 - <a href="https://github.com/esteve/rosthrift" target="_blank">https://github.com/esteve/rosthrift</a><br>
2 - <a href="https://thrift.apache.org/" target="_blank">https://thrift.apache.org/</a><br>
3 - <a href="https://github.com/esteve/ros_beginner_tutorials" target="_blank">https://github.com/esteve/ros_beginner_tutorials</a><br>
4 - <a href="https://github.com/esteve/txrospy" target="_blank">https://github.com/esteve/txrospy</a><br>
_______________________________________________<br>
ros-users mailing list<br>
<a href="mailto:ros-users@code.ros.org">ros-users@code.ros.org</a><br>
<a href="https://code.ros.org/mailman/listinfo/ros-users" target="_blank">https://code.ros.org/mailman/listinfo/ros-users</a><br>
</blockquote></div><br>I don't know of any definite decisions. </div><div class="gmail_extra"><br></div><div class="gmail_extra">There has been some discussion of using zeromq as a possible low-level transport framework. It may solve some, but not all, problems with the current TCP implementation. I've looked at it and been impressed, but lacking hands-on experience, would not want to make any strong recommendation.</div>
<div class="gmail_extra">-- <br> joq
</div></div>