Spacecraft FIRMWARE ENGINEER
Your mission is to develop the software suite for our spacecraft platform. This includes writing software such as:
1. Drivers for magnetometer, sun sensor and gyroscopes
2. Drivers for magnetorquers (electromagnets) and reaction wheels (motor + flywheel)
3. Interfaces to the main subsystems.
a. Communications subsystem interface. The interfaces include LVDS, UART, CAN, USB
b. Thruster subsystem interface. Electronic control of thruster valves
c. Electrical power subsystem
4. The main mission application that encapsulates the mission. This includes writing scheduler for the key tasks:
a. Collect and manage telemetry and commands
b. Convert commands into actions aboard the spacecraft
You may also apply by sending resumé to [email protected]
Qualifications Recommended:
- Coursework in computer engineering. We are most interested in experience.
Desired Skills:
· Lots of love for space, spacetech, space exploration
· Lots of love for and experience in working on microcontroller-based projects, especially those built around the ARM-based processors or the new RISC-V tech
· Some experience or knowledge in architecting hardware embedded systems in general
· Have designed and incorporated at least simple single-layer printed circuit boards into projects
· You can make peripherals talk to some central computer using low-level protocols like USB (highly valued!), SPI, I2C, and UART—some experience with higher level protocols like TCP/IP would also be quite handy.
Job Responsibilities:
· Develop the core firmware for the entire spacecraft, including an operating system, if needed
· Develop user interfaces for interacting with the system for on-ground testing and debugging purposes
· Develop software device drivers including drivers for interfacing with magnetometers, sun sensors, and gyroscopes.
· Implement subsystem-specific algorithms onto the main computer e.g. convert algorithms written in Python into their C/C++ equivalents