Thank you for your suggestion. My problem is lack of C++ or even C libraries. The embedded OS I chosen is NuttX, just provide basic POSIX thread and socket library, no C++ libraries. If I want a full roscpp to run, I have to port some libraries you mentioned to NuttX. So I prefer a light weight pure C or no C++ library using ROS client. Do you know some already published work about this?

Regards,
Yu Qiang


On Fri, May 6, 2011 at 12:31 PM, Daniel Stonier <d.stonier@gmail.com> wrote:


2011/5/5 qiang yu <yuq825@gmail.com>
As I know EROS is for cross compiling ROS to a powerful embedded board which already running some powerful OSes (like Linux). There is no light weight ROS client for less-powerful embedded boards. I used to look for one too. But now I plan to port one in C myself.

You don't need a full distro to run ros, we've installed it to something as small as a custom busybox based system. The only requirements for getting a basic system up and running with ros messaging for custom embedded software are the c/c++ libs, the apache libs (apr, apr_util, log4cxx) and boost. Certainly doesn't need a powerful distro. 

Eros just provides tools for doing that (and if something's missing that you need, please suggest or incorporate it so others can take advantage of it too). 

Nonetheless, roscpp and those logging libraries are sometimes more than you need/want on a really tiny board and we're quite partial to the idea of a light version of roscpp for the excruciatingly embedded. Morten Kjaergaard experimented with developing a light version of roscpp setting up pubsubs and using only boost asio (for tcp/ip sockets), xmlrpc (fpr ros master connections) and just printf style logging. You can find that in the roscpplight package in eros (trunk). That might be good as a starting point or even better, flesh out a design and collaborate on this.

You could probably even drop boost asio if you wished, though short term its convenient to help speed up development and may actually be better in the long run. We've also talked about is using syslog for logging. Troy has also talked about different registration mechanisms to xmlrpcpp (aka zeroconf), but thats a change that can't be isolated to a light version of roscpp.







 
2011/5/5 Yu Bin <master.yubin@gmail.com>
Dear all,
I have find some information on the website below.
Thanks all the same.
rgds
Yu Bin

在 2011年5月5日 下午8:09,Yu Bin <master.yubin@gmail.com>写道:

Dear all,
Most robot using ROS under ubuntu or other PC systems.

I had a question, can ROS run on a embedded system?Are there examples of the application?
Please give me some suggestions. Thanks a lot.
rgds,Yu Bin


_______________________________________________
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




--
Phone : +82-10-5400-3296 (010-5400-3296)
Home: http://snorriheim.dnsdojo.com/
Yujin Robot: http://www.yujinrobot.com/
Embedded Ros : http://www.ros.org/wiki/eros
Embedded Control Libraries: http://snorriheim.dnsdojo.com/redmine/wiki/ecl

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