What software language was used to program the martian rovers Spirit, Opportunity and Curiosity?

Also, how many engineers were involved in writing the software for the rovers?

  • 2
    $\begingroup$ As always on these kinds of questions the software process is more important than the language. NASA has decades of experience setting arranging for very low defect rates. $\endgroup$ Feb 18, 2014 at 17:42

1 Answer 1


Almost all in C on the rover computer. On MSL, some of the C was generated automatically using UML state charts. I don't know the exact team sizes. On the order of 20 on MER and 40 on MSL for the flight software on the rover computer. You would also need to consider the software on the instruments. And the radio. And the motor controllers.

Here's a good video on the MSL software development.

Lots of good stuff in the answers to this question.

Many different languages are used in the ground software.

  • $\begingroup$ Would asking a question on the parallels of aeronautics software development and general-purpose software development be well received? I've seen NASA/JPL's public GitHub repositories but am wondering how all of the code is maintained now-a-days privately. Not to mention big data and other technologies you've most likely needed to adapt/pioneer your own versions of. $\endgroup$ Aug 12, 2018 at 21:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.