SSI's World-Record Breaking Low Cost, High Endurance, Altitude-Controlled Latex Balloon for Near-Space Research
The avionics flight software operates on a read-eval loop in order to change states and respond to its environment and is written in compliance with NASA JPL's Safety-Critical Code standards.
main.cpp
- Start point of flight controller
config.h
- Mission specific configuration values
data.h
- Structure of current data frame
Avionics
- Implementation of flight logic
Controller
- Interface to feedback control algorithm
Sensors
- Interface to raw data from hardware
Filters
- Interface to corrected data from filters
Actuators
- Interface to valve and ballast mechatronics
Charger
- Interface to superCap charging circuit
Hardware
- Interface to PCB hardware
Logger
- Interface to compressed SD card stream
Payload
- Interface to external research payloads
Simulator
- Client side code for Hardware in the Loop simulations
GPS
- Wrapper library for GPS with added features
RockBLOCK
- Wrapper library for RockBLOCK with added features
AD5246
- Library for i2c Resistor
Parser
- De-parser of compressed flight telemetry
readsd
- De-parser of compressed SD card stream
Here is the current status of the code:
- Altitude readings from filtered and error checked BMP280s
- Feedback control algorithm for equilibration at altitude
- Custom charging circuit feedback control
- Valve mechanical actuation and de-jamming
- Ballast mechanical actuation and de-jamming
- MicroSD logging of current data frame
- Integration of uBlox M8Q GPS
- Satellite data downlink over RockBlock
- 1Hz LED in compliance with FAA
- Payload interface for communicating with research payloads
- Ascent rate calculations from Kalman filtered data
- External temperature readings
- Subsystem current readings
- Subsystem shutdown if reboot failure
- Low power mode for ARM Cortex M4 processor
- GPS set to flight mode
- Compression of data frame into bitstream for comms
- Satellite uplink command parsing over RockBlock
- Manual control of flight parameters over satellite uplink
- Stable loop rate regulation
- Extended debug mode
- HITL & modular simulations testing suite