Applications

NOS3 Open Source comes packaged with hardware specific applications that can be used if the hardware meets the needs of a mission. As an example, the novatel_oem615 application is provided to communicate with a Novatel OEM615 over UART.

Also provided is an IO driver API which is the main method to communicate between I2C, UART, and SPI devices within NOS3. The HWLIB contains both the APIs, and the NOS3 specific implementation of the APIs to communicate with the Hardware simulators.

When building for specific flight computer targets, a new API implementations can be added with a simple CMAKE change.

Generic Fixes:

  • Some applications still used the old location for tables "cf/apps/.tbl", this is changed to "cf/.tbl in all relevant locations
  • Added the cfe table build macros to CMakeLists where needed


├── ~/nos3/

|   ├── /fsw

|   |   ├── /components

|   |   |   ├── /arducam

|   |   |   ├── /clyde_eps

|   |   |   ├── /generic_reaction_wheel

|   |   |   ├── /hwlib

|   |   |   |   ├── fsw

|   |   |   |   ├── sim

|   |   |   ├── /novatel_oem615

|   |   |   ├── /sample

|   |   |   ├── ComponentSettings.cmake

|   |   └── ... 

                            

An overview of what each of these does:

File / DirectoryDescription

/arducam

This repository contains the ArduCAM cFS application.

/clyde_eps

This repository contains the Clyde Space cFS application.

/generic_reaction_wheel

This repository contains the generic reaction wheel cFS application.

/hwlib

This Repository contains device driver libraries to support hardware applications.

/hwlib/fsw

Device specific drivers for hardware command and telemetry, and IO driver APIs

/hwlib/sim

NOS3 IO driver implementation

/novatel_oem615

This repository contains the NovAtel OEM 615 cFS application.

/sample

This repository contains the Sample cFS application.

ComponentSettings.cmake

CMAKE build file