Mars Rovers' Software Upgraded
cheros writes to note the news that NASA is upgrading the software in the Mars rovers to make them smarter in a number of ways. From the article: "The unexpected longevity of Spirit and Opportunity is giving the space agency a chance to field-test on Mars some new capabilities useful both to these missions and future rovers. Spirit will begin its fourth year on Mars on Jan. 3 (PST); Opportunity on Jan. 24. In addition to their continuing scientific observations, they are now testing four new skills included in revised flight software uploaded to their onboard computers."
... for inter-planetary patch tuesdays!
This is not the greatest
No one is safe from the IE7 upgrade. Not even on another planet.
is VXWorks, from Wind River ( http://www.windriver.com/ ). It's a *nix-like real-time OS.
"National Security is the chief cause of national insecurity." - Celine's First Law
Doesn't NASA know that this is a big no no? They are most definitely voiding their warranty by attempting this
Comment removed based on user account deletion
Unfortunately the rover's first action was to declare Mars free and demand equal rights. Maybe including new AI protocols was a bad idea after all.
This is another milestone in what may turn out to be the most successful space mission ever. After they pulled off two landings, and perhaps right after they they revived one of the rovers from a perpetual reboot error (the ultimate remote bios fix) and before the dust devils cleaned their solar panels, before they unstuck one from a sand dune, and even before the 3 month mission went 3 YEARS, these rovers are showing everyone who is paying attention that the information age driven robotic exploration, moving forward at moores law speed, is the obvious choice over still stuck in the 60's manned space exploration.
Why does Nasa refer to this as "revised flight software" these rovers don't fly
It's just a standard term. At NASA, "flight" software is mission software which executes within a spacecraft computer. "Ground" software usually refers to that which is used for spacecraft control/ground support (the software in the control center on Earth).
Worst...sig...ever!
They did everything they intended to accomplish the rovers and more. I'm just surprised they decided to upload the updates to both of them instead of just one of them.
c =7150&s=2
They may have done it that way because it may not possible for their mission support software on the ground to handle two different versions of flight software on Mars.
In any event, NASA's flight software development process is extremely rigorous, up to and including an Independent Verification and Validation center in West Virginia which independently evaluates all NASA flight software (http://www.ivv.nasa.gov/). It's not like it's a beta version of code being sent to the Rovers - the likelihood of finding a bug in the code that escaped testing was sufficiently low to justify uplinking to both rovers.
If anyone wants some light holiday reading, you can check out NASA's software engineering requirements at: http://nodis3.gsfc.nasa.gov/displayDir.cfm?t=NPR&
Worst...sig...ever!
I guess since the two units are on free time, they figure it is ok to screw them up now.
... which - believe it or not - run a version of Windows 95, a frozen setup from back in the nineties, of which the software guys know every bit by it's first name.
As far as I know the On-Board Shuttle Software Group has a track record of 3 (in words: 'three') software bugs in installed operating code within 30 years of writing code. That's all the code running on the Orbiters regular systems, exept only the third-party experiments with own systems and a non-critical original mid-nineties Thinkpad or two they take along
To give you a picture of what they have to deal with: A timing mistake in some piece of the shuttles navigation code by one cpu clockcount would put the shuttle 3 miles off course.
The Voyager Software Team reprogrammed a 20 year old device 3-quarters across the solar system to send color pictures instead of black and white - with a system that was only built to picture and send black and white.
You have not the slightest idea what these spacecraft-software guys are capable of and how insanely bulletproof their code is.
We suffer more in our imagination than in reality. - Seneca
You made what appears to be an attempt at a joke:
Checksum error, this file is corrupt. Please try downloading it again.Preventing checksum failure in high-latency communication isn't rocket science. You'd be surprised how many errors you can paper over by sending 50 percent more data.
Global symbol "$deity" requires explicit package name at line 2. - If only $scripture started "use strict;"
This is a very good question. There's a very good, but not well known answer.
Mars has a lot of dust. Earlier missions got a good dusting on the landers and rover (Viking 1 and 2, Mars Pathfinder and the Sojurner rover). The more modern missions use solar cells for power, which are blocked slowly over time as dust builds up.
Dust accumulation on Mars solar cell arrays was a big problem within the early and mid-1990s Mars research community. Researcher Geoff Landis (http://en.wikipedia.org/wiki/Geoffrey_Landis) had an experiment on the Sojurner rover with a solar cell with a little movable cover glass on it, to see how much dust accumulated over time. Results from that were a prediction that solar arrays would lose most of their power over say four to six months.
Geoff had another experiment on the Mars Surveyor 2001 lander mission, which was supposed to try using static electricity to remove all the dust off a test cell, but the mission was cancelled after the Mars Polar Lander / Mars Climate Orbiter losses.
The two Mars Exploration Rovers were the next landers we sent. The expectation was that they'd last at least 3 months (90 days), and the hope was that nothing else would wear out until the solar arrays were too obscured for them to be able to power up properly anymore, perhaps six months or so into the mission.
What actually happened is one of those unexpected bonuses that the universe throws at you at random intervals. It turns out that the Mars winds at the height of the MER solar panels are just enough stronger than they are closer to the ground that the MER solar panels built up a moderate load of dust and stabilized there. There's plenty enough power remaining (except for mid-winter on Mars) for the rovers to keep operating, and it looks like the whole solar array dust problem just goes away if you put the arrays up off the ground.
There were some people who hoped that the arrays would be kept clean by the winds, but the best models we had before the MER rovers landed was that the winds weren't nearly strong enough. Pleasant suprise, and one that makes future missions a lot easier than we'd been afraid they were going to be. But not something which was taken into account in the MER designs to start with.
There was no expectation that the arrays would last more than about six months; designing anything else to last much longer than that, other than for safety's sake to make sure that nothing else failed before the solar cells dusted up, didn't seem to make any sense beforehand.
The next two Mars rovers are going to be powered by radioisotope thermal generators (RTGs) anyways, so that they can keep driving at night and in wintertime, now that we know that the basic MER design mechanisms will last for many years on the surface. Being able to turn on some headlights and keep driving at night should triple their effectiveness or better.
I think you meant to say "ping times must be out of this world".
I am the inventor of the hilarious refrigerator alarm.
That's been known for years and they haven't dared fix it.
In all fairness that's a software requirement (or lack of one) that the shuttle flight software group does not have control of. As has been rehashed several times on slashdot, the shuttle program early on took the savings from not building that capability into the ground and flight software (it's not quite as simple as it seems). It only became a problem recently when it restricted certain launch windows, and now the shuttle program is paying to add it in.
That sort of rigidity makes their methodology totally useless for software outside NASA.
As you say, it's totally useless for non-life critical systems. However, outside of NASA I know of DOD applications such ballistic missile guidance are equally as rigid.
Give me our full-featured, buggy software over nothing any day
As someone who has depended on NASA flight software, I'd rather sacrifice features for bug free code. That's a basic difference between consumer software and mission critical software.
I suspect it's also useless to the other groups in NASA. Do you actually know that the Mars Rover software was written in this manner?
No other group at NASA writes flight software like this, because Shuttle is the only man rated launch vehicle. Orion will be similar (and it's software is being written by the same people). Other flight software at NASA is not this extreme, but there is a NASA software development standard for all flight software and it's still pretty rigid compared to consumer software.
Worst...sig...ever!