Hacking Apollo 14: How an MIT computer scientist saved a lunar landing

By | Published: June 21, 2019 | Last updated on May 18, 2023
Apollo14flag
On February 5, 1971, Apollo 14 commander Alan Shepard deployed an American flag on the surface of the Moon, no thanks to a computer glitch that almost forced a mission abort.
NASA/Edgar Mitchell
All of the Apollo missions placed NASA and the astronauts under extreme pressure to succeed, but Apollo 14 faced unusual challenges even before it launched in February 1971. Coming on the heels of the nearly disastrous Apollo 13 mission, NASA was eager to show the United States and the world that it could bounce back. Another successful moon landing would restore the prestige of the agency and to help ensure funding for future Apollo and post-Apollo missions.

The Apollo 14 crew consisted of Commander Alan Shepard Jr., Command Module Pilot Stuart Roosa and Lunar Module Pilot Edgar Mitchell — this would be the first spaceflight for Roosa and Mitchell. Shepard was America’s first man in space, having flown for 15 minutes during his suborbital Freedom 7 flight during Project Mercury in 1961. Shepard, who had recently returned to active flight status after surgery for Meniere’s disease (which had caused ringing in his ears and vertigo), had leapt to the front of the duty roster and was assigned to command Apollo 14. Other astronauts grumbled about this and some said that, at 47, Shepard was too old and inexperienced to command a lunar landing mission. Some joked behind his back that the flight really consisted of three rookies. Shepard was eager to prove them wrong.

Computer Problems in Lunar Orbit

After a normal launch and some brief troubles docking the Command Module to the Lunar Module, Apollo 14’s trip to the Moon was uneventful. After undocking in lunar orbit, Shepard and Mitchell piloted the Lunar Module Antares away from Roosa, now alone in the Command Module Kitty Hawk. Critically, before the astronauts could start their descent to the lunar surface, the guidance computer received four errant abort commands. NASA suspected these were triggered by a switch malfunction caused by a loose ball of solder. Tapping the abort switch panel with a pen solved the problem briefly, but the issues soon returned. If the guidance computer gave an abort command during the actual descent, one of two abort programs would have boosted the lunar module back to orbit and eliminated any chance of a successful landing. NASA could not attempt a landing until this problem was solved.

doneylesApollo
Donald “Don” Eyles receives an award at Boston City Hall for his contributions that allowed Apollo 14 to successfully land after experiencing a computer glitch.  
Image courtesty of Draper

Don Eyles to the Rescue

As the astronauts went around the far side of the moon that evening, NASA’s plan was to do nothing until the engine was lit for the descent, the point at which the code that monitored the abort switch was activated, and then have the astronauts quickly type instructions to deactivate it into the computer before the faulty switch could cause an abort. Clearly, a better solution was needed, so NASA turned to MIT for help. Don Eyles was a 27-year-old computer programmer working in the MIT Instrumentation Lab, later known as Draper. Eyles had been crucial in creating the flight software for the lunar landing. While legend has it that he was dragged out of bed to help fix the abort switch problem, Eyles recently told me this was pure fantasy. He was wide awake and working in his office when colleague Bruce McCoy came and told him about the Apollo 14 crisis. 

The software was hardwired and couldn’t exactly be rewritten. Yet, with little time and under intense pressure, Eyles came up with a novel workaround. He created a set of instructions that the astronauts then keyed into the computer to fool it into believing that it was already in abort mode (referred to as Program 71, or P71), preventing it from initiating an abort sequence. According to Eyles, “I saw immediately that the only way to block it out completely was for it to think that an abort was already in progress.”

Eyles’ computerized sleight of hand worked, but it required a few additional well-timed steps by the astronauts to compensate for the programming changes, most notably that precisely 26 seconds after the engine was turned on for the lunar descent, Shepard had to manually throttle it up to maximum thrust. If a real abort were suddenly needed during the landing, Mitchell could (quickly!) program new instructions.

Touchdown

After fixing one more problem — this time with the landing radar — Antares made history and landed at Fra Mauro crater, Apollo 13’s original landing target. “It’s been a long way, but we’re here,” said Shepard at the time. He and Mitchell completed two moonwalks, demonstrating that NASA was back on track and that Shepard still had what it took to get the job done. Eyles, who received NASA’s Public Service Award for his efforts, is often regarded as having saved the entire mission.



For much more on the Apollo missions, make sure to check our special Celebrating 50 years of Apollo webpage, where you’ll find everything you want to know about the equipment, plans, and people that made the Apollo missions possible.