Zaza was purchased from RWI in 1997 by fellow mobile robot enthusiast, entrepreneur and really swell guy Andy Rubin. Meanwhile, across the globe in Bonn Germany, the robot RHINO was being prepared to navigate the "Deutsches Museum Bonn", and give both walking, and online tours to the museum's visitors, and from May 29 through June 1st of 1997 it did so. A great page that describes the project, and the techniques used to make it possible can be found here. Sebastian Thrun, Steffen Gutman, and others developed the mapping, planning and localization programs that were required for RHINO to do it's job. Andy modified the software to autonomously navigate the cubicles at the Mountain View WebTV office where he worked. From a Java applet-based front end web users could select any point in the building, and Zaza would go there, while transmitting video back to Andy's office via a 2.4GHz wireless video transmitter, which was digitized with a video capture card and streamed back on the web page in real time. A coworker of Andy's, Jack Palevich, took this picture of Zaza outside of his office in June of 1998, and has a short commentary in his Letters from Silicon Valley.
I first heard of Andy and his "robot that wanders around on it's own" in December of 1998 through a coworker of mine who had heard of Andy through Tech Museum board member Norio Sugano. A meeting was set up after the holidays, and a few of us from the Tech Museum's Exhibits and Engineering group went up to see Andy at his office in Mountain View. We watched Andy perform a demo, and were all very impressed. Andy expressed interest in developing an exhibit with us that would take the Bonn Museum idea to the next step, and provide nightly web based tours of the Innovations gallery. many software enhancements were necessary, and Andy worked with Sebastian and Steffen to make the required changes to work in the new environment. After completing the work on RHINO, Sebastian had gone on to build another museum robot Minerva (Don't miss the great video LARGE) which was on display at the Smithsonian from August 24th through September 5th of 1998. At long last on October 12 of 1999 Andy demoed the localization software on his Nomadics XR4000 robot in the Innovations gallery while visitors were still in the gallery. It performed flawlessly.
I raced ahead preparing for the robot's permanent arrival, but ran into two major obstacles. Our department had recently experienced a major upset with the departure of our director, and her replacement was horribly under qualified. The new head of exhibits assigned by the new director was stalling work on any new projects while she acclimated, and hired a new staff. I then lost contact with Andy for several months, and later found out that he had left WebTV and formed a new company, Danger Research. Andy no longer had time to work on the project, and I was unable to enlist the support of the exhibits people to develop the needed signage for the robot's enclosure. The project was stalled, and unlikely that it would be able to resume. 18 months passed as my department struggled to make projects such as the 'touring robot' a legitimate use of our time. Frustrated with the people and environment at the Tech that stifled any attempt at innovation, after nearly 10 years with the museum, I resigned on Aug 18 2000, taking the opportunity to go back to school full time to finish my degree. Many of my former co-workers also left the museum around this time for similar reasons.
A month before I left, Mike had contacted Andy in the hopes of reacquiring the XR4000 for the Robotics! exhibition that would be opening in Sept. Andy had agreed to provide a robot, and a program he had written to track and follow colors for the show. Mike had asked for my help getting it working if he was able to get the robot, and I agreed to volunteer my time if it were required because I enjoy working with mobile robots and still have many friends at the museum. Andy was still swamped with his responsibilities at Danger Research, and was unable to finish the program by the time the show opened. Mike was able to arrange a time with Andy to pick up the robot from Danger's office on Oct 3 of 2000. Pete, Mike and I all piled into Mike's van (which fortunately, is equipped with a ramp) and headed to Danger Research's office in Downtown Palo Alto. Upon arriving, we had a tough time locating the building's one sign, but once we headed through it and up the stairs to the office, the scene was what you would expect of most startups: a few haggard techies crammed into a tiny office late at night, lots of toys, several half-eaten pizzas, a few pieces of test equipment and several mobile robots. There was no sign of Andy yet, but this was definitely the place. We waited around for a few minutes, and Andy appeared from a closed door meeting he said they would be in there for a while and suggested we go for a coffee. Heeding his suggestion, we wandered down the block and grabbed a quick dinner. We returned and Andy was still in the meeting. We waited around for a few more minutes, and Andy wandered out and apologized for the delay. He lead us over to where the robots were and asked what the Tech was planning. Unfortunately neither Mike, nor Pete had thought through what they would do with the robot once they had it. They stumbled for an answer, and offered two vastly different ideas on what they wanted, neither using a robot's advanced hardware to it's potential. I reiterated my desire to help, but that the museum would need to decide on what should be done. Andy seemed a bit upset by the lack of coherence in the ideas presented, yet still offered Zaza, his B21 as the platform to be used. Pete, Andy and I proceeded to bring the robot's components down to the parking lot where it could be loaded in the vehicle while Mike retrieved his van which was parked several blocks away. As we were waiting for Mike to return, Andy surprised us by offering me Zaza, as long as I could get something out on the museum floor. Of course, I agreed. I decided to retain ownership of the robot to protect her from the same politics that encouraged my departure, and the potential of being put into storage and never seen again.
Since then I have spent as much of my available time (one or two days a week depending on homework load), preparing the robot for use in the museum. It took me several weeks to reverse-engineer the robot's hardware and software enough to be proficient enough to perform any enhancements. I then needed to replace the wireless lan adapter with one what would work with the museum's in-house WLAN network. We came to consensus that the KISS principle should guide our actions in the early stages of development and settled on a simple facilitated obstacle avoidance demo. I then began to test the code provided, and after realizing the stock wander demo needed the laser for better safety, I enhanced it to provide laserServer support. To ensure stability, and reliability Mike and I began several weeks of performance testing on the museum floor. Satisfied that we had a workable demo, Pete scheduled fabrication of an acrylic cover for the turret to protect the pantilt head, cameras power switch, reset buttons, etc... Due to the backlog of existing Exhibit Development projects, the enclosure had to wait nearly a month before work could be started. Unfortunately, this meant that we would not be able to deploy before the end of the Robotics! exhibition. Making use of the downtime, Mike and I upgraded zaza2's OS from NT4 to Win2k PE so Mike's Speech SDK VB apps would function properly. During one of the earlier tests, the producer from Good Morning America was on site scouting the location for an upcoming technology segment on robotics. Unbeknownst to Mike and I, Zaza really excited him, and he planned for her use in the segment. I heard about the filming on Thursday, that would take place on Saturday and that they needed someone to both operate the robot and speak on the program about it. I had already made plans for the weekend, and could not be there. So I provided Mike with the details necessary to start up and shut Zaza down. To make things easier for the demo, I wrote a quick web startup/shutdown script in Perl. The filming took place as scheduled, and Zaza stole the show! Work began on the enclosure in the first week of January 2001, and continued through March 12th due to a series of delays caused by unscheduled 'emergency' projects from Exhibit Development that took priority for the shop's time. The shop guys did a fantastic job as can be seen here. During the time the upper enclosure was in the shop I attached the receiver of a wireless joystick to the robot's base that would replace the klunky and intermittent wired joystick. Finally, when the enclosure was finished, I wired the buttons into the upper turret's buttons and illuminators with an 8-pin twist-lock connector, and tested successfully.
Pete scheduled a meeting on March 19th 2001 with the Programs dept. management to demo and discuss Zaza's deployment. Unfortunately I was only given a few hours to prepare for the demo and didn't have a chance to test some code changes I made for use of the button-driven demo. Pete was called away to resolve a rolling blackout induced museum reset, and Mike we called away to another meeting. I tried pulling off the demo on my own, but a few problems arose that I was unable to deal with quickly, and we needed to reschedule. Due to various other activities competing with both Pete's and the Programs dept's time the meeting did not happen until April 11 2001. Before the rescheduled meeting I was able to clean up several of the software-induced bugs that caused the failure of the first demo. Staffing resources are tight at the museum, and due to the politics in non-profit enterprises like the museum, managers are very stingy about taking on yet another responsibility for their staff. This was very evident in the meeting, so we scheduled three public test-runs of Zaza on April 12th, and April 14th to demonstrate the fantastic level of public interest that real robots generate. The trials completed, having satisfied this requirement to it's fullest extent and everyone was very impressed. It generated a fairly long bug list that will need resolution before the official deployment.
On April 9th 2001 we showed Zaza to several members of the local robotics clubs, the HBRC and SFRSA, in the hopes of eliciting additional volunteer support for the project. Both groups took pictures, and asked lots of questions. In the following months, several of the folks from the HBRC submitted volunteer application forms to get involved, but for various reasons have been unable to do so. Pete left the Tech in May to move to the East coast with his fiance who was starting a business. The new Director of Engineering, Rich Turner, is a great guy, and has done his best to ensure the sucess of the project. Unfortunately, additional internal support from the museum after the demo has been substantially less than anticipated. I needed to find volunteer facilitators and develop my own program after receiving no support from the Tech's public programs staff.
During this time Mike and I did extensive public testing on the robot software to find what interested people most, and would work well in a demonstrative program. We developed an improved 'personality' for Zaza. Allowing the robot to detect people in front of her, and react to them verbally. Compared to previous public tests where the cameras pointed where she was going, rather than at the people interacting with her, the public's response is substantially improved. I began work on the next phase of the project, allowing web visitors to see and interact with Zaza. Unfortunately the web interface code used with Minerva during her time at the Smithsonian was unavailable, and needed to be written from scratch. To keep the implimentation simple for the Tech's IT staff to manage, the web client data would need to be easy to get through their firewall. The client interface would also need to support multiple browser types and operating systems. The only viable option was Java, with the use of the Sun Java Plugin. Native code interfaces to the Apache web server are done cleanly with mod-Perl, so I chose to impliment the majority of the 'poslib' interface in Perl. It allows stable and flexible interfacing between the C/C++ BeeSoft code, and the client-side Java applet.
Volunteer Robbie Stone joined the project in mid-August 2001, to help-out with facilitating the 'Phase II' program. He has been invaluable to the project, and is also lending a hand in software development. With Robbie's help, we were able to deploy the Phase II program on schedule on September 29th 2001, just under one year after receiving the robot hardware from Andy. Running the robot weekly during the program has helped a great deal in pinpointing software bugs, and helping to improve reliability. Robbie helped to port the A.bus Linux kernel driver to the 2.2 kernel allowing me to upgrade the OS on Zaza's 'brain' CPU. After completing high school, he left the area in September 2003 to attend college in southern California.
The Tech's IT folks made some tweaks to their firewall in mid-November 2001 to allow web visitors to view Zaza's webcam during her weekend program runs, and test-out the server code prior to official deployment. The new web interface code reached a sufficiently stable level that allowed initial public testing to begin in December of 2001. The interface allows web visitors to 'vote' on an exhibit for Zaza to visit by clicking on a 'goal' in the client-side applet. Votes are tallied in real-time, allowing an unlimited number of users to 'control' Zaza. When Zaza arrives at an exhibit, she will tell nearby visitors about the exhibit, and what they can learn there. Online visitors will see the same information in text from from the Tech's website. Thanks to the Tech's web team, Zaza now has a formal presence on the Tech's main website.
Volunteer Steve Bischoff joined the project in August 2002, bringing a wealth of information on animatronics and battery management. Steve has helped out with facilitation since early 2003, and has helped to fill the gap after Robbie's departure.