As part of our tutorial series on TurtleBot, we're exploring the history of the robot, and there's no better way to tackle that subject than to talk directly to its creators, Tully Foote (left) and Melonee Wise (right), who developed the robot while at Willow Garage. With all the power of ROS behind it, TurtleBot is a unique platform for robotics development, and we wanted to learn more.
It's hard to overestimate the impact that ROS has had on the robotics community, but the expense and complexity of the software and hardware that it depends on is generally beyond the scope of most educators, students, and hobbyists. Through TurtleBot, Melonee and Tully have created a way for anyone to access a capable and well-documented ROS platform, supported by a vibrant community of users that they've helped cultivate. TurtleBot, and projects like it, are ensuring the longevity of open source and the future of robotics by helping the next generation of humans build the next generation of robots.
We sat down with Melonee and Tully last week and talked to them about where the idea for TurtleBot came from, how it went from a fun side project to thousands of robots in production, and where they think TurtleBot is headed now.
Our full interview is below.
Q: What's your background?
Melonee: I attended the University of Illinois for undergraduate through the beginning of my Ph.D, with a dual degree in physics and mechanical engineering. In 2007, I came out to California to work on an autonomous car for two weeks, and ended up working at Willow Garage. I got a compelling offer, left college, put all of my stuff in a trailer, and moved to California. I was employee number two at Willow. While I was at Willow, I worked on a bit of everything, from ROS to PR2 to Legos to TurtleBot to Sphero. The list is endless. But I feel that my two major accomplishments are making the PR2 plug itself in, and developing the ROS wiki. And TurtleBot, of course!
Tully: I was an undergrad in mechanical engineering at Caltech, where I worked on autonomous cars for the first two DARPA Grand Challenges. From there, I went to UPenn, and did a masters in mechanical engineering and worked on Little Ben for the DARPA Urban Challenge. We were one of the finishers in that event. When that was happening, I was interviewing at Willow Garage, and I came out to Willow in January of 2008.
Q: Where did the idea for TurtleBot come from?
Melonee: Around Thanksgiving [of 2010], I'd taken the new Kinect that had just come out, and I attached it to an iRobot Create. Tully and I had been going back and forth and talking about how we should write Create drivers for ROS, and how we should make the barrier to entry for ROS really low.
Tully: We'd had complaints that ROS only runs on big, fancy robots like the PR2. I don't remember how, but at some point, we'd ended up with a Lego NXT kit in our office, and we decided to get that working with ROS. But, the NXT really isn't powerful enough, and it's not extendable. We can expose some small subset of ROS to the NXT, like we can move motors, but there's no real sensors, and you can't do navigation.
Melonee: And navigation is the quintessential part of ROS: what you really want to show off in ROS is that you can make a map, and then drive around in that map. That's the thing that everyone gets excited about. And so, we got the Kinect, and I wired it all together with the iRobot Create, and just sat it right on top. And that was the generation one TurtleBot!
Tully: We'd been playing with it for a while, and then we actually pitched it to be an official Willow project. It got approved for a little bit of our time each week and no budget, or just enough budget to buy one of each part. But we went ahead and started hacking it, and basically, our goal with that project was to prove that you could run ROS on an Intel Atom-scale processor. We were figuring out what the minimum bar is to be able to do navigation with ROS. We tested several different laptops at different scales, to see whether we needed to get an i3 or an i5 or an i7. We even tried to get it running on ARM processors.
Melonee: We got some of that stuff working, and we started playing with the navigation stack, and one of the things that became immediately apparent was that the Create's odometry wasn't good enough, so I went and got a cheap gyro board off of Sparkfun, and we stuck it in there. At this point, it was this crazy rat's nest of wires. The other thing that we noticed was that the power port on the Create doesn't have enough juice to power the Kinect, so we'd try and turn on the Kinect, and it would fail a lot.
Tully: It wasn't that it didn't have enough juice, it just didn't have enough juice if the cooling fan on the Create kicked on. So as long as the cooling fan didn't turn on, the Kinect would run, and it would go for a couple minutes, and then the Kinect would brownout.
Melonee: Yeah. So, then we ended up building the power board that you see in the old TurtleBots, which had a switch-enabled regulator that powered the Kinect. We added the gyro, and got all that working. When we got those parts in, we ended up running into some guys at Google who had come to visit Willow about their cloud robotics project. They were talking about how they wanted to get some robots running around at Google, and they saw what we had put together, and they were like, "Can we just buy those?" And that's what took TurtleBot from this small internal project where Tully and I were just making robots, to, "hey, we should sell these things!" In three weeks, we turned everything that was TurtleBot, just our hackery, into production-level robots, and made the first eight robots for Google. And that was the beginning of where we went from, "this is just a side project" to "making real robots."
Q: So the original concept was not to develop a product?
Tully: The original idea was to just design a baseline robot and publish the designs. And we did that as well. Everyone can built a TurtleBot by themselves, but just putting it together and making it available is a service that makes it much more accessible to people.
Melonee: And as you can see with where TurtleBot is today, it's been a good melding. There are the people who really want to build their robot, the people who want to etch and solder their own circuit boards, all the way to the people who just want to turn it on and make it go. TurtleBots have been able to support that entire spectrum, which has been really nice. It's really interesting to see how that community has evolved, and we support both ends of that.
Q: After Google, what was it like to put it out there for everyone else?
Tully: We produced the Google ones on sort of like a rush order: they wanted the TurtleBots as soon as they saw them, so we just made them in the same production style as our prototypes. But then we went for another design cycle that spring, redesigning the electronics and checking the thermal capabilities, as opposed to the previous ones, which was more of a prototype. And that's when we put up a pre-order to determine what our volume would be if we were going for production.
Melonee: Around the same time that we put up the pre-orders, we actually open-sourced the entire project, and did a call for vendors. That's when Clearpath Robotics and I Heart Engineering got involved. Willow Garage had trademarked TurtleBot, and then we did a license to those companies for the name and logo. And actually, that was kind of interesting. When we went to make the logo for TurtleBot, it was just this random thought we had. Everything in ROS is turtles. The turtle thing came from the turtlesim that we made to teach ROS, which came from Logo.
Tully: The original version of Logo was run on actual robots at Xerox Parc called turtles, so there was Logo on the turtles before there was Logo the computer program that we learned as kids, but they had the same command structure. And then we created turtlesim, which has the same command structure as the Logo turtles.
Melonee: And the reason we called it turtlesim was that the triangle cursor in Logo was also called a turtle, and then turtles became this fun thing that we made all of ROS. So when we went and made the TurtleBot logo, we decided to just make a turtle with the ROS dots in the middle, and then the design came back, and we were like, "that's perfect!" And we shipped it, in August [of 2011].
Q: And then what happened?
Melonee: And then, everyone had TurtleBots! It was crazy! All of a sudden, we saw YouTube videos about TurtleBots, papers being published... It was fun, we put Google Alerts out for TurtleBot news. Tully and I shared an office at Willow, so Tully would be like, "did you see this cool video?" And We would just get all sorts of cool things that we never expected people to do with TurtleBots.
Q: What were you expecting?
Melonee: I guess the thing is, we never expected it to be adopted so quickly.
Tully: I was sort of expecting people to do the classic robotics research. Like, do more SLAM, do these standard things that everybody does in robotics. But it turns out that we were able to hit a much bigger audience. Coming from academic research on robotics, you put your robot in a room, you make it do SLAM, you try to get better path planning, and you do all these things. And it turns out that now with TurtleBot, you can just take it home, and you can play with it and customize it. You can make your own plates in the shape you want or in the color you want, and all of a sudden it can become more of a plaything that has a lot of robotics in it, as opposed to being just a research platform.
Melonee: Some of the things we saw people do were really interesting. Like, someone made a gesture recognition program so you could draw a square in the air, and then TurtleBot would go drive the square. I was just blown away by that, because that's a challenging piece of software to write, and someone just sat down and did it. The other thing that was really kind of amazing was that there wasn't much advertising with TurtleBot. We had a shoestring budget for most of TurtleBot. So it was really cool when you suddenly saw classrooms with whole curriculums based off of TurtleBot. We expected some of that, but the adoption rate was really high. Within the first year, there were probably 15 universities using TurtleBots to teach undergrad or grad robotics, and that was pretty impressive.
Q: Why does the world need TurtleBots?
Melonee: Because building robots is hard!
Tully: It's filling a need. It's the least expensive, most capable platform you can get with off-the-shelf consumer electronics. When you start using consumer electronics, the price goes way down, and TurtleBot gives you the basic integration that you need where you have the laptop, the sensor, and the mobile base. And we hit the cheapest sensor we could get, the cheapest mobile base we could get, and the minimum laptop to be able to handle all of these capabilities. Our understanding of what the level of technology was enabled us to say, "these three things together will give you all of this capability, and you don't have to spend more."
Melonee: The other thing that came with TurtleBot wasn't just the hardware. It was the months of intense software development that Tully and I put into it, combined with really nice documentation. We spent weeks and weeks writing extensive documentation for TurtleBot, because we wanted to truly lower the bar. It wasn't just about creating a platform for just universities or just people who knew about robotics and ROS; it's about how people who know nothing about robotics can now grab a TurtleBot and play with it. I think that's what we were going for. There's the hardware aspect—it's of course hard to build robots—but sometimes it's also hard to write the basic drivers for the robots. A lot of people struggle with things like opening up ports and connecting to things and getting data from sensors, and TurtleBot provides the hardware and the interface. ROS has been described by most people as a really nice way to start working with robots. You don't have to understand how the hardware works to use the robot itself. And I think that's what the world needed in some sense. I think the other thing is, if you looked around at that time, there weren't too many mobile platforms actually being offered in that price range.
Tully: All of them were several thousand dollars more, and ten years old. TurtleBot reflects the fact that the price of consumer electronics has been dropping like crazy, and these other platforms didn't really keep up.
Q: And there's something nice and familiar about having a laptop, isn't there?
Tully: Yeah, we were originally looking at computers without screens, focusing on the CPU. Our standard of development coming from the PR2 world is that you have a full desktop right there all the time. But it turns out that the competition on the netbook meant that buying a netbook with a given processor is actually cheaper than buying a nettop, a screenless thing with the same processor, and you don't even get a battery or a keyboard. So in this case, it was cheapest to choose the thing with the most accessibility. And of course, if you can just open the screen and see what your robot is doing, right there, it's a lot easier than having to log in through a remote connection and stuff.
Melonee: There has been some discussion among the TurtleBot manufacturers about moving away from the laptop, but both Tully and I now think that it's very powerful to have a laptop right there for the user. At first we really weren't thinking about it, but now we feel like it's one of the more important features of the robot.
Q: How did TurtleBot 2 happen?
Melonee: An email!
Tully: We were talking with Daniel Stonier from Yujin Robotics, and he basically just asked, "have you guys thought about a different platform?" And we said, "yes, but there's nothing out there at the same price point with the same feature set." And then he mentioned that Yujin has this vacuum cleaner robot that's very similar to the Roomba, and asked us to give him a list of features that would be in our optimal TurtleBot base. I think we came up with a fifty point list in just two hours and emailed it off to him.
Melonee: This was all really weird, because we were wondering what was really going on. He came back with our list and he's said, "Well, I think we can implement all of this." And we're like, "What?!" It was really cool. Then we started getting down to the nitty-gritty, like what connectors should we use, and that's when more of the TurtleBot manufacturers go involved. At first it was just our wish list, but once it became this real thing that they were actually going to build, we started into all the details with things like connectors and power. There was some negotiation there, but in general, they built our dream robot.
Q: As of right now, what's happening with TurtleBot?
Melonee: TurtleBot is continuing to live on. Its trademark is getting transferred to the Open Source Robotics Foundation, and it will continue to be a living, breathing open-source hardware and software platform that is predominantly maintained by the community.
Q: So you feel like the community is strong enough now to take over all of the stuff that you guys have been doing?
Tully: Yeah. Melonee and I were heavily involved for the first year, and since then it's been much more community driven than us. We watch the mailing list, and we'll throw in comments occasionally and say, "hey, that's a good idea" or "let's think about that a little more." There's definitely a sustaining community, with thousands of users out there, and that's now an incentive for the manufacturers and distributors to support and improve the TurtleBot.
Q: What's on your wish list for TurtleBot 3?
Melonee: Lasers! One of the things that's missing from TurtleBot is a 360-degree laser. The Kinect is okay, but it's got a limited field of view, so it makes some of the things that you might want to do a little limited. The other thing is that a lot of people want to have the Kinect up higher on their robot, so if there was a laser, say a Neato laser, then people would have the capability of moving the Kinect up to do face recognition and more interesting things that don't dedicate the Kinect to looking at your shins.
Tully: I'd probably go with more battery, and better obstacle traversal, whether it's through bigger wheels or better ground clearance. And with a heavier base and better ground clearance, you could put the top up a little more, as Melonee was saying. I don't think we'd want to go much bigger; it's good to have it small and portable and liftable. One of the big differences between the TurtleBot and the PR2 is that you can throw a TurtleBot in the back of your car and drive to wherever you're going, and you can even take it on the airplane with you. A PR2 does not fit in carry-on or checked baggage, and it doesn't fit in a car, either.
Melonee: Yeah, that's one of the things that's nice about the TurtleBot, and I hope that never changes. You can pick the TurtleBot up, and just throw it around, and it'll still be okay. It's very sturdy, it's pretty hard to break. It's funny, when people see us handling the TurtleBots, they're like, "uh, you're gonna be careful with that robot, right?" And we're like, "eh, it'll survive." And it does!
Q: In the next five to ten years, what's your fantasy for TurtleBot?
Tully: It should be on the shelves at Walmart and Toys "R" Us. It should be in every classroom, down through kindergarten. I think that it would be revolutionary for teaching programming, because having this physical entity means that if your algorithm doesn't work, you can see it fail. That's a huge difference in terms of intuitive understanding of what's going on. TurtleBot, being simple enough and inexpensive enough, can push down into this early robotics and computer science education.
Melonee: What I would love to see is to have FIRST based around TurtleBots. I believe that the thing that robotics needs most is people who know how to program robots, and not as much people who focus on building robots. I'd like to see that shift in robotics competitions in general, where it's more about what the robot is doing, as opposed to how it's built. And honestly, if I could make it happen today I would: I'd take like 25 TurtleBots and somehow make a physical game of StarCraft with them.
Q: What are you both up to right now?
Tully: I've just recently transitioned to the Open Source Robotics Foundation. I'm continuing my role as the ROS platform manager, overseeing the development of the Hydro release of ROS, so we can get the next version of out there and take the next step with the operating system.
Melonee: I've recently moved on from Willow to found a new company, and our focus is on creating low cost robotics for research and education. It's a continuation of what I have a passion for, and what I've been doing in ROS for the past five years.
Many thanks to Melonee and Tully for talking with us.
[ TurtleBot ]