With all the press about the 40th anniversary of the Apollo 11 moon landing, you might have heard that the Apollo 11 computers had less processing power than a cell phone or that their electronic components were more basic than those in toasters with computer-controlled buttons. But what you might not have heard is that a computer glitch nearly stopped the Eagle lunar module from landing.
When the lunar module was a little more than a mile from the moon's surface, alarms started going off. The 1202 alarm came first, recalled Edwin (Buzz) Aldrin in a recent Popular Mechanics interview. For those of you too young to remember, Aldrin piloted the lunar module pilot, which also held Apollo 11 commander Neil Armstrong. "We know it's in the guidance and navigation dictionary," said Aldrin, "but rather than try and get it \[the dictionary\] out while the module is making a powered descent, Neil asked them what's the reading on the 1202 alarm. Then we got a 1201."
At Mission Control in Houston, guidance officer Steve Bales knew the 1201 and 1202 alarms indicated that the computer wasn't keeping up with its computing tasks. Both the lunar module and the command module were guided by a Apollo Guidance Computer, which had only 32KB of fixed memory (aka ROM) and 4KB erasable memory (aka RAM), according to the NASA report "Computers in Spaceflight: The NASA Experience".
The Apollo 11 lunar module (photo courtesy of NASA)
Bales had a difficult decision to make: whether or not the problem was critical enough to abort the lunar landing. Bales decided that it wasn't—a decision that helped him earn the US Medal of Freedom alongside Aldrin, Armstrong, and Michael Collins (Apollo 11's command module pilot).
The 1201 or 1202 alarms continued going off during their descent to the moon surface. "Each time a 1201 or 1202 alarm appeared, the computer rebooted, restarting the important stuff, like steering the descent engine and running the DSKY \[short for display/keyboard\]," noted Peter Adler in the Apollo 11 Lunar Surface Journal. Adler, along with Don Eyles and Fred Martin, developed the lunar module software at MIT Instrumentation Lab.
"Five times during the landing, the whole software was flushed and reconstructed in terms of what was being executed," said Eyles. "And that load shedding was what allowed us to complete the landing without any appreciable glitches in the way the guidance system worked. Without quite knowing it, we had built a fault-tolerant computer."
Later investigations revealed that a hardware glitch in the computer's Rendezvous Radar Switch as well as human error caused the problem. When the computer's Rendezvous Radar Switch is set on, the computer looks for radar data. "What led to \[the alarms\] was an obscure mismatch deep in the electronics—two signals that should have been locked together in phase were only locked together in frequency," said Eyles. "That hardware glitch involved the rendezvous radar, which really wasn't needed during the descent to the moon."
But the Rendezvous Radar Switch was on during Apollo 11's descent because that's what the documented procedures told the astronauts to do. "We looked at the 4-inch-thick book of astronaut procedures and there it was—they were supposed to put in on (in the AUTO position) prior to descent," noted Martin in the Apollo 11 Lunar Surface Journal. Someone had made an error when documenting the procedures. And although the astronauts practiced the descent procedures in a simulator, the problem never surfaced because such switches weren't connected to a real computer.
Despite the hardware glitch, the Apollo Guidance Computers, which were at the cutting edge in the 1960s, played a pivotal role in advancing computer technology. According to The Lunar Module Computer, "They were the first to use the integrated circuit technology that subsequently gave us desktop computers and so many of the consumer electronic products that fill our lives today."