Speaker
Description
In the context of satellite's flight-software (FSW), the so-called the Parameter System or Service (PS) is a software (SW) components, very common in FSWs, its reefers to a software service that provides capabilities for managing on-board parameters, including reading current values, setting new values and redefining parameter locations and properties. In concrete, the PS consist of a key-value storage technology, i.e.: maps a name or numerical ID to a variable. This way, it is possible to access (retrieve or modify) the value of such configuration variable from the outside-world, i.e.: by another entity. PS simplifies greatly the development and operation of the of spacecrafts. Typical PSs posses the following limitations: low user-friendliness, poor scalability, lack of flexibility, repetition of effort and configuration consistency issues. In general, complexity (i.e.: elevated number of parameters and nodes), degrades the usability and efficiency of typical PSs and middlewares.
To address these issues, we present libs3, a novel PS with the novel approach of segmenting parameter in hierarchical organized collections, called Systems. Inspirited in concepts of Systems Engineering. The idea is to reflect in the actual software, the intrinsic hierarchical structure of a space system. This simple concept allows navigating and exploring the whole system, like a file system. Parameters and Systems have a short text-based key (a name), which makes they easy to remember and intuitive to find and manage. Although sort named, every Parameter is unique in the hierarchical structure. Parameters can be flexibly grouped by a reference in different logical lists, for implementing interfaces, telemetry collection, event logging and more. The PS also provides serialization and deserialization (in several binary and text formats), storage in persistent memory, callbacks, range checking, a Command Line Interface, among other features.
And of course it's open source: https://gitlab.com/s3space/libs3pp :)