Willow Garage Blog

February 17, 2010

ROS Tutorial

UPDATE: this tutorial is now full and registration is closed.

Several ROS experts will be on hand to give a full day ROS tutorial at ICRA 2010 in Anchorage, Alaska. On May 7, we'll be spending the entire day teaching the ins and outs of ROS, from nodes and messages, to sensing, planning, and control. We'll be bringing a PR2 robot so that participants can get hands-on experience using existing ROS software libraries, while also learning to write new code.  Exercises will be carried out both in simulation and on the robot. Whether you're a robot software developer, algorithm researcher, HRI researcher, robot competition participant, or commercial application developer, we encourage you to register and attend.

Attendees should be comfortable writing Python code, though need not be experts. Familiarity with ROS is encouraged but not required.

Important Links


A preliminary list of topics that will be taught is below. See the tutorial page for schedule details and updates.


  • use ROS command line tools and visualization tools
  • launch, analyze, and debug distributed ROS systems
  • write ROS nodes in Python
  • write and use custom ROS messages


  • access sensors and visualize data
  • construct sensor processing pipelines

Planning and Control

  • use and customize navigation for a mobile base
  • use and customize motion control for an articulated arm
  • build a high-level executive in Python


  • run complex robot simulations


  • control a complex mobile-manipulation platform


  • Gary Bradski, Willow Garage
  • Ken Conley, Willow Garage
  • Brian Gerkey, Willow Garage
  • Morgan Quigley, Stanford University
  • Melonee Wise, Willow Garage
February 10, 2010

RASKeenan Wyrobek will be giving a talk on "The PR2 Robot: A personal robot for software developers" at IEEE Robotics & Automation Society (RAS), which will be held at the Silicon Valley branch of Carnegie Mellon University. During this talk, he will discuss how ROS software and the PR2 robot provide an integrated platform for software development. Details are below.

IEEE Santa Clara Valley Robotics and Automation Society


February 5, 2010

PR2 Beta Program

We anticipated strong interest in our PR2 Beta Program -- a PR2 at no cost does create quite a stir. Nonetheless, we're overwhelmed by the volume of responses we received: 120 Letters of Intent! We'll be busy in March reading through all of the full proposals. 

We're excited by the summaries we've read, and impressed by the breadth of proposed projects. The letters arrived from universities, companies, robotics clubs, and hackerspaces. The proposed programs cover the research areas and domains that we hoped to reach with the PR2, from motion planning to multi-robot coordination, and from education to eldercare. We appreciate the level of interest and commitment to open-source robotics software these letters represent.

We were surprised and impressed by the number of international letters. We received letters from twenty-seven countries, on five different continents. Although for logistical and support reasons we expect that most of the robots will go to North American institutions, the quality of the international presence has us convinced that this will be a global program.

It won't be long until March 1st when we have the full proposals. Thank you all for participating.

February 1, 2010

Texas Alpha Prototypes

As you can see from the photos above, our build of 25 Texai (Texas Alpha version)  remote presence systems is well underway. The 25 Texases, a.k.a. "Texai", are now in the office, and we're busy bringing them online. The docking stations arrived on Thursday, but we're having trouble finding 25 outlets to plug them into!

Our Texai team spent long nights making this happen quickly, and it's fair to say that the rest of the office was stunned when they came in to work and saw the scene above. We now have 25 TAs, 5 PR2 Betas, 3 PR2 Alphas, and an original Texas. We're not quite at one robot per employee, but, with more PR2 Betas in production, we're getting there.

The big question is, "What are we going to do with 25 Texai?" We're working on that. We've already seen how one Texai could positively affect the relationship of one employee with the rest of the company -- now we'd like to see what effect many can have. The Texai surprised us as an unplanned byproduct of our efforts with the PR2 and ROS, but we know a good remote presence system when we see one.

We've already planned for some formal and informal uses. Some of them will be used for Human-Robot Interaction research. Others will be deployed at various sites and companies to study the mobility, networking, and social challenges that must be addressed in the design of remote presence systems.

We're also going to use them ourselves. Although we only have one employee in Indiana, we have several working remotely from home and from the Willow Garage Ski House. We'll see if the Texai can teach PR2 some tricks on the slopes.

January 28, 2010

With our recent post highlighting the work of OpenCV's Victor Ehruhimov on the Texas Robot, it's worth bringing the community up-to-date on the the work that is going into OpenCV.

OpenCV is a computer vision library started as an open source project at Intel. In the last two years, Willow Garage has become the primary backer of this library, which is released under the BSD license, which makes it free for any use, commercial, research, or otherwise. Currently, OpenCV has an active user group of over 40,000 members and has been downloaded well over two million times.

Willow Garage is focused on expanding the capabilities of OpenCV for robot perception. We want OpenCV to be an important library for helping robots see. Before we could do this, we recognized that it was necessary to modernize the decade-old library. OpenCV has undergone a Renaissance, adding full new C++ (by Vadim Pisarevsky) and Python (by James Bowman) interfaces. It has also added new texture recognition features and Marius Muja and Professor David Lowe's Fast Approximate Nearest Neighbor machine learning library (FLANN). There is even a full calibration→rectification→stereo correspondence→depth map pipeline.  All of this work culminated with the release of OpenCV 2.0 in September 2009.

