Announcing Easy Robot operating system, compatible with rosbridge api...

53 views
Skip to first unread message

Adam Fowler

unread,
Dec 13, 2013, 5:28:00 PM12/13/13
to rosbrid...@googlegroups.com
Hi all,

As you may know from my previous emails/issue reporting I've been using ROS to create a robot. For reasons covered elsewhere [1] I've decided to create Easy Robot.

Easy Robot is a Node.js based lightweight process middleware designed as a baby brother for ROS, and to be easy to install and get working for people new to robotics.

I'm aiming at at people unwrapping a Raspberry Pi and wanting to get up and running building Robots.

I was impressed with the rosbridge json api. That's why I put some time in last weekend creating a way to support Node.js use of this API. I'll be using this as a base for Easy Robot.

This also means that when people are ready, they should be able to take their Robot and switch out Easy Robot for ROS when they want to take advantage of that set of existing tools. Should provide a good progression for them.

I thought I'd announce this here in case there were like minded people interested in the project, and to let you know I'll be basing this on the rosbridge json API.

GitHub Repo (Please ask for features): https://github.com/adamfowleruk/easyrobot

[1] Blog entry on my ROS issues and thoughts behind creating Easy Robot: http://raspberryralph.wordpress.com/2013/12/13/ros-woes/

Hopefully this all sounds reasonable to the community as an approach. Equally, please let me know if you think I've gone insane. 8o)

Regards,

Adam.

Adam Fowler

unread,
Dec 15, 2013, 1:39:19 PM12/15/13
to rosbrid...@googlegroups.com
Hi all,

I'm putting together the design of my Easyrobot server and messaging architecture. One of the things I'll need to support is clients advertising their own services. I note that this is currently not supported:-

4.4 Advertising Services

Rosbridge currently does not support services advertised by the remote client. It could be extended to support this.

I'm thinking of implementing a provide_service JSON message like the below. Let me know if anyone things this should be modified.

{ "op": "provide_service",
  (optional) "id": <string>,
  "service": <string>,
  (optional) "args": <list<json>>, // list or argument descriptions {(optional) name: <string>, type: <string-javascript-type>, required: <boolean>} ...
  (optional) "compression": <list<string>> // compression mode supported (none or png or both)
}

I'll also update my clone of roslibjs I created for adding Node.js support to include this function. I'll keep it in the Node.js override JS file for now, as I doubt many web clients will need this functionality. (You guys could always copy it over at a later date.)

All feedback welcome. Please read about the design on my WIKI page: https://github.com/adamfowleruk/easyrobot/wiki

Regards,

Adam.
Reply all
Reply to author
Forward
0 new messages