2009-04-27

Yestersol's drive went splendidly, covering 88.528m. This is close to the theoretical maximum for the sol (based on the drive time), and is a new single-sol Spirit record.

"You must be happy," I tell Art. He's always complaining about not getting to drive, and now we set a record on his watch.

"Yeah, well ..." he says. "We didn't drive a hundred meters, though ...."

I roll my eyes. Some people are never satisfied.

Thisol we're going to dig a trench. The trenching sequence is mostly built already -- we're just going to reuse the one Opportunity used on sol 73, with very slight modifications, and we need to put a small wrapper around it. By the time I show up, Eric's already done most of the work. He's also already done most of the pre-trench IDD work -- it seems like a long time since I did any IDDing; I actually kind of miss it.

So I decide to kill a little time by playing with my new Sony Clie. I take a few pictures in the science meeting, and a few more in the SMSA. I get to chatting with Rich Petras, look at my watch, and realize I'm five minutes late for the activity plan approval meeting. D'oh! Time really does fly when you're having fun ....

During the meeting, Jeff Biesiadecki comes by to talk about the trenching sequence. There's a rock in front of the right front wheel that's got him a little nervous. The wheels are open on the rover side, so rocks and dirt can get in, and we have no way to articulate the wheels to make the stuff come back out. Normally they just sort of work their own way out, but Jeff sees this rock as being just the right size and shape to jam in the wheel and maybe slice through some of the cables. "That would suck bad," he says, "to use the proper engineering term."

So Jeff's suggestion is to drive backward a small distance before we start trenching. But then we won't be digging the trench where we did the pre-trenching IDD work.

"Well, you're scaring me," SOWG chair Mike Carr says. "The last thing we want to do is risk anything for the sake of this observation." Trenching in the exact same spot as we did the IDD work is not a requirement, he says, so we have a solution.

Jeff raises another concern. The rover is tilted about eight degrees right now, so it might slide while we dig. This will sort of spread out the trench, and it won't be as nice. "That will suck," Jeff says. "But it won't suck bad."

We implement Jeff's suggestions, of course, even though Eric seems to think they're a little overstated. "I like Jeff," Eric says, "but he's a doomsayer. He has a reputation at the CAM for predicting doom."[1]

Well, that's a relief. Because I'd like to keep using this thing.

[Next post: sol 117, May 2.]

Footnotes:

[1] Although, to be fair ... Jeff knew more about the rovers' mobility systems than any of the rest of the drivers, having written the low-level on-board software that drives them. He'd put them through their paces during testing and knew where all the bugs and vulnerabilities were, so it's possible part of the difference was that he was just more aware of what could go wrong. It's worth noting that as the project has gone on and we've had incidents on the surface, we've become, in many ways, more conservative -- closer to where Jeff was when the whole thing started.

It should have been telling that Jeff and Mark Maimone -- Mark having written the high-level software that sat on top of Jeff's -- who had the most experience driving the vehicles during testing, were more conservative than almost anyone else at the time.

2009-04-26

Today's the first day of our Rover Driver Exchange Program, which is what I've dubbed Eric and Chris's experiment in switching rovers. Chris will drive Opportunity today, and Eric Baumgartner -- the IDD FSW lead, who's been driving Opportunity -- will drive Spirit.

Which only adds to my surprise when, the second I walk in, Art says, "You're our rover planner today."

