Relevant Software Stack (Need To be added to)
CDH software is responsible for OS level integration of other submodule. In a sense, CDH is the OS that runs the different sub-team applications
The function is FreeRTOS, which handles memory management, task scheduling, concurrency related issues.
Software Stack Diagram:
Overall software operation modes and state machine:
This is the layer that is each application will interface with, in order to perform its function. It is needed for inter-process, or inter-application communication and also invoking any task.
The function of the API is to translate different commands from applications into concrete tasks to be executed by the OBC. This include: taking in parameters and creating the relevant task. Handing off the task to be executed by the underlying OS, and responding back with any status of the task
This part is not dependent on hardware
This is the main OS of the OBC, it is based on freeRTOS. Which handles all tasks that are to be executed. It will call any hardware functions and makes sure the entire system is running smoothly by sharing system resources between applications and making sure there are no concurrency issues.
This part is dependent on hardware