Hey guys,
I suspect that the hardest parts of getting roscpp to run on a bare-metal system will be dealing with boost, differences in how embedded vs Linux handle network sockets, and endianness problems that affect the serialization process.
For a number of the embedded devices that I've seen with Ethernet, the device communicates over UDP or TCP to a ROS node on a Linux host; this includes the custom ethernet-attached cameras that we use on the PR2.
-Austin
On 09/12/2012 02:39 PM, Dave Curtis wrote:
Thanks Tully,
If you have a pointer to some information on that project I'd like to look at it.
In the spirit of simply taking a shoe horn to roscpp, I spent a little bit of time looking at the roscpp source, it wasn't clear just from grep'ing the #include's if there are a lot of kernel dependencies. OTOH, I can certainly imagine a lot of dynamic memory allocation going on, which can be painful on a system without virtual memory and only a limited amount of SRAM to start with.
-dave
On Sep 12, 2012, at 2:22 PM, Tully Foote wrote:
Hi Dave,_______________________________________________
To answer your question directly I have seen a proof of concept with roscpp running on a bare metal arm chip. I don't know exactly what went into making that work.
Morgan,
Thanks for taking the initiative to setup the SIG. I've created a wiki page for the SIG at http://www.ros.org/wiki/SIG/Embedded
Tully
On Wed, Sep 12, 2012 at 1:56 PM, blackstag <blackstag@gmail.com> wrote:
Hah ok will tell Paul to spell right. Is Ros serial using sockets for small embedded linux processors. It was implemented on the Vex Pro and Chumby in our testing.
On Wed, Sep 12, 2012 at 2:58 PM, Dave Curtis <dave@dave-curtis.com> wrote:
OK, so I see the rosserial_embeddedlinux package supports TCP, I didn't see that before. But it does say "imbedded Linux", which is still considerably different from an MMU-less uCtlr. So, is rosserial_embeddedlinux more light weight than its name would imply?
-dave
On Sep 12, 2012, at 11:43 AM, blackstag wrote:
Ros serial does have a TCP option now for wifi or ethernet._______________________________________________
On Wed, Sep 12, 2012 at 1:14 PM, Dave Curtis <dave@dave-curtis.com> wrote:
I've been searching the archives for info on this topic but everything I turn up is pretty ancient.
Suppose you have an embedded device that has an ethernet controller and enough oomph to run a TCP stack and an RTOS, for instance an ARM Cortex-M3. Is it possible to run roscpp on the bare metal, or does roscpp depend on a lot of Linux system services? Of course, rosserial would be an option, but if you have an ethernet controller on chip, that seems limiting. Or is there another light-weight ROS comms on TCP that I don't know about?
-dave
_______________________________________________
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
_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users
--
Tully Foote
tfoote@willowgarage.com
(650) 475-2827
_______________________________________________
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