Speaker
Description
The main objective of the activity was to evaluate the usage of Rust programming language in space applications, by providing an RTOS targeting ARM Cortex-M7 SAMV71 microcontroller, a BSP (Board Support Package) and a Demonstration Application. Creating a real time operating system validates Rust security features in practice, exercises Rust viability in space applications and additionally checks compatibility with ECSS software development process.
RTOS is implemented in the form of an executor instead of a classic scheduler. The scope of this project doesn’t include preemption. This executor runs tasklets, which are fine-grained units of computation, that execute a processing step in a finite amount of time. The main focus of the BSP part of the project was to provide a minimal set of functionalities for peripherals required to create the RTOS and interact with the board as well as example sensors. In the second part of the activity, a small demonstration application software was developed. This demonstration provided input to a Lessons Learned report, describing the encountered issues, potential problem and improvement areas, usage recommendations and proposed way forward.