Software

write code that flies…

What we do

You might be confused when you hear the name “software team.” What does this team work on? Simulation software? Code to run on the actual rocket? The answer is all of the above and more. The next section outlines a few of our projects!

Our Projects

  • Flight Code (c++) – the stuff that makes our avionics bay, TARS-Mk3 come to life. We get to play with cool sensors like accelerometers and gyroscopes to determine what stage of flight we’re in, barometers to estimate altitude, and radio modules to send all this information back to the ground. We also help the GNC team turn their fancy math into code

  • SILSIM (c++ / python) – our homemade software-in-the-loop simulator which we use to test our flight software (make it think it’s actually flying when it really isn’t) and simulate our rocket’s flight since test launches are expensive.

  • Telemetry + Controls (c++ / python / js) – a large part of our work is helping other sub-teams. Most notably, members of the software team created the flight and ground sides of the telemetry software and worked closely with the controls team to integrate their Kalman Filter with our servo control software.

Interested? Join!

We work on a range of projects that cater to members of different experience levels. Even if you aren’t comfortable with a certain skill set, there’s probably someone on the team that is, and is willing to help you out with a task that you’re interested in working on despite knowing little about how to approach it. Plenty of our members were fairly clueless about C++ or flight software concepts when they joined, but learned slowly as they worked on tasks.

The Vibe

Another cool thing about the software team is that the stakes are a little bit lower. In other words, if you write a wrong while loop or dereference the wrong pointer, the rocket is not going to blow up and crash in flames. This means that we’re more comfortable with members that aren’t perfect at what they do already, and allows more room for experimentation and failure; both of which lead to you learning faster. We also try to make members familiar with concepts in circuitry and structures since avionics is very interdisciplinary.

Software Lead