peter's blog

Joining Robocup in China

This week will be unlike any of my past experiences. I'm sitting here in Suzhou, China, 200km from Shanghai and 6000km (that's roughly 4000miles) away from my home. I arrived here with the Tech United RoboCup team from Eindhoven, The Netherlands. We're here to compete against the best teams of the world on the Robocup 2008 World Championship with mid-sized soccer robots.

Cheap and Open Hardware for Robotics ?

Important Notice wrote:

It seems Beckhoff Automation is unable to support an open source (GPL/LGPL) EtherCat implementation due to (incompatible) license restrictions and their way in how they protect patented technology. As the EtherCat Master Library (EML) points out on http://ethercatmaster.berlios.de , you're not encouraged to create an ethercat application based on open source software.

Let's start right away with an example and sum up the parts of the last controller I was working on with Orocos:

* Industrial Single Board Computer (SBC) (PIV 3.4GHz) with 11 PCI slots. Click below to read the rest of this post.

Oh man time flies - Ptolemy II

It's been 4 years and I still remember it. Herman sent me a link to a robotics project which was really worth looking at. It had the uninspirational name '[Ptolemy|http://en.wikipedia.org/?title=Ptolemy_Philadelphus] II' and the [web page|http://ptolemy.eecs.berkeley.edu], well, let's say I felt finger-pointed at by a certain Greek. Using words like 'Java' and Real-Time in the same sentence made me (at that time) drop my chin upon my chest, rubbing my forehead and shaking my head in a 'no' manner.

Review of robotics software

During my never-ending search for robotics related hard- and software, I frequently stumble on (competing) 'products' which are interesting for sharing. Looking at my previous blog entries, it looks like I'm too much staring at my belly, which is for most robotisits out there of less interest than the vast web of information on our fingertips.

OMG's Robotics Task Force

Yesterday, I attended the [OMG's Seminar on Robotics in Brussels|http://robotics.omg.org/], Belgium (that's Europe for you). It was quite turbulent at moments, as there was not yet a consensus on what the standard on the 'Robot Technology Components' (RTC) should look like. Hall-way discussions made me miss out on the OpenRTM-aist presentation (Open Robotics Middleware). Well, I hope the organisers put the presentation soon on-line.

NASA's CLARAty: shame, shame, shame.

I was first filled with joy when I read the press release of the
['open sourceing' of NASA's ROVER software|http://www-robotics.jpl.nasa.gov/news/newsStory.cfm?NewsID=69],
[CLARAty|http://claraty.jpl.nasa.gov].
Last time I saw a presentation about this software was at the robot software development track at ICRA '05 in Barcelona. A question from the audience ( ok, it was me) was raised where this software could be downloaded. The answer was that it would be made available soon, possibly under the GPL or a similar license.

Today, two years later, reading the release notes, it seemed all very promissing as planning and device driver software became available to the Linux robotics
community. Well, promissing, yes, delivering: no. According to the
[license|http://claraty.jpl.nasa.gov/man/software/license/open_src/index.php],
__CLARAty is incompatiblewith the GPL__. CLARAty can not be used for commercial activities:

(quote from their website:)
{{{
The Software shall not be used for commercial production or
sale of any commercial product or derivative incorporating the Software.
Should the user desire to use the Software for any such commercial
purpose, the user must contact the Office of Technology Transfer at
Caltech to obtain permissions and pay the appropriate royalty
}}}

The reason that CLARAty is incompatible with the GPL is that it is too restrictive. Licenses that take away user rights are not compatible with licenses, such as the GPL that enforce user rights.
Don't waste your time on that software as you may not use it with other GPL software.

Component Deployment

I've been hacking on the DeploymentComponent such that it can load components dynamically. This is RTT 1.2.0 only though(*). The idea just elaborated on the current XML description for creating data port connections between components. Now the XML file lists also which component is created from which library and which thread to assign to it. This greatly reduces recompilation steps, as a single executable is capable of launching all Orocos applications, by only reading the XML.

FOSDEM report

So this weekend was FOSDEM, two days of more than a dozen parallel tracks about various FOSS topics. My first impression was that almost twice the amount of people showed up this year, making it a huge success, and sometimes __very__ crowded dev rooms. The flu pandemic got me unfortunately this weekend, and although I could fight and stand it on Saturday, I paid my price today with being at home mainly in bed.

Thoughts on fora

The main purpose of Orocos.org is provide a central information point for users and developers. Drupal helps a lot in realising this, by providing access to many types of content. Recently, registered users can manage their Orocos or Orocos-dev mailing list subscriptions through this site. A nice feature, but not as powerful as having the messages of the lists right here on-line, searchable and reply-able. Drupal has a mailman-Forum module which claims to do that trick. The main concern is limiting SPAM of course and a captcha module may prove to be necessary.

FOSDEM 2007

From day 1, I am a visitor of the annual Free and Open Source Developer's Meeting in Brussels. This conference has gained much respect because each year, the organisers succeed in attracting some big guys from the Free world. I had the honour to present 2 times a topic on the 'embedded track' as well. No talks have yet been announced on this track, but I've reserved my seat already :-)

I'll be there again this year so if you want to meet, drop me a note. FOSDEM is completely free (except from food and beer) and is an excellent place for networking.