With this new, modern library, the OpenCV team is now moving forward on implementing new features as well as making the library more stable and tested than ever before. You can follow the increasing test code coverage, or, if you prefer features, you can follow the OpenCV developer Twitter account.

-- Gary Bradski

January 26, 2010

In the past month or so, work has progressed on the Texai. We've decided to build 25 "Texas Alpha versions", or "TA" for short, to use for ourselves as well as studies on telepresence. Over the past month, we've been working with our design partner, Function, to make this happen.

One of the important aspects of this project has been to ensure that the TAs were seen as modifiable -- allowing anyone with an allen wrench and some confidence to switch out parts. We want to see what users will do with the robot, given the source code and the physical system.

The build of the subassemblies has been fast and furious. As you can see from the slideshow, we have at least two of the TAs built and are replicating them quite rapidly. We might not have enough storage for all 25 of the TAs at Willow Garage, but we'll be sending them out the door soon to various sites to test their remote capabilities.

Dallas, Curt and our intern Tom Grimes (from Purdue), along with the other members of the Texai/WG/Function team, have been cranking the allen wrenches, and building parts left and right. The software is also starting to take shape and is building on top of the capabilities developed for the PR2 robot. We're looking forward to getting the TAs back in the office and taking them for their first test drive.

January 26, 2010

The Texas Robot continues to be a fun platform for experimenting with robot telepresence. One of the major difficulties with the original platform was charging. Although the Texas Robot could last an entire day on a single charge, the "pilot" always had to find someone to plug the robot in at the end of the day. Our hardware team did a great job solving this. They built a convenient docking station that's very easy to use -- you simply drive the robot backwards onto a platform, and a V-shaped bar helps guide the plug into place.

While this part of the operation is easy, we wondered if we could make it even more convenient. If the PR2 can plug itself in, why can't the Texas Robot dock itself? We want to improve the experience of robot telepresence, so that you can use robots like Texas as a platform for interacting with people, rather than spend time performing maintenance tasks. We haven't solved this problem entirely, but with the help of Victor Eruhimov and OpenCV, we got a step closer.

While visiting Willow Garage last December, OpenCV developer Victor Eruhimov combined OpenCV and ROS to develop a vision-based prototype of autonomous parking. This prototype uses the color camera on the Texas Robot to find the docking station, which has a grid of color circles on it. A color filter is applied to the camera image, and a search is done for the pattern of circles. Once the docking station is located, the Texas Robot can be driven into place -- the clever design of the docking station makes it just as easy for an autonomous robot to use as well. This approach still requires that the driver position Texas so that it can see the docking station, but hopefully we can address that with future improvements.


January 24, 2010

Sanford Dickert gives a lightning talk on the Texas Robot, ROS, and the PR2 Call for Proposals at SuperHappyDevHouse.

January 22, 2010

Milestone 3 Complete

Today, we finished our third milestone! Simply put, ROS has reached 1.0 status. We also recently unveiled the PR2 Beta robots and the PR2 Beta Program, which will distribute approximately 10 PR2 robots at no cost.

Of course, it's a lot more than that. Since work began on Milestone 3, there are now:

  • 203 ROS software tutorials
  • 29 ROS Stacks at 1.0 status, which contain a total of 186 ROS Packages
  • 21 Completed Use Cases, requiring well over one hundred user studies

Numbers aren't everything, though. Here are some of the libraries that are available free and open source (BSD): navigation, 3-D visualization, coordinate frames, robot modeling, laser and camera processing, logging and playback, and strong OpenCV integration.  Many additional libraries will be distributed with the PR2 so that robot recipients can start developing on the PR2 from day one: PR2 simulation, realtime controllers, diagnostics and debugging tools, and drivers.

There's also a brand-new ROS.org community site with a wiki and news blog. With your help, we completely redid the content of the wiki to provide better, more consistent, and more thorough documentation. We also moved our source code hosting to code.ros.org, which provides significantly faster connection speeds.

The ROS community played a huge role in Milestone 3. Whether it be the authors of the high-quality, open-source libraries that ROS is built on top of, our awesome interns from top robotics research programs, the numerous wiki contributors, our user study participants, the developers who submitted patches, or the many e-mailers on ros-users -- all of you demonstrated that open source and quality go hand in hand.

In fact, while we were busy with Milestone 3, the ROS community continued to expand the list of ROS libraries. There are now 15 organizations releasing open source ROS libraries and contributing documentation to ROS.org. There are over 850 ROS packages available for you to download and use, including libraries for the Aldebaran Nao, iRobot Create, and much, much more.

The completion of Milestone 3 feels like the end of a long journey, from building PR2 alpha prototypes, to getting them to open doors and plug themselves in, to turning PR2 and ROS into solid development platforms for robotics. In reality, it's a beginning -- ROS is now ready for new audiences, and soon, PR2s will be in the hands of top research institutions around the world. We look forward to working with the robotics community in taking the next steps.

January 22, 2010


ROS 1.0 has been released!

Development on ROS began a little over two years ago. There have been many changes since those early days, and what started as a little project with a couple of developers has blossomed into a vibrant community supporting a wide variety of robots, big and small, in academia and industry.

We hope that this 1.0 release will help the community even more and that you all will continue to participate and contribute.

ROS, by itself, isn't enough to get a robot going, so we're excited to also release many other libraries as 1.0, including:

For a list of changes in this release, please see the change list.