Overview
Gear is a software integration framework that enables rapid development and deployment of flight applications. Its modular, open system architecture is portable to multiple message-oriented middleware platforms, including cFS, ROS-2/M, ASPIRE, ZeroMQ, and NATS, to name a few.
Open Architecture
GEAR apps adhere to a modular open system architecture connected via message oriented middleware. Message definitions are shared to promote data sharing among performers and to enable quick replacement of existing applications with new technology.
Portable Architecture
The variety of customers and partners in the space industry are not standardized on a universal software platform. Instead of forcing adoption of a universal platform, GEAR provides a generic framework for Space Apps as well as multiple implementations of that framework for the software platforms supported by GEAR. Portability is enabled using software abstractions of common flight software services such as time services, message oriented middleware, and file services. Running apps on a new software platform only requires implementation of these software abstractions and extension of GEAR’s CMake powered build system.
Code Generation
To enable rapid development, GEAR utilize state of the art code generation technology. This technology rapidly deploys object oriented message implementations including features such as serialize and deserialize whose generated implementations are masked to the developer. It further reduces developer workload by generating glue code such as adaptation layers and tedious code such as binary log readers converters.