This is the minimal requirements of the CDH software to be completed for competition. For a broader look at the software architecture see CDH Software Architecture
-
Supervisor
-
Telemetry Manager
- Generate unique filename for next batch of telemetry → for each subsystem (send command to each subsytem?)
- Before downlink, package subsystem telemetry files into a single telemetry batch file
- Alert comms of filename for next telemetry (send a command to Comms)
-
Command Manager
- General skeleton implemented (generic parsing framework)
- Parse immediate command → forward immediately to relevant subsystems
- Parse time-tagged command → add to queue of recieved commands (sorted by earliest command at front) and set RTC to earliest command
- Save time-tagged commands to FRAM?
- Confirm all required uplinked commands with other subsytems → and required internal commands/actions to send out (https://docs.google.com/spreadsheets/d/1XWXgp3--NHZ4XlxOyBYPS-M_LOU_ai-I6TcvotKhR1s/edit?usp=sharing)
-
Health Manager
- Define what emergency modes should be automatically dealt with
- Define what parameters should be monitored and threshold to trigger an emergency
- Define what action should be taken in each emergency mode → what commands are sent out?
- Define how to store state of emergency
-
EPS Task
-
RTC Driver
- Implement interface for setting up alarms
- Implement interface for syncing clock
- Implement interface for dealing with alarm interrupt
-
File System → Reliance Edge
- Complete SD Card Driver
- Implement Reliance Edge FS and add interfacing functions (focus is on telemetry data only for now)
-
Non-volatile Storage (interface for FRAM)
- Complete FRAM Driver
- Define what data specifically will be saved to the FRAM
- Time-tagged commands?
- Current operational mode of satellite?
- Critical parameters (ADCS PID values, last wake up time, etc.)?
- Devise and implement an interface for saving data
- Do we add macros for specific addresses to store data in?
- Do we have a more extensible and generic storage system?
- Implement saving and reading of the aforementioned FRAM Data
-
E-Fuse Driver
-
Temperature Sensor Driver
-
MAX9934 Current Sensor Driver