It does create a new transport called "rosserial" for point to point serial connections. The goal was to provide a light weight packet where that could handle syncing the two end points and multiplexing the topic communication. It also has a checksum to for error detection. However, the error detection is not used to guarantee is packet received, but rather to guarantee that an endpoint does not act on a corrupted packet. It is an unreliable transport.
All of this is detailed on the rosserial/Overview page. We are planning to do an API review of both rosserial the transport and rosserial_arduino and would love some outside input. If there is anything you don't like or think could be improved, let us know.
Cheers,
Adam
Hi,
As the maintainer of one of the "old-school" Arduino connectivity
packages called "pmad", this sounds quite elegant. Does this package
create a new topic transport like "UDPROS", or "TCPROS" that is
negotiated during subscriptions? Just curious.
best regards,
-andrew
> Hi
>
> As the author of avr_bridge, I am happy it has served you well! I have been
> working with Mike on rosserial and can say it should be even better for your
> purposes. There is now time synchronization, float support, Arduino IDE
> support, and a far more robust protocol. I am no longer going to be
> supporting avr_bridge as a result. It is an easy transition to rosserial
> though.
>
> You are right about the trigonometry on the avr being a bit much. We are
> expecting folks to use it only when they publish at a slow rate on the AVR.
> However, there is no reason why you couldn't run rosserial on Maple (an ARM
> based arduino) and do all the trig you need for TF.
>
> Anyway, if you have any suggestions or problems with rosserial, let us know.
>
> Cheers,
> Adam
>
>
>
> On Fri, Jul 15, 2011 at 3:03 PM, Dariush Forouher
> <forouher@iti.uni-luebeck.de> wrote:
>>
>> On 15.07.2011 19:36, Michael Ferguson wrote:
>> > We would like to announce the first release of a new rosserial library
>> > for the Arduino platform. The rosserial library allows Arduinos to
>> > directly publish and subscribe to ROS messages. There are also demos
>> > ranging from controlling servos to using an Arduino and rxplot as an
>> > oscilloscope to reading temperature sensors into ROS.
>> >
>> > In addition to support integration with the Arduino platform, the
>> > rosserial library provides a general point-to-point transport for ROS
>> > communication over serial, which is intended for hardware that cannot
>> > support the full ROS TCP/IP network stack. This library can be used to
>> > easily integrate a wide-variety of low-cost hardware into ROS.
>>
>> Very interesting, thanks!
>>
>> Compared to avr_bridge I really like the time synchronization feature
>> and omiting the code generation process.
>>
>> I also see that you implemented a tf broadcaster. Your tutorials suggest
>> to implement a broadcaster of odometry transforms in the atmega. Did you
>> try this? I'm a bit sceptical of doing trigonometric operations on an
>> atmega, especially on floats.
>>
>> I'm currently using avr_bridge and am quite happy with it. I'm doing all
>> math stuff (integrating odometry velocity over time; creating point
>> clouds from ultrasound data) in python, however.
>>
>> ciao
>> Dariush
>> _______________________________________________
>> 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
>
>
_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users