So I get to it. Autonav left us in front of a relatively large crater (we have a damn cool picture of the rover peering over the crater's edge, its shadow stretched out along the bottom), and before he left -- wherever the heck he went -- Eric planned out a reasonable path around it. I don't see anything obviously better, so I just start fleshing out the sequence. It doesn't take me long to turn Eric's six commands into the hundred or so commands it will actually take to do the drive.

While I'm on that, Squyres comes in to remind everyone that Opportunity will be completing 90 sols of operations today. "We have now achieved full mission success for both rovers," he says. "Complete success by anyone's criteria." Again.

Eric returns. It turns out, not surprisingly, that he had a very good reason for leaving -- he had to go talk to the NASA Office of the General Counsel. He doesn't specify why, and I don't ask. But there are only so many reasons something like this happens. My bet would be that Eric reported an ethical violation, one serious enough to get the OGC involved. Whatever happened, when they want to talk to you, you go. So he went.

Now that he's back, the Rover Driver Exchange Program starts showing its value. At the beginning of each drive sequence, we've been setting some parameters and saving them to EEP (one of the rover's on-board non-volatile storage areas). But EEP is a finite resource: save to it too many times, and it stops working. Since the parameters don't normally change from day to day, saving them when they haven't changed just wears out the EEP for no reason. So Opportunity has been avoiding saving to EEP whenever possible. It's definitely a good idea, so we make the change.

In a similar way, Spirit's been avoiding reinitializing the PMA when we don't see a need for it. Opportunity's been doing it frequently. This costs motor revs -- another finite resource. Eric doesn't seem to have been too thrilled with this practice, and when he learns that we don't do it, he looks happy. I have a feeling Opportunity won't be reinitializing the PMA so often in the future.

The rover should be able to make good time tomorrow -- once we get a little way past the crater, we've got a nice, clear path ahead of us. The one thing Eric and I don't like about the drive is that the first part takes the rover through a small hollow to the right of the crater. This shouldn't be a hazard, but we're not too comfortable about it. The slope of the hollow's rim is about 15 degrees, close to the rover's limit of 20 degrees. The rover can actually negotiate much steeper slopes -- the mechanical limit is about 45 degrees -- but we set it to 20 degrees for safety. If the rover decides it's on a steeper slope than that, it stops driving. So if our estimate of the slope is off by a few degrees, or if we've missed something, the drive will cut out early. At the activity plan approval meeting, I express it this way: "If we make it through the first ten meters, we should have a great drive."

Tomorrow the scientists plan to dig a trench. I haven't been involved in trenching before, so I'm looking forward to that. This plan leads to some argument at the activity plan approval meeting, though. Trenching, and the IDD work that precedes it, will consume a fair amount of energy, so we can't use so much energy today that we won't have enough left over for that work tomorrow. But Squyres thinks we're being too conservative in our power models -- we could drive another 20 minutes today (he thinks) and still have plenty of energy tomorrow. So he and Art debate this for a while. In the end it's Scott Doudrick's call, and Scott is in a foul mood today already. (He's normally our TDL, and today he's doing two other people's jobs as well -- for the first time. He's stressed.) "No!" says Scott, and there endeth the argument.

Our first-time activity du jour is to add drop-ins into the rover driver sequence. "Drop-ins" are what we call pre-planned science activities that can be dropped into the plan if it turns out that there's room for them; we've been using these since early in the mission to help us maximize science return. But we've never put them in the drive before. Today the concern is that the drive could error out when the rover is trying to drive through that hollow, and the rover would end up just sitting there for a couple of hours. So we work out a way to have the sequence detect this situation and respond to it by running the drop-ins.

As it turns out, we're able to find a way to improve the drive's chances of success -- which will make the drop-ins irrelevant, but by then we've already put them in, and we might as well leave them. We get another downlink pass that brings more imagery, and it turns out that if we head off even farther to the right, we can negotiate a way around the crater over almost flat ground -- no hollows there. So Eric picks out the waypoints and I sequence them. It turns out to be the longest blind drive we've ever planned on Spirit -- 54m -- and after that, autonav will fill out the sol. We won't make 100m thisol, but we might come somewhere close to 90. Which would be yet another new record.

There's a reporter here from, of all publications, AutoWeek. I talked to the guy on the phone several weeks ago -- very nice guy; his dad worked on Voyager -- but apparently he's just now getting his chance to come on Lab. I keep expecting him to drop by the sequencing room, but he never does, and I don't actually see him -- though I do overhear him talking to Justin Wick at one point, and he says something about having talked to the Opportunity drivers. So I'm OK with that outcome -- at least he got to talk to a rover driver, which is what he wanted. But I'm sorry I missed my chance to meet him.

As the CAM is winding down, Squyres says something about the hills getting closer all the time. "What will we see as we get closer to the hills?" I ask. "Well, I confidently predict we'll see more rocks," he jokes. Then he gets serious. "We'll get a chance to see bedrock -- we can see bedrock on the hills, even from here, but it's way up there, and I don't know if we can get to it."

"There was a lake here," he adds. "I know it. I just can't prove it yet."

The free ice cream will be discontinued soon -- this time, I think, for good -- so I decide to take advantage of it one last time before it's gone. While I'm up there, I run into Chris.

"How's the Opportunity driving going?" I ask.

"There's not much of it," he says. They're terribly power-constrained thisol, and as a result they've been squeezing the drive. "They've cut us down to fifteen minutes," he says.

That's a shame. But at one point it looked like they weren't going to get to drive at all, so it's better than nothing.

Courtesy NASA/JPL-Caltech. Just to put things in perspective, this is the traverse map showing the road ahead. The solid red line is everything we've done up to this point, and the dashed red line was how far we had yet to go.

2009-04-25

Once again, things have gotten a little too routine, so we've been asked for something unusual. They want to MTES a couple of nearby rocks, but we're not close enough to do it from here. So we're going to drive about 12m to a position near both rocks, MTES them from there, and drive on.

And this wouldn't be a problem except that the MTES's field of view is so narrow. The rover might (read: will) slip while traveling those 12m, which causes it to lose track of its position and thus to become unable to accurately aim its instruments. But we don't know how badly it will slip, so we can't correct for this in advance. It's like hitting a pinata blindfolded -- when the pinata is the size of your thumb. And you only get one swing.

Robin Fergason, the MTES PUL for the day, is just as worried about this observation as John and I are, so she and I spend some time looking at the rover's geometry, ensuring that the rover's own body won't block the target. It's a good thing we did so: the left solar panel will almost obscure the rock; if our simulation is off more than a little, we'll waste our shot. We could turn the rover a little to the right so that the rock will be visible through the "notch" between the left and rear solar panels -- but then, the HGA gets in the way. To heck with that: we end up adding commands to turn the rover to face the rock.

This isn't the first time we've had a concern about hitting a target with the MTES. The combination of slip and the MTES's narrow FOV has made this problem particularly acute for that instrument. Indeed, this problem goes all the way back to our drive to White Boat -- my first solo drive. But Robin reassures me that we've never missed one yet. There have been a few partials, but we've always come close enough for them to get the data they were after.

Thanks to my perverse nature, this makes me more worried about this drive, not less. Now that I know we have a perfect record, I really don't want to spoil it.

The rover does have a feature, visual odometry, which will let it notice and correct for slippage. But that's much slower -- it will take half an hour or so out of the day's drive -- so when Robin and I pitch the idea to Squyres, he nixes it. The observation's not important enough to justify that cost, he says. "Just take your best shot."

So that's what we end up doing. John works out a path that will avoid large rocks (which contribute significantly to slip) as best we can, and then we just cross our fingers. We've done all we can.

I really, really don't want to blow our perfect record, though.

At the end of the activity plan approval meeting, Art habitually asks the same question of the rover driver, the TAP, the SOWG chair, and others: "Good plan? Go forward?" When he asks Squyres that question today, Squyres shrugs: "I wouldn't put it in my top 10 sols of the mission or anything, but it's OK." "Mediocre plan, go forward?" Art asks. Squyres laughs and agrees.

We're finished and leaving almost before I know it. The day's planning started at 6:30AM (I came in at 9AM; it's so much nicer to be the later shift), and we're officially done at 2PM. Everyone else loves the compressed schedule, but I'm not a big fan. We spent every sol of the nominal mission planning the rover's day as efficiently as we could, and we took the time (as much time as we possibly could) to do it properly. On the compressed schedule, we're not doing that any more -- which means we're not maximizing the value of the rovers. This bugs me, but there's no solution short of returning to Mars time, and there's no hope of that. (To be fair, switching to Earth time was a money-driven decision as much as anything else: there's less money to run the extended mission than there was for the nominal mission, and we have to compromise somewhere. Returning to Earth time was just a side benefit. We're doing the best we can with the money available, but this just seems like such a waste.[1])

Compounding the problem, most of the scientists will soon be returning to their home institutions, leaving us to do more with less. During a lull, Justin Maki talks with some of us about a replacement scheme for taking post-drive panoramas. Until now, we've always figured out exactly what we needed and built a sequence to do just that -- custom-built solutions make for efficient operations. Justin's idea is to generate a bunch of panorama sequences up front, and then they'd just choose one of the canned sequences. The canned sequences won't be exactly what you want -- you might have to take more images to cover the region of interest, for instance -- but we'll be able to do it faster, because we won't actually have to build the sequences each time. He's going to write a Perl script to generate the sequences automatically, so I try to talk him into providing the script to the scientists, so that they can generate custom panoramas quickly. This would be the ideal solution, as I see it, because we'd still be able to build the sequences fast and yet we'd be making efficient use of the rovers. But I'm unable to convince him, and eventually I give up. Inefficiency wins again.

As it happens, today's one of the days when our current level of inefficiency bites us. I've been chewing on the MTES problem the whole day, and on my way out, I think of the solution. The problem was that the rock we were aiming for was off to one side, so even a small amount of slip could cause us to miss it. We should have driven straight at the rock instead; this would have mitigated the slip effect, making it more likely that we'd at least get a partial result. If we'd been on the old schedule, we'd have thought of this in time to do it that way. But it's too late now; the commands have already been uplinked. At this point, we'll just have to trust the rover.

[1] And, to be fair, practically everyone but me hated working on Mars time -- at best, they were exhausted and were quite relieved to switch to an Earth-time schedule. As inefficient as the Earth-time schedule might be, it's even more inefficient to burn out your best people so that they leave the project for another one that lets them see their kids. I get it. But if I were the only person concerned, we'd be on Mars time to this day.

2009-04-22

The drive sequence is coming along fine when I show up. Not much of a surprise.

John seems to be a little irritated that I'm there, as if he's taking it as a statement about his competence. Or maybe it's nothing to do with me: the timing's tight, he's been here since 6AM, and he not only has to build the sequences but also explain everything he's doing to Ashitey as he goes -- in addition to the usual business of continual interruptions from the scientists and managers. So maybe he's just stressed.

Either way, I limit myself to pointing out a couple of minor things that really are problems, and otherwise try to hang back as much as possible. As soon as I can politely break away, I go to the SMSA to talk to Mark Maimone about the results of the drive sequence Chris and I planned the other day. One of the mid-drive waypoints timed out, but that wasn't much of a surprise; that waypoint was thrown in at the last minute anyway and the sequence was designed to function properly even if we didn't make it to that position. We didn't cover 100m, much less 80m, but we did traverse 73m, and that's pretty good. The rover followed the path we wanted, it just didn't go quite as far along it as we hoped because the autonav spent a lot of time thinking about obstacles. This is a perfectly fine result; that's the kind of thing autonav is supposed to do. So it was a good sol.

I also run into Chris Leger, who confesses to having spent a partly sleepless night worrying about the drive sequence. While I'm talking with Chris about this, John Grant walks by. "Hey, did we make it to a kilometer?" he asks.

"No," I tell him. "We're at 986 or something."

"OK, but you have to make it to one kilometer today," he says. He explains that the kilometer bet is back on after all, and if Spirit doesn't make it to the 1km mark nextersol, he's the one who's going to have to buy the margaritas. I reassure him that we'll make it.

Chris goes off to plot out our schedules for the next few weeks, and I go to meet my visitors: Tracy and her son (John), Trish and her son (Matthew), and Mike Gan -- who's also in our group. Tracy and Trish claim to have adopted Mike.

So I show them around, and it's kind of like what I did with Susan's visitors the other day. Only this time, there are actually people around, doing real work. John Wright's mood has improved by this time; he voluntarily starts showing the kids our software. But since the room is busy, I take them upstairs to the Opportunity floor (currently empty) to give them a chance to play with it themselves. I also take them up to the sixth floor, where Opportunity is having its SOWG meeting -- but these meetings are boring for me, much less for a nine-year-old, so I just quietly explain what's going on and then usher them out.

Then we walk down to the ISIL. MER has decided to run the testbed rovers all day today so that kids can stop by and see a rover in action. On the way down, I'm killing time talking about the rovers. Matthew is trailing along beside me, listening intently. John starts hopping on one foot as we go downhill, and Matthew joins him. Tracy and Trish start laughing. "Oh, man," Tracy says. "Kids." I start hopping on one foot, too. "Yeah," I say, "you can't do this just anywhere!"

Whoever decided to have the rovers moving around in the ISIL knew what he was doing. Both Matthew and John are fascinated and full of questions, which I try to answer as best I can. When they ask why we don't just drive the rovers in real time, with a joystick, I illustrate light-time delay the same way I did for Ethan and Jacob: "Imagine you're playing Quake," I say, "and there's half an hour between when you press the fire button and when you see whether you hit the guy." This works.

John becomes borderline scornful of the rovers because they're so slow. "My car is way faster than that!" he exclaims.

"True, but your car needs someone driving it all the time. The rovers can drive themselves."

2009-04-21

Art's complaining again that he never gets to drive, but today we should be able to put a stop to that. The drive we're planning should go about 80m, maybe as far as 100m if everything goes well. It's amazing how quickly these longer distances have become merely routine.

In fact, Chris has the drive pretty well complete by the time I arrive. I sit down with him and watch him work, occasionally pitching in suggestions but mainly letting him finish what he started. We successfully ended up on Missoula Crater's rim on the last drive, and though the rim ended up being broader than we thought (so that we can't see as much of the crater's inside as we thought), the scientists are happy with what they got and we're moving on. As usual, we present his version of the drive at the activity plan approval meeting, then Chris leaves and I take over.

There are some features of this drive I'm not completely comfortable with, but I decide I don't have time to replan it. Instead I spend my time going through what's there, checking out all the little details, making sure the fault-response logic works. While I'm trying to concentrate on this, I get interrupted to deal with a reported RoSE problem. Part of the routine maintenance of the spacecraft is setting up comm windows, telling the spacecraft when it should try to communicate with Earth and through which path (via one of the orbiters or direct to Earth). As with all spacecraft commanding, they use RoSE for this, and one of the people responsible, Bill Nelson, seems to be having a problem with it; Theresa Kowalski has brought him by to talk to me about it. I ask a couple of questions. He's not doing anything obviously wrong. But I don't have time to deal with it right now, so I explain that I'm on the clock, in the middle of planning thisol's sequences, and can this wait until later? Sure, they say, and then they keep pestering me anyway.

Something they say leads me to an idea. Bill runs RoSE by remotely logging into one particular system, but it's a strange one to be using -- it's one of the systems that's still configured for launch/cruise ops, not for surface. "Why don't you try it on one of the surface ops machines?" I ask, and that solves the problem. They've been using the wrong machine all along, and noticed now only because someone apparently deleted a file on the old systems. I hadn't thought about it before, since I don't use those machines, but it seems like a mistake to leave them up -- it's asking for trouble like this. Unless there's some reason for keeping them that I don't know about, they should reconfigure them for surface ops or take them off the net.

At least I can get back to work.

Driving away from here is a little tricky because, being on a crater rim, we have to deal with the ejecta blanket -- that is, big rocks. We also have to avoid a smaller secondary impact crater to the east; there's some concern from the project management -- though none from us -- that if we got into that smaller crater, we wouldn't be able to get back out.

An unusual feature of this drive is that we're using autonav to send the rover into a region we can't see, and this turns out to be the big issue of the day. Previously, even when we've used autonav, we've been able to see the region the rover was entering. We couldn't see it well enough to plan a blind drive through the terrain, but we could at least see the general lay of the land. In this case, we can't even see that; the terrain is completely blocked from our current viewpoint as well as from previous days' images.

I'm usually more paranoid about these things than anyone, and I'm not the least bit concerned about this. I've seen the performance of autonav over this mission, and I strongly believe that if there's dangerous terrain, the rover will correctly avoid it. But the mission managers manage to work themselves into a tizzy about it, so I have to go stare at an orbital map of the terrain with them as they argue about it. Occasionally I make reassuring noises, but mainly I quietly watch to see how it's going to go before I jump in. As it happens, they basically talk themselves into believing that the rover will be safe. If uke throws himself, you don't have to throw him.[1] I get back to work.

So far we've driven 913m, so our next target is to hit 1km. We aren't likely to get that far tomorrow -- though we might; the best case for the drive is that we'd cover 100m tomorrow, which would set a new Spirit record and also take us over the 1km line. But we don't really expect that. If autonav has to deal with hazards, as we expect it will, it runs more slowly. 80m is more likely, and would still be a new record.

During the CAM, it becomes clear that the mission managers need a little reassurance from Mark Maimone, so I volunteer to run upstairs to fetch him. On the way back down, Mark raises the subject of our turn-to-rock command. The rover has the ability to scan the terrain immediately around it for something that looks like a rock, then turn to face the nearest rock it can see. The idea was that we'd just drive it to wherever -- maybe over the horizon -- and have it autonomously face any nearby rock; the next day, we'd have the option of IDDing that rock without spending an extra sol on an approach drive. We've never done this on the surface, because we've always either had a particular rock we were supposed to face, or we've had a particular heading we were supposed to turn to in order to maximize comm. But Mark would like to try it out. His idea is to drive to a chosen spot, tell the rover to turn to a rock, take an image to see what happened, and then turn wherever we really wanted to go and drive on. This way we'd achieve the real driving objectives while still exercising the rock-finding capability. He already knows it's too late to work this into thisol's drive, but I tell him I'm up for it. "Don't let anyone else do it before me, though," I add.

The nervousness about the drive seems to have mostly abated, but there's a fresh concern about the next sol's planning. Tomorrow is a "Mars weekend," one of the days where the planning cycle flops over. As a consequence, we have nothing to do that day, but the uplink team needs to be in extra early -- starting at 6AM -- the next day. (It's a weird feature of the Earth-time schedule: occasionally we go from being way, way early for one sol to being time-crunched for the next, with an Earth day in between.) And they have to be uplinking the commands at 3PM. The reason they're nervous about this is not just the suddenly tight schedule, but also that John's RP-1 solo for the first time that day, and Ashitey is RP-2 solo for the first time as well. So Arthur asks me to come in, just in case.

Sigh. Well, I was going to come in later that day anyway, because it's Lug Your Spoiled Brats To Work Day and I promised to show Tracy Clark's and Trish Santos's sons around the MER area. So I'll come in a little earlier, verify that everything is working perfectly fine without me, and the kids will give me a good excuse to blow out later.

Nagin Cox[2] is moving on. Apparently -- this is the first I've heard of it -- she's been very unhappy about her role on the project. She thought she'd get to do a lot more technical stuff, but it's all been budgets and schedules. (And there's a lot of this going around, she tells me: a lot of the cruise people didn't feel welcome any more when surface ops started.) So she's been looking for other opportunities for a while. One of them, being part of the President's team looking into the Lunar/Martian manned missions, was looking very likely for a while, then fell through for reasons she doesn't elaborate on. So now she's going to work for this upcoming telescope mission, looking for planets around other stars.

2009-04-20

No rover driver needed today -- again -- though this will probably be the last day that happens for a while. So it's a short day for me, or would be if I were smart.

My day starts off pretty well. I knew they didn't need me, but I check in just to make sure anyway. Then I take a break for an hour, hanging out and chatting with Eddie Tunstel.

Eddie, like Ashitey, has worked on the project since back when it was FIDO. He's amazed by the drives we've been doing. FIDO had similar capabilities to MER, but they were far more conservative driving it. Even when they took it out for field trials, they didn't feel comfortable with blind drives of more than 3-5m, and a paper to establish the state of the art at the time projected 10m/sol. Eddie and Ashitey were much more aggressive than the mission managers, because they understood the vehicle's capabilities better, but even they would have laughed at the prospect of covering 140m in a single day.

Eddie's now working on a paper to describe the rovers' slip characteristics. One of the things he's trying to do is to separate two issues: how much the rover slips because the soil or rocks give way under its wheels, and how much its effective wheel radius is changed by sinking into the soil (which produces a similar effect: the wheels are effectively smaller, so the rover covers less distance each time the wheels turn). He cheerfully admits we won't be able to completely separate the two issues, so no doubt the paper will spark other papers, arguing about the numbers. As far as I can tell, that's what academic papers are for. Eddie is on the ball.

Then it all kind of goes downhill. The one thing I don't like about my movie-making script is that the software it invokes to actually build the movies can't generate movies that run at 15 frames per second. 30fps is no problem, and a few other values are supported. But you can't just pick whatever frame rate you want. So I download another movie generator, only to find it's apparently built on the same source code and seems to have the same restriction. I hack the source code, but the obvious approach doesn't seem to work.

I go home, but I can't stop thinking about the problem. So I do some more research and find another movie generator that does let you pick your own frame rate. I figure out how to use it, create a 15fps MPEG -- and when I try to play it, the movie frame creeps slowly to the right while playing. It's sort of like the way old TVs used to lose frame sync and start to roll, only horizontal instead of vertical.

2009-04-19

Chris tells me there's a bet on: after Opportunity's record-setting drive, some of the Opportunity scientists bet that Opportunity will reach 1km total drive distance before Spirit. Chris took Spirit's side.

"That's unwise," I say. But Chris has a good answer for that. Once Opportunity makes it to its next target, Endurance Crater, the scientists are going to want to sit tight for a long time. Endurance is only about 700m from Eagle Crater (the one Opportunity landed in), so they'll have less than 1km on the wheels when they get there. By contrast, Spirit's next destination is still about 2.5km distant. It's the tortoise and the hare.

Apparently, the scientists who proposed the bet thought better of it later, and changed their tune. They still want to bet -- but only if they can bet on Spirit.

We'll be getting about 40m more of that 1km thisol. Our last couple of drives brought us close enough to Missoula Crater that we can get there in one more drive. We'll be doing a touch-and-go, a few measurements on a single soil target followed by a drive up the crater slope.

Chris already has the IDD sequences built and is working on the drive. This is my first solo RP-2 shift, and I get right to it. Chris's sequences are sloppy -- he's got a nonzero APXS overdrive after a MB touch on a soil target, he's not minimizing IMU on-time by running the instrument start/stop sequences when the IMU is off, the MI Z-axis retraction move after the MI series is 77mm when it should be 80mm. In other words, it's about like what I used to hand to my RP-2s. I sigh deeply. "I'm not a detail person," Chris says.

Neither am I. But this is one of the joys of being an RP-2: you get to criticize the work of others, while doing less yourself. I'm used to being on the other side of that relationship, so this should be good for some petty revenge, at least. Until it drives me insane.

I don't have much to do except fix up Chris's sequences, work that continues after he leaves. I wrap up everything and deliver, then move on to working on the uplink report and movies. While I'm doing this, the Uplink Verification Lead, Carolina, says we're using the wrong sequence to start the MB integration. We check, and sure enough, she's right. So I have to redeliver. Naturally, we're using a new uplink process, and nobody's exactly sure how I'm supposed to do this. But we limp through it.

One of the fun parts of my day is showing the animations during meetings. As RP-2, I still get to do that. The RP-1 generally shows the animations at the activity plan approval meeting; the RP-2 shows them at the sequence walkthrough and again later at the command approval meeting. Thisol, since Chris separated the IDD and the drive sequences, I show the IDD sequences at the APAM and he shows the drive; I show both sequences at both of the other meetings. One of the reasons this is fun is that I get to play with camera angles and stuff, a little like being a movie director. For the IDD sequence, I choose a dramatic low-angle shot, looking up at the rover from a position near the soil target it's investigating. It can be hard to make straight-line drives interesting, so today I show the drive from the endpoint looking back toward the start. Sadly, I sometimes think my art is wasted on this audience.

Since Chris is gone, I can use both systems to display the two animations during the CAM. Wheeling my chair back and forth between the two machines reminds me of when I used to do something similar in the computer lab at my undergraduate institution. When nobody else was around, I'd set up fractint (a Mandelbrot Set explorer) on several machines, then roll from system to system, looking at the results of whichever systems happened to be finished while the other machines continued to chew on the math. This is a lot like that, only the machines are a thousand times faster now, and I get paid for it. And it's for real.

Also, the chairs are more comfortable.

As we're convening for the CAM, Squyres walks in, shaking his head. "What's wrong?" Mark Adler asks. "We're getting into the worst part of a planetary flight project," Squyres says, "the part where they write papers."

Adler finds another problem in the sequences during the CAM -- we set the mobility time-of-day limit too early, so if the drive timed out, we wouldn't recover the right way. We have to fix that as well, and right after I deliver the fix (my second redelivery of the day), Carolina asks another question.

"We were taking the autonav images every three meters before," she says. "Are we still doing that?"

Oops. After the FSW upload, one of the arguments to a command we send before every drive was supposed to change from 5 (which caused the old setup to take an image every 3m) to 1 (which is how we get the same result with the new software). I knew this and have been doing it, but Chris forgot -- and I didn't check it.

So I have to fix it and redeliver again. At this rate, I'm going to set another record, but it won't be one I'm proud of.

So we check the changed sequences. (Happily, I wasn't the only one who needed to change something.) Everything is now officially OK.

Then I realize I didn't check something Adler asked about earlier -- do we have any drive or IDD error flags set that we need to clear? That information is usually in the downlink report, but for some reason there was no downlink report thisol, and I didn't get around to checking the telemetry myself. With a sinking feeling, I walk over to the SMSA and check the telemetry. I do not need to go through the redelivery hassle again. Fortunately, the error flags are all clear: the vehicle's fine, and we don't need to change the sequences.

I continue working on the uplink report while everyone else goes home.

And, of course, I discover a problem. After a drive of this length, we really should increment the site index -- our way of telling the rover it's in a fundamentally new place. But somehow Chris left that command out of the sequence (or accidentally deleted it), and I didn't notice, nor did anybody notice during the reviews.

This isn't a serious problem, so I debate about whether to even do anything about it. There's no threat to the vehicle, but it will make life inconvenient on the ground, since we'll have to do more work to keep tomorrow's images separate from the current ones.

I don't think Adler will want to change the sequence again, but I decide he should at least know about the problem and get a chance to make the decision. So I call his cell phone (he left an hour ago) and tell him about it. Somewhat to my surprise, he decides we should make the change -- we don't have to uplink the sequences until tomorrow morning, so we can CAM and deliver the sequences then. I guess it's a good thing I called him, after all. So I also call Chris Leger to bring him up to speed, and build a changed version of the sequence so that they can just bundle it tomorrow.

I'm about to go home when Walter Goetz bursts in rather dramatically. For some reason, the Phobos imaging sequence was kicked off 15 minutes late, and they missed the moon entirely, wasting 30Mbits (a significant chunk of downlink) in the process. He's agitated and looking for someone to complain to. I know the feeling, so I try to lend a sympathetic ear. "It's not your fault, of course," he says, "but it's very frustrating, yes?"

2009-04-18

The sequencing MSA is populated but unusually calm when I walk in. "Why isn't anybody panicking?" I ask. Turns out it's a restricted sol, meaning no driving or IDD work -- just remote sensing -- which simplifies things for everybody. Also meaning they don't need a rover planner today.

Nice of them to tell me. I could have slept in. I mean, I could have slept in even later.

As long as I'm here, I might as well go to the downlink assessment meeting, or whatever they're calling it these days. If there's no driving thisol, there's plenty in our future. They want to get to the Columbia Hills by sol 160, which is assuming an average drive of 69m per sol for 36 sols, plus 18 science-only sols. So we've got to net about 70m per sol, two sols out of every three, for the next month and a half. <Cartman>Schweet</Cartman>.

And it doesn't sound like Squyres (the current SOWG chair) is going to let them off the hook. For our 600m mission success criterion, they basically drew a curve (actually a line) and said, We have to ride this line. Then they basically stayed below the line, and panicked late in the game and let us do some real driving to get back on track. Not this time, says Steve: "I want you to get above the curve and maybe come down, not below it and go up." And, he points out: "For the mission-success drives, all that mattered was wheel odometry. For getting to Columbia Hills, we need straight-line distance."

And speaking of driving, Opportunity has blown us away once more: 140.9m in a single sol. 100m was going to be a difficult record for us to break; this one's likely impossible. Well, we can still be proud of what we've done. Like a bunch of losers.

I have random work to catch up on, so I'm still around for the activity plan approval meeting. Walter Goetz, a very funny and likable German (if you can believe that), has requested a Phobos observation which is a bit of a gamble, and Steve questions it. Squyres is a tough critic, but I think Walter has him figured out.

"How do we know we can even see Phobos in the daytime?" Squyres asks pugnaciously.

2009-04-16

Ashitey and I come in early again, continuing his education as a rover planner. Today he's primary, and I'm shadowing him. I'm still a little nervous for his sake about his doing this alone -- and then I remember that he's probably a lot further along than I was when we started surface ops. I'm not sure whether that makes me feel better or worse.

Frank stops by to say that our Linux Journal article got approved at last, and he should be sending it out in the next couple of days. "Didn't you guys win some kind of award?" Ashitey asks. Yeah, the Space Act award, which was basically a consolation prize for not getting Software of the Year. "We should have applied for Software of the Year this year instead of last year," Frank says, and I have to agree. There's momentum, people would have known more about what the hell we were doing, we'd have had tons of enthusiastic user testimonials, and so on. But we're hosed now: as I understand it, you can apply once and that's it.[1] Oh, well.

Once again, we have to have the sequences built and delivered by 22:00. The data isn't even going to start coming down until 18:00, and because our data is mixed in with Opportunity's data thisol, it might be until 20:30 before it's all down. So thisol will be tight. Ashitey and I start sequencing, but there's very little we can do without data.

Andy Mishkin pops into the room. "Even though they're not talking about your sequences, you might want to come on up to the SOWG," he says. So we go upstairs, and we're there when Andy announces the drive distance.

Seventy-five meters. The excited scientists applaud. To my astonishment, we came very close to the theoretical maximum for this drive; and I'm the record-holder again. (Well, for Spirit; Opportunity still has us beat by a wide margin. And it would be more accurate to say that I and Ashitey and John are the joint record-holders. But still.)

Ashitey shakes his head. "Chris is going to be jealous," he says. "He's going to log in from home, fire up the downlink report, and have a heart attack."

Aw. Poor Chris.

The sequencing is relatively uneventful. There's a bit of a ridge dead ahead and a near-hazard on the left, so we plot a 40m blind drive between them and then autonav 'til the cows come home. In the best case, this coming drive will beat thisol's new record. What a shame.

[Next post: sol 104, April 18.]

[1] Unless you rename your software, apparently, which is how some people do it. Seems dishonest to me.

2009-04-15

Saina Ghandchi's father died. Saina's a TUL, one of the more high-pressure jobs on the uplink team, and she's here anyway. She won't be going home to Iran for the funeral and everything for three weeks. And I thought I pushed myself too hard. Marc Pack offers to pick up her mail or whatever while she's gone, which is another one of those damn things I'd think of myself if I weren't such a moron.

Today the schedule is such that the afternoon team is the first-shift team, so I'm here in the afternoon but I'm RP-1. Ashitey is shadowing me again. We're both in a couple of hours early, so we spend some time building sequences, getting him further up the learning curve. (During which, Jessica Collisson pops in to say she just read my Zipcode Mars entry.[1] "It was clever!" she laughs.)

I get interrupted to participate in a logistics meeting, which I normally try to avoid. But they need a RP's perspective to help work out the next few sols. Jennifer, Andy, and Ron (thisol's SOWG chair) are trying to figure out how to make Earth time work over the next few sols, when data is arriving really late in the day, leaving us very little time to sequence. The plan shapes up to be an alternating sequence of remote-sensing and drive sols: we'll sit still and take pictures for the first sol in each pair, and drive on the second sol. Since we're not moving the vehicle on the first sol, we have more time to plan the drive. (This is almost the reverse of the idea we came in with; Daniel Limonadi, who's recording the rapidly changing plan on the fly, starts humming circus music as he flips the presentation slides around. Doot doot doodle-doodle doot doot doo doo ....) In the meeting I reflect once more on how much difference it's made that we have the right management on this mission: "I'm just concerned that we're asking people to do too much in one day" is a common refrain in the meeting.

After the meeting, Daniel asks if I forgot to create the movie for yesterday's sequences. I sure did -- it's what I was starting on when I noticed the IDD collision problem, and I never finished up. "It's no big deal," he says, "I was just wondering." "No, no, I have to do it," I insist. "It goes to my pride."

So I do that. John had been making the movies using the complete-waste-of-money SGIs, and I couldn't stand it, so I wrote some software to build the movies on Linux. He and I have been genteelly competing over this, pretending that we're just cooperatively seeking the best solution, and I think I have now definitively won. My solution produces higher-quality movies with twice the frame rate and less than half the file size, so we're back to not needing the SGIs for anything at all. Linux rules.[2]

Shortly after I've finished building and uploading the movies, the data starts flowing. I go to the SMSA to see how thisol's drive went. We didn't really know how the new flight software was going to perform, so we're a little nervous.

It went pretty well, I guess: we covered 69m, a new single-sol Spirit record! Chris will be happy; this was really his (and John's) drive. The autonav was running at about 32m/hour, which is not as good as Mark was hoping for, but it beats the heck out of the 13m/hour we got with the old software. Autonav used to be five times slower than blind driving; now it's only half the speed of blind driving. Put another way, the rover now can find its own way around Mars at about half of the theoretical peak speed it could achieve if it didn't have to think at all, a really amazing accomplishment -- and this is using a CPU that's only one-hundredth as fast as the one in a current off-the-shelf PC.[3] (Mark promises to figure out why it's so slow, which makes the rest of us laugh.) Even better, the front HAZCAMs, and later the NAVCAMs, show a nice clear path in front of us, so we'll get to do it again nextersol.

I'm late for the downlink assessment meeting, so I just miss the drive-distance announcement. But I give them something else to applaud, introducing Ashitey as our new RP. Ashitey has worked with most of these scientists since the FIDO[4] field tests, so he's well-known and popular.

So it's time for Ashitey and me to plan nextersol's drive. Unfortunately, due to some kind of data management problem, we didn't get the PANCAMs. This means we can blind-drive only up to the edge of the NAVCAM range data, which limits us to about 20m. Then we'll have to switch to the slower autonav driving for the rest of the sol -- well, at least that's not the penalty it used to be. It's a real shame we didn't get the PANCAMs; in this terrain, we likely could have done a 40m blind drive, straight ahead. But we can't do that safely with the data we have. I almost do it anyway, but Ashitey talks me out of it. We probably won't set another record with this drive -- the best possible case is something like 78m, but I expect to get more like 50-70m.

We also have to do two back-to-back autonav segments, so that we can do mid-drive science at the right point. For complex reasons related to the handling of timeouts, back-to-back autonavs have been a problem for us before. Ashitey and I come up with an unconventional solution, making the same logic handle the error and success cases cleanly.

There's a strict limit of 22:00 for us to deliver, and we're only 5 minutes late, which I think is pretty good. Ashitey goes home, but I have a lot of email and documentation and stuff to do. (I end up staying until 01:00.)

The MTES PULs are usually here as late as the RPs, and today is no exception. One of them, Robin Fergason, asks why an old version of her sequence's name is still recorded in the RML file. I explain that this is the correct behavior; it's how RoSE ties the renamed sequence back to the name it had in the activity plan, part of a feature that links commands and sequences written in RSVP back to the high-level plans produced by SAP.

"Of course, we're not even using that feature in flight," I say. "But don't worry, it was a lot of work to implement ..." I add as she laughs. "Not that I'm bitter." (Andy commiserates. "I don't think you could find a single person on MER who's not bitter about something.")

I almost didn't notice that we're using the new version of RoSE -- they installed it already. Which is good; at least it didn't blow up the first time anyone clicked on it or something. A couple of the new features aren't working quite as well as I'd like, but one thing in particular is working beautifully. RoSE had been very slow in generating sequence reports, sometimes taking half an hour or even longer. (Late in the development cycle, I made it convert times in the report to LST, and for some reason the time conversion runs much slower on the flight LAN than on the development LAN.) We could never really afford that much time, but it's an even worse problem now that we're on an even tighter schedule, so it's one of the things I fixed in this release. Daniel Moyers says exactly what I was hoping someone would: "I thought maybe something was wrong -- I couldn't believe it was done so fast!" It now finishes in seconds.

Ah, that feels good.

Footnotes:

[1] Zipcode Mars was a really good idea from our outreach team: post pictures and bios of MER team members so the public can get a sense of the kind of real people who make a mission like this go. I was reading through other people's entries, trying to get a sense of what I should write, and I was just appalled. They were all, like, "Bill lives with his wife and four dogs in Temecula, California." Who cares?! So I wrote this. I never thought they'd publish it, but they did, without changing a word. Our outreach team rocks.

Readers of this blog will, however, perhaps find it surprising that (as I say in my Zipcode Mars entry) I hate writing about myself. :-)

[2] My distaste for the SGI boxes we were using should not be confused with my feelings about SGI as a company. They were very good to us, as they had been on Mars Pathfinder. I had just gotten annoyed by some technical issues involved in supporting our software on their systems, not to mention that the Linux boxes were way faster.

[3] The rovers use a 20MHz CPU whose design is a cousin of the PowerPC CPUs they used to use in Macs. That's right, 20MHz. It would have been mind-blowingly fast around, I guess, 1988.

For the computer hardware, we generally use old, slow parts, because (1) they're made with big fat transistors that are more resistant to radiation (on top of the radiation shielding they're given), and (2) they've been used before and are known quantities. There are places where you want to innovate and places where you don't; the rovers' CPUs are a single-point failure, not a good place to innovate.

[4] FIDO (Field Integrated Design and Operations) was a research rover on which the MER rovers were partly based. More details at JPL's site.

2009-04-14

On my way in, Ben Toyoshima says, "Hey, I saw your TV interview on Life & Times the other night -- you were pretty good!" Wow, someone actually saw it.[1]

I'm in early because I have visitors -- or, to be precise, Susan Kurtik[2] has visitors (her doctor and the doctor's two sons -- Nancy, Ethan, and Jacob), and Susan asked if I could show them around the SMSA and stuff. Susan's the bomb, so what the hell.

Nancy and her kids are very nice and enthusiastic, but it takes me a few minutes to recalibrate to dealing with kids. In the SMSA, I start pointing out the spacecraft subsystems, and I can see that the kids (they're maybe 10 years old) aren't following me. So I try a different approach. "They split up the spacecraft into parts, and there's somebody responsible for each of the parts," I say. "They sit there, there, and there ...." That works. A few minutes later, we're walking through a meeting room and I mention offhand that this is where the engineering and science teams get together at the beginning of the day to argue about the structure of the day. "So this is an argue room?" Jacob asks. "Around here, they're all argue rooms," I tell him.

I also show them the big science meeting room, and then the sequencing MSA, where I've set up HyperDrive. I let them play with the software, zooming around in 3-D, and show them the true-stereo view through the special goggles we hardly ever use.

I ask Jacob and Ethan, "So you guys are gonna graduate soon and start working here?" "Well, after our career in Major League Baseball," Jacob says. His mom rolls her eyes. "I don't think we have a lot of people working here who used to be pro baseball players," I tell him gently, and just as his face falls, I add, "so I guess you'll be the first!"

"Hey, yeah!" he says.

Right on, kid.

I'm back on shift for real today; since we're short a driver, I'll be working a lot of extra shifts. This is despite the fact that Ashitey is going to become a rover driver for Spirit -- not, as we thought yesterday, Opportunity. But he's not ready to be turned loose yet, so he's shadowing me again. So is John, but while I'm technically the primary RP-2 and he's technically the shadow, I'm still learning from him, not the reverse. It's all complicated.

Just after we've delivered the sequences, I'm getting ready to build the movie for the uplink report, and I notice something I hadn't noticed before. When we're closing the APXS doors, the IDD turret comes awfully close to the forearm. If the real vehicle does that, it might be just fine -- or it might trigger a collision-detection fault that will screw up the whole day. So I have to do the classic RP-2 thing: add a command to tip the wrist forward so there's no question of a collision, then redeliver the sequence. RP-2s have to do this so often it's not even a joke any more (Cindy, the SIE today, even bundled the RP sequences separately in anticipation of such an event), but it's funny that I'm doing it on my first sol. At least this confirms what we've been saying all along about the importance of having two RPs: Chris didn't see this when he built the sequence, and if we hadn't had a second (and third and fourth) pair of eyes looking over everything, it's entirely possible we'd have blown a sol.

Speaking of redelivering things, I find out only today that they want me to redeliver RoSE tomorrow. So I have to stay late, testing and building the new delivery. At the last minute, I decide to test one of the new features on the flight LAN, only to discover that it works fine in my development environment, worked fine in the test environment, but doesn't work on the flight LAN for some damn reason. So I have to spend even more time tracking that down and figuring out a workaround. Sheesh.

Worst. Delivery. Ever.

Bleah. I go home.

[1] A lot of people, as it turned out. Must be a popular show among JPLers -- people were mentioning it to me for days.

[2] Susan was my first boss at JPL, and indeed hired me in the first place -- she was the recruiter who came out to the University of Illinois at Urbana-Champaign while I was there. I adore her.

2009-04-13

Today something registers on me for the first time -- something that's been there since we switched back to Earth time, but I only just noticed. I'm sitting in the downlink assessment meeting and ... the shades are up. As part of our fatigue countermeasures, we've had blackout shades on all three floors since sol 1. We don't need them any more. I don't like Earth time, but I do like this.

I'm not scheduled to work today, but I'm here to shadow John, so I can learn all about being an RP-2. I'll be getting lots of practice: on our Earth-time schedule, the afternoon person is RP-2 something like four weeks out of every five. Speaking of afternoon and morning people, I also somehow get stuck making out a tentative replacement schedule for the Spirit rover planners -- we're all here, so at least I can get everyone to sign up to it without the multi-day delays of email. ("I want to be an afternoon-only person, as long as I get to be RP-1 a fair share of the time," I tell Ashitey. "Meanwhile, he got to be RP-1 all through the primary mission ..." John says. "That's right," I reply, smiling as I look John dead in the eye, "and all I want from here on out is my fair share.")

Ashitey, who apparently is going to become a rover planner for Opportunity, is also hanging out with us to learn the job. Ashitey's been involved in the mission since before it started -- back during the field trials for FIDO, the rover that evolved into the MER rovers -- and has been a Mobility/IDD person for MER, so he knows the rovers well. He's also spent a lot of time practicing building IDD sequences, though he's still getting the hang of it, and he hasn't done much driving at all. So he's getting a crash course, if that's the right term.

I thought I had the coolest T-shirt in the world -- my "Rover Driver" shirt. But one of the scientists, Nicole, shakes my confidence with her T-shirt: it's the special Google logo they had the day Spirit egressed, the one that shows Spirit driving down off of the Google logo while two blue-green aliens look on. Apparently, they gave them away at some meeting that happened to be held when the uplink team was asleep. And there are no more to be had. Damn it![1]

[1] I would kill and eat my own grandmother for one of those T-shirts. However, I'm pretty sure that's not how you get them. I wouldn't want to do a thing like that unless it had a pretty reasonable chance of working.

2009-04-08

One of the things I tried to do better than on any of my previous projects when developing RoSE was: write better error messages. I've developed a whole theory about this. They need to make sense at the user level (as opposed to the programmer level), should tell someone not intimately familiar with the software what's wrong and whether they can fix it -- and, if they can fix it, how.

On my way to work, Brian calls me about one of the error messages where I followed almost none of those rules. What the hell was I thinking? Fortunately, there's only one thing the error message can mean, and I'm able to fix the problem over the phone in less than a minute. But I should have done it right in the first place.

I've come in to do another TV interview. This one's with a couple of students from Glendale Community College; the best production in the class will apparently be shown on CNN. (And the interviewer is a beautiful young gray-eyed blonde, so that's nice.) This time I do much better; I talk a little too fast, but I keep it at the right level, and I'm relaxed and open and confident. I think it helps that we're standing, so I feel a little less trapped than I did during the seated interview the other day. It also helps that this isn't my first TV interview, so I feel a little more like I know what I'm doing. I did well, and I'm happy about it.

Today also brings a continuation of an email exchange I've been having with Susan Kurtik. In my last message to her, I'd written, "'Weekend?' What is this ... 'weekend'?" Today she wrote back: "A 'weekend' is when I use my computer at home to do work instead of the one at JPL."

[Speaking of which, this is where I started taking my days off, uh, off. The flight software upload was going on during this period anyway. So the next entry will be Sol 99's, on April 13.]

2009-04-06

As I enter the fourth-floor door, Ray Arvidson is exiting. "Hi, Ray!" I say pleasantly. Grumpy Ray says nothing. That usually means something is wrong.

So I'm prepared for the worst when I go to the SMSA to see how we did -- and we did fine. Just about perfect, in fact. Route66 is reachable, and we're pitched up a little more than we expected (3deg) but still under the limit (4deg). Our heading is a little bit out of bounds -- 124.2deg; we yawed more than expected for some reason. But this isn't likely to pose a significant problem. I don't know what Ray's problem was, but it doesn't look like it was us.

Maybe he just feels bad that Opportunity has put us to shame. The previous single-sol distance record, which has stood for a whopping two or three sols now, was Chris's last drive, a shade over 50m. Opportunity just finished a drive of 100.049m. Well, the race was nice while it lasted, but we haven't a prayer of beating that.[1] They might beat their own record, but we won't. Still, everyone's happy in the SMSA.

Meanwhile, the scientists are cheerfully arguing about their near-future plans. Apparently, Route66 is interesting enough to stick around and investigate it at length after the FSW upload completes. (Seems unlikely to me, but I'm sure they know their business. Come to think of it, maybe this is what Ray was so grumpy about. He wants to make tracks for the Columbia Hills, sooner rather than later, and maybe he's unhappy that the gang wants to delay.) Apparently, Route66 is the only other rock we've seen that is interesting for the same reasons as Mazatzal (or so says Steve Ruff). Alian Wang points out that, as predicted, rocks are getting smaller as we get farther from the crater, so if we want to investigate large rocks, we should do it now. (Route66 is not a very large rock, but we might look for one to explore on the way out.)

Today's schedule is unusually short because we have a party later: as of sometime in the late afternoon of sol 91, we officially completed 90 sols of operations on Mars. This means we have met every single mission objective for full mission success. It also means we need to get done by about 4:00, so that we can have cake and watch animations of the mission. Fortunately, I saw this coming, and built most of thisol's sequences yestersol. So when Julie asks, minutes after the SOWG, if I think we'll be able to finish the sequences on time, I'm able to say, "You want to see the animation?" Ah, that felt good.

Today is Bob's last day, again. He came back for one last set of shifts, and now that's over. I remember that he had asked if he could be the rover planner who signed the Activity Plan Approval form on his last sol (that's usually an RP-1 thing; he's never been the one to do it). So I let him. "If I'd known it meant that much to you, you could have signed all of them!" I tell him.

With the sequences done, I'm able to devote some time to a couple of guys from KCET (producer Saul Gonzalez and his cameraman, Per or Pere or something), the local PBS affiliate, who are here to (among other things) interview me.[2] It's my first TV interview, and I find myself making the same mistakes I made in my first radio and print interviews. The specific mistakes are things like not structuring my answers correctly, not including the question in the answer, and stuff like that. I also tend to worry a lot about the wording of my answers, and whether I'm going to blurt out something that makes JPL look bad. (He asks me something about whether I feel like I'm following in the footsteps of famous explorers such as Lewis & Clark and Amelia Earhart. I have this horrible impulse to say, "Amelia Earhart crashed," which is not a smart thing to say in any interview, much less on PBS. Fortunately, I catch myself in time to change my answer to something along the lines of, "Well, I don't know if I'd put myself in that category, but I might put the rovers in that category.")

But the fundamental mistake is having the wrong attitude about the interview. Since I'm so introverted, I tend to withdraw when I'm being interviewed, and it turns out that having to sit still with a camera aimed at my face just exacerbates this tendency. The right attitude is: they're here interviewing me because what I do is damn cool, and all I have to do is talk about it. I've gotten the hang of taking that attitude into radio and print interviews, and it works well for me, but I don't seem to do that in this interview. I manage to come out of my shell a little when answering a couple of the questions, and I hope those are the bits they'll actually show. I also sit down to show them an actual recent drive in RSVP, and I feel more comfortable about that part.

While we're looking at the drive, he asks if I've gotten better at planning the drives, and I tell him a true story. An important part of planning the drives is scanning the terrain for mobility hazards, places where it's not safe for the rover to go (usually because of oversized rocks). I've gotten to the point where I sit in front of the images and just pick them out without even thinking about it -- that's a mobility hazard, that's a mobility hazard. Well, recently, when walking across JPL, I saw a rock out of the corner of my eye, and before I could stop myself, I thought: "That's a mobility hazard; better not drive there."

When that's all over, I return to the sequencing MSA, where Angry Bob is reminding everyone how he got his nickname. The day's submaster sequence is killing the IDD sequence in a way that's unsafe and could damage the arm. Bob is livid; he just sent out email -- again -- about not doing this. Later he apologizes to everyone for raising his voice, but I tell him he just wouldn't be Angry Bob if he didn't do that once in a while.

I stop by and talk to the RAT guys on my way up to the party. The RAT guys are all New Yorkers, and among the pictures on their door are some pictures of actual NY graffiti -- images of a Mars rover. Apparently, someone painted these only a few blocks from their offices.

The party is pretty much what I expected -- 300 people in the SOWG room, mostly sitting in chairs or standing by the walls. They're showing an updated version of Stubbe's movie[3] on a couple of the projection screens. (People laugh whenever the rover does its roverdance, a reaction that annoys me.) A couple of the other screens show another movie created by Justin Maki, which just rapidly flashes through every image taken by Spirit so far. I think he said there were 14,000 to date.

They also show a short movie someone made to document Spirit and Opportunity's landings, and another documenting Spirit's anomaly. It puts all three of those events in perspective to realize that all those worried faces are now in this room, looking much more relaxed.

A bunch of people get up to talk, but I miss a lot of it because I get interrupted to help fix a problem with the day's uplink process. (Not my fault: someone accidentally overwrote a file.) I get back just in time to hear the last couple of speeches. Jennifer Trosper does her usual thing, congratulating everybody -- a little clumsily, but sincerely. She's at her best when she talks about how she noticed everyone's sacrifices, and how she used to say, all through development, that she wished she could find a way to reward people adequately for all they sacrificed. "I knew I never could find a way to do that," she says. "But when you look at the success of these missions, that's your reward."

Gentry Lee, an SF writer and one of our system engineers, says memorably: "I'd like you to imagine a 25th-century history book. George W. Bush will not be in it. Osama bin Laden will not appear. But there will be a sentence that will say, 'In the early years of the twentieth century, two robotic explorers went to Mars and forever changed Man's perception of our neighbor planet.'" I don't know if I completely agree (except about bin Laden), but it's a brilliant point all the same, and when he says it, I feel an actual thrill.

The party continues off-Lab, at Mijares Restaurant, but I don't go. I decide I'd rather go home and see my sweetie. On my way out, I go downstairs to get my bag, and in one of those weird coincidences, I'm once again entering the fourth-floor door at the same time Ray Arvidson is exiting. "Hi, Ray!" I say pleasantly.

2009-04-05

The good news is, we got the front hazcam images showing we're aimed right at Route66. The bad news is, we didn't perform the final 85cm of the drive. The rover believed -- wrongly -- that the last bit of the drive was too hazardous, and decided not to take that final step. This is not so bad, though; we just have about 2.3m to drive today, instead of 1.5m. All things considered, it could have been a lot worse. The drive will be short and relatively straight, important considerations for precision driving through this terrain.

The telecom guys also tell us today that we need to keep the rover from being pitched too far up -- we can only afford a nose-up pitch of 4deg or less. Now that we're close to Route66, it looks like this will not be possible; the rock sits at the top of a small hill, so when facing it we'll be aimed upward. As it turns out, there's not so much of a problem; the hazcam images exaggerate the slope of the hill, and when we measure it carefully, it's flat enough that we'll probably be OK.

The other consideration for the drive is to maximize science. The best case is to find a way to put the MB on a rock and the APXS pointing into the air. This will let them run the MB for long integrations during the day (when it's too warm for the APXS to generate useful data) and calibrate the APXS while it's cold, all without further moving the IDD or the vehicle -- and all while they're reprogramming the rover's brain. The only problem is that this is naturally difficult because of the orientation of the instruments on the IDD's turret. If we can't do this, we'll just do the APXS calibration alone (which is relatively easy; we just have to stick the IDD out in the air and point the APXS up), but we'd really like to be able to use both instruments.

To find a way to make this possible, I sequence a candidate drive, which Bob and I then spend two hours tweaking, so that we'll end up in just the right orientation relative to the rock. This would be easy if we were free to choose the final orientation of the vehicle (we're not; we have to be at 127.5deg, +/- 2.5deg) or if the rock face were a better shape. End result of two hours of tweaking: a 2.5deg heading change, and we cut the drive by 5cm. But hey, sometimes that can make all the difference. Even then, it's something of a crapshoot. We'll see how it goes.

At the beginning of the tweaking process, I realize we'll need to know the APXS's field of view in order to do this correctly. I think I know the answer, but there's a lot riding on this, so to be sure, I ask the APXS PUL, Rudolf Reider. This was the guy who spoke so passionately in favor of letting us "just drive" the other day -- and who was so dismissive of touch-and-go science. When I find him, he's in the middle of another argument against touch-and-go science, which I sit down and listen to for the entertainment value. I notice that he's literally wearing a belt and suspenders. Several minutes later, when Rudolf has vanquished his opponent, I get the number from him that I need: the APXS has a 60deg field of view, or a 30deg half-angle (to be precise, it's 28.8deg, he says). (Good thing I asked: I had the half-angle value in my head as the total field of view.)

I return to the sequencing room and tell Bob, "Hey, I asked Rudy about the APXS field of view --"

2009-04-04

I'm putting my stuff away when John Grant knocks on the door. "Did we make it?" he asks. "I don't know," I tell him, "I just got here." We go over to the SMSA, but nobody's there yet. I log in and try to figure out how to run the report script that will show me how far we got -- this is something the subsystem teams normally handle, but they're not in yet. John's got to get back to work on Opportunity, but he asks me to let him know as soon as I know.

I'm still trying to figure it out when Andy walks by and asks me the same question. Then Frank does the same thing, and so does Mark Adler. Andy, thinking ahead as usual, is trying to sweet-talk the scientists into making sol 91 a simple day so that we can have our end-of-nominal-mission celebration.

I figure out how to get the report script running just before the Mobility/IDD guy (Reg, today) shows up. It turns out that the data isn't quite in yet. Reg runs it a few minutes later and the answer pops out.

50.129m. A new single-sol record, and well over the 35m we needed. (Our total odometry now stands at 614m.) Andy and Mark are in a meeting in the SMSA conference room, so I tell them the good news, and everyone breaks into applause. I head over to the science context meeting to tell the scientists the good news. "I think I'll go with you," Andy says, and Mark follows us seconds later.

Hap is giving the LTP report, but Mark whispers the good news to the SOWG chair (Ron Greeley again today). Ron grins and motions Hap to hand us the mike. Hap gives it to me. If I had any class, it would have occurred to me to give the mike to Mark or Andy, since they're the ones who always report the news when it's bad. But I don't think of it in time.

"Fifty point one two nine," I say, and I hand back the mike. I don't even have to say what the number means. Everyone cheers.

"Let's see, that means we need, uh, five more meters?" Hap says. Then I remember that LTP's traverse numbers are always a sol or two behind, because they have to put their report together before the downlink data shows up. And he'd just reported an old number -- 545m -- as the odometry total. The room doesn't know that we made it. "No, no, we only needed 35," I tell him. "We're over the limit! We made it!"

Then they really cheer.

"Nice driving," a couple of people tell me. "Well, I'll tell Chris and John for you," I say.

If I remember.

I need to plan our drive for thisol, but I have a couple of promises to keep first. I go upstairs and tell our good news to John Grant (big grin, handshake) and Frank ("Oh ... you set a new record, huh? We're planning an 80m drive ....").

Then I go back downstairs and start looking at the data. I'm going to need to know the planned drive direction in a few minutes, but my ability to analyze the images is limited by the absence of 3-D glasses -- I can't get a good sense of how the terrain is shaped without them. I look around the room a couple of times and don't see any. And then I remember ... the five-dollar 3-D glasses I bought back on sol 5. I'd totally given up on those damn things, and whaddaya know, they turn out to be exactly what I needed. A few minutes later, I know where we need to aim the rover.

Just in time for the downlink assessment meeting. Where they have some good news. Despite losing an hour of sleep tonight when we change to PDT, our schedule starts two hours later on Monday. So tomorrow (Sunday) will suck, but we'll make up for it the next day.

One of the scientists has a warning. Apparently, we don't have functioning temperature sensors on either NAVCAM on this rover, so we have to rely on the thermal models to keep the cameras safe. We got NAVCAM images of the sky the other day; at the time those images were taken, the temperatures on the other cameras were below the lower limit (-55C). We need to ensure we operate the cameras only when they're in the safe temperature range, or we risk damaging them. Yet another thing to keep in mind when planning.

That's something that wasn't my fault. I think it happened when they were taking pictures of the sky, looking for clouds. They have thumbnails that might show clouds, but they won't know until the full images come down. Our other atmospheric news is good: the tau (atmospheric opacity) is below 0.5 for the first time, as the dust storm that preceded our arrival continues to dissipate. As the atmosphere continues to to clear up, we'll see the Columbia Hills better and better -- and, of course, driving toward them won't hurt.

I'm secretly hoping we'll get a chance to set a new distance record tomorrow. The initial plan has a lot of time allocated to driving -- two full hours. But now that we've made it over the limit, it's back to business as usual: they cut the second hour in order to make room for more remote sensing. Oh, well.

On my way up to the SOWG meeting, I stop by to talk to MIPL about the meshes. One of the MIPL guys, Bob Deen, is the only other person who's worked every day of the nominal mission (well, I skipped one day, so he's one ahead of me). I tell him he's going to get the perfect attendance award.

Mindful of Opportunity's upcoming record-setting drive, Scott Doudrick and I joke about how Spirit can rack up more meters. Here's an easy way: a full turn-in-place puts about 6m on the wheels. If we hadn't made it over the limit today, we could have just planned to turn the rover in place for a few hours and call it a trenching experiment. Even Opportunity isn't going to beat that ....

But meanwhile, I have real driving to do. The scientists would like us to approach a rock called Route66, which is about 20m away. And there's a minor constraint on the drive: for comm reasons, we want to end up heading at 120deg (this will avoid HGA flops during the FSW upload period[1]). This constraint turns out to be relatively easy to satisfy; the straight path to the rock has us approaching it at an angle of about 110deg anyway, so we just have to aim a little high and then turn near the end. Even easier, we don't have to make it all the way to the rock thisol; we just plan to get reasonably near it and then finish up the drive nextersol.

So I get the drive built, hand it over to Bob, and he's finishing it up when the word comes in: the telecom guys say we don't want to be at 120deg during the FSW upload, we want to be at 195deg -- not pointing east, but south. This is a bit more of a pain, as it means we'll have to head to the north of the rock, deliberately overshooting it, then turn south for the final approach. Worse, that means we'll have to replan the post-drive imagery, which was built with certain assumptions about our final orientation that this new plan will invalidate. It's getting late in the process, and there might not be time to redo the imaging sequences. After some debate, we change it a little: we'll shoot for a position a little bit northwest of the rock thisol, and spend the next sol driving to the final position. This will let us use the already-built imaging sequences and still have a fair chance of doing the final approach. Bob and I independently work out where we need to end up in order for this plan to work, we come up with a good agreement, and he redoes the drive accordingly.

We're literally seconds away from delivering the new drive when the plan changes again. While we've been working, the telecom guys have been arguing, and they have what we're now told is the final story: not 120, not 195, but 127.5 (actually, they say "between 125 and 130," and we decide to split the difference). So we have to do it all over again, and of course we now have even less time to do it in. Bob's frustrated by this, but I can't help laughing about it. But what the heck: we get it done. At the Command Approval Meeting (CAM), Bob -- who is notorious for changing sequences late in the game -- announces semi-seriously, "I reserve the right to change the sequence until command uplink." (Mark Adler buries his face in his hands and pretends to sob.) "Oh, just until then?" retorts Kevin Talley. "Is today your birthday or a holiday or something?"

I'm done with sequencing, but I stick around to clear out my email backlog and get ahead on some other work. Kevin, looking over the list of target and feature names the scientists have assigned at our current site, says that they're "Tolkien-challenged." They've chosen Mount Doom and Smaug, but Smaug (the dragon from The Hobbit) wasn't at Mount Doom. He doesn't remember the name of Smaug's mountain, but I Google it as fast as he can ask the question. Lonely Mountain. "We'll bring that up at the CAM," he says (and he does).

When Bob shows the drive animation at the CAM, he shows both the "battlefield view" (overhead) version of the drive and the "image view" version, which shows a 3-D version of the rover driving into the images we took from our present location. Bob's showing this on the projection screen, and something prompts me to ask Mark Adler whether he's ever seen a drive in the true 3-D view, the one where we put on the fancy LCD goggles. He hasn't, so I set it up for him after the meeting. Verdict: "Cooool!"

This makes Bob ask me to describe what I see when I look at the terrain in 3-D. I do so, but -- well, that was an odd request. He explains that he can't see in 3-D -- he's what's called an "alternator." He can see fine with either eye, but his brain decided early on not to fuse the two images into a single 3-D image. So he has no depth perception.[2] It's not really that inconvenient, he explains; human eyes are so close-set that people don't have reliable depth perception out past a few meters anyway -- after that limit, you rely on other clues, such as the relative heights of objects. But he does have trouble parallel parking, or pouring drinks. Of course, a lot of people have trouble pouring drinks even with depth perception, I point out. Especially after they've poured a few.

[1] That is, the antenna that looks likea lollipop won't have to flop over from one side to the other in orderto track the Earth through the sky.

[2] Including Bob, I think I've metthree people on MER who either can't see 3-D or have trouble with it.It's odd -- until that moment, I'd gone through my whole life not evenknowing that it was possible for a person to see otherwise normallybut be unable to process 3-D.

2009-04-03

We went 37m yestersol, bringing us to 565 of the needed 600. They'll make it nextersol. If only I were going to be driving. Oh, well.

I'm sitting in the sequencing MSA with Chris when some of the scientists come in to tell him that the instrument reachability maps show that we can't reach much with the IDD. "Well," Chris shrugs, "let's just drive, then."

At the downlink assessment meeting, one of the scientists stands up to strongly champion a drive. "Does anybody still have a doubt that we should let the engineers drive tomorrow? Don't do anything, just let them drive and take the final image at the 600m mark. I talked to Andy Mishkin, and he says it's important to them even if it's no longer important to NASA." I don't know this guy's name, but he's my new best friend. Ron Greeley, the SOWG chair, replies, "We'll talk about that -- there are a lot of people who share that opinion."

"There's bad news and good news," Ron continues. "We didn't get as far as we'd hoped -- but the good is that we have until the end of sol 92. I suggest our highest priority be drive, drive, drive. Sol 89 [tomorrow], science will have a lower priority than driving. We'll try a touch-and-go pre-drive, but" -- he stresses -- "it will be minimal."

There are supporters for the idea -- one scientist argues that we should abandon the touch and just drive, and others agree. But there are opponents as well. Steve Ruff points out, "If we do no science and then have another sol without much odometry, then -- through no fault of the rover planners -- we'll have little odometry and no science."

The guy who first argued for driving speaks up again in reply. "I do in principle agree with you, but not in this instance. Doing a touch-and-go on this rock is not science. If you can't stop at a rock and measure the surface, brush, measure again, and so on," he insists, "then we are not doing science, we're playing games."

"You're in a vocal minority there," Steve retorts.

"Priority is on the drive," Ron reminds everyone. "Priority is on the drive."

"Hey, if we do 35m tomorrow, we'll pass the 600m line. Will there be a wild celebration in the hallways?"

2009-04-02

Today Jason Fox becomes the latest in a long line of people to ask, "Don't you ever take days off?" Not yet, I don't. But I'm going to start after the end of the nominal mission. Just a few more sols.

We drove 36m yestersol, farther than I expected. But it wasn't as much as they were hoping for (a timeout problem related to an interaction between the driving commands cut off the sequence early). Apparently, they gave us a huge chunk of time to drive yestersol, way more than usual, and we were going for 60m. That would have been more than half the remaining distance to our 600m level. It also helped that we've at last gotten the go-ahead to make the autonav code take longer steps, which will make it go faster. We used to figure on autonav gaining us about 12m or 13m per hour; with the longer step size, we'll cover more like 20m per hour.

At least we understand the problem that bit us yesterday (and we're up to 529m, anyway; we're so close to 600m we can almost taste it). Chris is going to plan a 60m drive again today -- it will be a new single-sol distance record, and probably Spirit's last shot at holding that title.

Frank stops by on his way out, and Chris brags that he's going to set a new record tomorrow.

Frank says something about Opportunity's current driving record. "Well, it's not really driving if you don't have to avoid anything," Chris says -- the same joke he made yesterday.

"Who are you?" Frank asks, mock-quizzically. "Oh, yeah, you're the guy who used to hold the record."

2009-04-01

I'm not on shift, but I know that if I start sleeping in, it will be twice as hard to go back to getting up early. So I set the alarm for 5:30. Ack.

Worse, I don't even end up sleeping that late. I wake up more than an hour early, half in a panic over yestersol's sequence. I've consistently been making a particular mistake recently, accidentally telling the software to move the IDD to the wrong place -- not putting the instrument at the staging point above the target first, but moving directly to the target instead. This boneheaded mistake shows up in the simulation and so I catch it almost right away, but yestersol we changed the targeting at the last minute and then looked at the results from an unusual perspective. Am I really sure we would have noticed if I did the wrong thing? If not, the arm will contact the rock unexpectedly and the sequence will fault out, and we'll lose a sol recovering.

I argue with myself about this. John sat there and watched me make the changes. (But am I sure he would have noticed if I'd clicked the wrong button one time?) We review the animation before uplinking. (But we skipped one of the reviews yesterday because we were behind schedule, and we showed the animations from the same unusual perspective that John and I were using -- isn't it possible we would have missed it?) John independently reviews the sequences I write; that's the point of an RP-2. (But ... but ... but ....)

God damn it. I get up and log in from home, find and download the MPEG movie John routinely produces (only I can't find today's movie in the usual spot, so I have to generate my own and download it, which takes forever even on DSL, so I shower while it's downloading). I watch the movie and, horribly, see the IDD do exactly the wrong thing. We are so fucked.

Then I play the movie again, a little slower. Turns out I was wrong: the IDD move was fine; it just skipped by too fast the first time. At a lower speed, you can clearly see the IDD doing exactly what it's supposed to. It's fine; I was all freaked out over nothing.

It's not like I haven't noticed the pattern. I just can't help myself.

At work I review my traversability analysis with Chris, to save him some time -- the less time he has to spend looking for the hazards, the more time he has to plan a path around them. "Opportunity doesn't have to deal with this," I muse. "They can just drive."

"Ah, it's not really driving if you don't have to avoid anything," he says, mock-contemptuously. "Anyone can put a brick on the gas pedal."

I'm not into the whole inter-rover rivalry thing[1], but that cracks me up.

I get distracted for the first few minutes of the downlink assessment meeting by a beautiful, huge book published by the American Geophysical Union: "Mars Exploration Rover Mission and Landing Sites." It appears to be a large collection of papers about -- well, pretty much exactly what it says. Way cool.

LTP puts up a slide with a warning that came out of my uplink report from yestersol, where I was explaining that we were uncertain about the exact location of instrument placements because of the mesh problem that caused us to miss Hawaii and end up higher on the rock face (in Alaska, as Ray jokes). This same problem may cause the RAT to end up in a location where it won't be able to do its job.

Ray asks me to elaborate on this, and I've got the mike in my hand, explaining that it's a very low risk but we're just not 100% certain, when Craig Leff pops in. "We've got the HAZCAMs," he says. "The RAT worked great."

The whole room swarms around one of the projection monitors. It looks exactly right: a pentagram of round RAT brush spots, with the sixth and final brush spot right in the middle. "It's a flower!" someone exclaims. "It's so cute!" "It's better than Mickey Mouse, isn't it?" says Steve Ruff.

The scientists are like kids in a candy store, until Ray calls them back to order. "Okay, folks, let's focus," he says. But he can't resist making his own comments. "It's gonna be a good day," he says. ("It's starting off pretty well," Steve agrees.)

The meeting is as upbeat as that makes it sound. There's applause for the RAT guy when he walks in. The Moessbauer data is good. And we're getting the hell out of here. "I think the sense of this sol is: drive," Ray says. "Drive, get some data, drive, get some data, then some runout science."

I won't be doing the drive; Chris gets to do that. But I'm happy to get out of here. It seems as if we've been stuck at Mazatzal forever, and I want out.

There is, however, a moment of acrimony, unusual for this meeting. Geoff Landis proposes getting PANCAM imagery of the backside of the antenna, as a way of measuring dust accumulation or something. He wants to take it during the drive, when we're heading at 220 degrees. Ray has clearly heard about this idea, and doesn't think much of it -- it seems to annoy him. "What do you want with that data?" he asks sharply. "It's less dusty, so what? You don't have measurements of the scattering properties, so you can't analyze it."

"We have sol-2 data; we'll compare it with that. This might be our last chance to do this. We're not at 220 at noon very often."

They go around and around like that for a couple of minutes, as Ray just gets more annoyed. "It doesn't seem to me like a well-thought-out experiment, I'm sorry."

Jeff Johnson tries to make it better, gently supporting Ray. "There are other dust experiments we're doing -- solar panels and so on -- those should be good enough."

"And I'm not willing to interrupt the drive to do this," says Ray.

Ray seems to think that will end it, but Geoff doesn't give up. "You don't have to interrupt the drive. We can take the image at the end of the drive. And if we're going to do this, we have to do it now: conditions are getting worse, the sun is getting lower in the sky ...."

"I'm not gonna do it, I'm sorry," says Ray. And that's it.

After a little more discussion, the meeting is over. "It looks like we've made this beautiful flower," Ray says, "so let's get our sequences together for the SOWG meeting."

That's my cue to leave. I decide to go home before anything can spoil my day, and almost make it. Yesterday John and I decided not to tell the rover to use extra memory when computing its on-board nav maps, since we weren't driving very far -- just a 90cm backup -- and it wouldn't have made much difference.

Except that it might have made a lot of difference. We both forgot that the rover's on-board parameters have been set to assume that the extra memory is available, and we're supposed to tell it to use that memory for driving every sol we drive. If we don't, the rover can fail to allocate memory, causing a fatal error and a reboot. That didn't happen yesterday -- we got lucky.

[2] I was still -- still -- smarting from the failure of the Mazatzal approach drive. Despite my jaunty tone above, I would continue to be upset about it for months. But you'll hear that part of the story later.