After working nearly two years and traveling more than four kilometers -- compared to a scheduled mission of only three months and 600 meters -- the rovers have continued to extend beyond the space agency's original aspirations for them. The rovers' tracks are also a testament to open source, laying the groundwork for even more open source use in the US space agency's next generation of Martian movers, Jet Propulsion Laboratory senior computer scientist Jeff Norris told NewsForge.
"We've just gotten to a point that it's so far beyond its warranty, every day is amazing," Norris said of Spirit and Opportunity.
Norris, who oversaw development of the open source software components that help NASA engineers communicate with and command the rovers, said the performance of the open source-based control systems are pushing broader open source use and knowledge sharing at the agency.
"It's emboldened, or increased, our approach to use open source," he said.
Meters on Mars go a long way for open source on Earth
Norris indicated the rovers have blown away the previous Martian mileage record holder Sojourner, which logged 50 meters on the Red Planet.
"The whole point [of Spirit and Opportunity] was to drive beyond the horizon, but now it's driven beyond the horizon after that, and beyond the horizon after that."
Still, there is plenty more on Mars to see, Norris said, pointing out that the rovers have not even driven the equivalent of Pasadena to nearby Burbank.
Yet the miles the rovers have traveled for open source cannot be underestimated, and Norris said there is no doubt the positive performance of the mission's open source software components is helping drive further use of FOSS.
"The truth of it is, the components have performed remarkably well," he said, adding there was initial skepticism over the perceived ever-changing nature of open source software projects. "We haven't tweaked the software we use to control the rovers," he said. "We found it was quite stable and didn't need that attention."
The successful function and longevity of the rovers' Science Activity Planner (SAP), now open sourced and known as Maestro, has led to heavy use of open source components in the newest rovers: Phoenix, which launches in 2007, and the Mars Science Laboratory rover, which is scheduled for a trip in 2009. Open source software including a data-binding framework known as Castor, the Xerces-J validating XML parser, MySQL database, and Connector middleware were used to build the SAP, which delivers movement and function commands to the rovers.
"It went so well, we are increasing our use of open source software," Norris said. "And there's more evidence of open source in the ground tools," he added, referring to the use of Ensemble, the Eclipse platform and tools, Hibernate, and Apache in the new rovers. "Where we were maybe one-quarter or 20 percent of ground systems [for Spirit and Opportunity], I'd say 75 percent of the ground system software will be built with heavy open source use now."
International and institutional restraint
Although the space agency is coming around to the idea of open source software and development, there are still barriers, both to releasing the agency's developed projects as open source, and to the continued use of open source and sharing of information within the organization, Norris said.
While Maestro was released as an open source project, won NASA software of the year honors in 2004, and NASA successfully released its own OSI-approved license, Norris indicated other rover components he had hoped would be open source have not yet made it.
"There's been some progress, but it's been much slower than we had hoped."
For CLARAty, a software infrastructure for rover research, and Roams, a simulator for rover driver training here on Earth, Norris said NASA open source supporters were still working toward an open code outcome.
"It's frustrating because we get close, then we have to back up and do more paperwork," he said. "The goal is still to open source CLARAty and Roams."
Norris said there were two major hurdles in open sourcing such code: first, there is the matter of classification, which often lists NASA projects as weapons or munitions, even if they are not such applications; second is the association of JPL, which is within NASA, but is also part of Caltech, which is interested in the potential value of intellectual property and code developed on its campus.
"Our strategy is generally to explain we need this stuff to be open source to work with our colleagues," Norris said. "We also discuss, frankly, the real possibilities of recovering revenue from licensing something. We generally try to convince them the cost benefit comes out in favor of open source."
Martian monster trucks
Armed with the success of the Energizer Bunny-like Spirit and Opportunity rovers, Norris discussed the use of open source in the ground control systems for Phoenix and the Mars Science Laboratory rovers, which he said will step up in size as well as open source use.
Norris said the Spirit and Opportunity successors would be designed to last longer, at least a couple of years, and would be the biggest vehicles landed on Mars yet.
"It's huge," Norris said of the new Phoenix rover, which he likened to a Mini Cooper automobile. "It's the monster truck of rovers."
Set to find out about the chemical makeup and water at the Martian pole, the new space buggy will be controlled with more open source than ever, Norris added.
"I really do think [NASA's approach to open source] is improving," he said. "For one, we've established a very useful precedent."
Norris also referred to a new initiative to share source code among different agency projects and divisions at NASA, and an increasing willingness to consider open source, particularly in light of Spirit and Opportunity, which continue to be funded as long as they are working.
"Those unfamiliar with open source have a lot of questions," he said. "Now we have this good example and can say look at this success. It's a verification this was a good way to do business."