Carnegie Mellon University
March 08, 2021

CMU Graduate Student Cracks Mars Rover Code

By Michael Henninger

Jason Maderer
  • Marketing and Communications
  • 412-268-1151
Aaron Aupperlee
  • School of Computer Science
Down here on Earth, nearly 130 million miles from Mars, Adithya Balaji eagerly watched high definition video of Perseverance and its successful descent onto the red planet. From his desk in Raleigh, North Carolina, Balaji took note of the rover's parachute and its peculiar orange and white pattern. He thought it was likely functional, perhaps for aligning cameras. Within the pattern, however, lay hidden a call for humanity to continue to push out toward the unknown.

After NASA released that video — four days following Perseverance's Feb. 18 touchdown — systems engineer Allen Chen suggested during a news briefing that there was a coded message in the landing. Balaji grabbed his tablet and got to work. Hours later, a myriad of Twitter notifications drained his phone's battery after his posted solution blasted off across the internet.

"Rocketry has always been a passion of mine, and it's not every day you get a chance to solve a cryptography puzzle on another planet," said Balaji, a master's degree candidate in computer science at Carnegie Mellon University. "That's the exciting thing about space. You get to see the whole world come together to solve a problem."

Every passion has an origin, and Balaji points to his parents, public television and encyclopedias as igniting his interest in the final frontier.
Balaji as a boy at the Johnson Space Center"My parents used to take me to the Johnson Space Center [left]. I was lucky they always encouraged me. I would pretend I was part of mission control. I found myself reading about space and the planets in the encyclopedia," Balaji said. In high school at the North Carolina School of Science and Mathematics, he started to build rockets with the school team for The American Rocketry Challenge (TARC) competitions.

In time, Balaji found himself at North Carolina State University for his undergraduate degree, where he co-founded a liquid propulsion research lab. He chose Carnegie Mellon to continue his studies and expand his computer science skills, which came in handy when he recognized that Perseverance's parachute code appeared to be some kind of binary.

Guessing correctly, Balaji took the white sections of the chute to represent zeroes, and the orange sections to represent ones.

Having that piece, he put together a script to brute force (solving a problem using computing power to try every possible combination) what he thought might be an ASCII code, but it turned out to be simpler than that.

Then he took what he had found, a series of scrambled letters, and confirmed his thought process when he discovered someone else in a space subreddit had independently uncovered the same letters and unscrambled them: "DARE MIGHTY THINGS," the motto of NASA's Jet Propulsion Lab (JPL). Balaji posted a thorough explanation of the solution on Twitter.

Yet Balaji's solution was missing one final part. In a reply tweet, Chen clued Balaji into the fact that his mystery was nearly complete. Balaji went back to Reddit and saw that someone had sleuthed out the coordinates of the JPL visitor center hidden in the outer ring of the parachute. With the puzzle finished, Balaji updated his code and tacked it onto his Twitter thread. The post caught the eye of a New York Times reporter, who interviewed him about the code.
A rocket launches
A United Launch Alliance Atlas V rocket with NASA’s Mars 2020 Perseverance rover onboard launches from Space Launch Complex 41, Thursday, July 30, 2020, at Cape Canaveral Air Force Station in Florida. Image Credit: NASA/Joel Kowsky
"The solution went semi-viral, and that shows the importance of clear science communication," Balaji said. "Several people arrived at the solution, but I think my explanation resonated. Even if someone doesn't know anything about computer science, they're able to understand how to arrive at the answer. NASA understands this, and has effectively communicated how space missions have led to the creation of everyday products like Velcro and GPS."

History marks the progression of human achievement in space. Perseverance's landing is the ninth for America on Mars. Its surface travel will continue to enhance understanding of Earth's celestial neighbor. In his own way, Balaji inserted his name into the narrative, a small part of history. But one such accomplishment is not enough for the code-cracking computer scientist with his gaze focused on the extraterrestrial. Balaji now writes code with a dedicated team of students who plan to put a robot on the moon.

In his second semester at Carnegie Mellon, Balaji became a software engineer for the group working on MoonRanger, a robotic rover being developed by CMU and spinoff Astrorobotic. MoonRanger will search for signs of water at the moon's south pole. Some 150 people have worked on bringing the project to fruition during their time at Carnegie Mellon. While Balaji is new to the project, contributing to a successful venture would fulfill a lifelong dream.

"Not many software developers can say their code is running hundreds of thousands of miles away," Balaji said. "Finding water on the moon is the first step of sending humans deeper into space. With water, we can separate hydrogen and oxygen and make rocket fuel that can be used on a wayward launchpad."

Gravity on the moon also will allow for easier launches, and Balaji said expanding out into the solar system is the next big step for humanity.

"Space ... how can you not be romantic about space?" Balaji said. "What NASA did with the hidden code challenge was so inspiring, because it was something anyone with just a little bit of computer science knowledge could crack. It just takes a little bit of perseverance."

— Related Content —