Skip to content

PROVES Core Reference - Software Design Documents

Welcome to the PROVES Core Reference documentation site. This documentation provides comprehensive information for working with PROVES Core Reference, from getting started to detailed component design documents.

Overview

PROVES Core Reference is a reference software implementation combining F Prime (NASA's flight software framework) with Zephyr RTOS to create firmware for embedded flight control boards. The project targets ARM Cortex-M microcontrollers, specifically RP2350 (Raspberry Pi Pico 2) and STM32 boards.

Documentation Sections

Getting Started

Step-by-step guides to set up your development environment, build the firmware, and flash it to your board:

Component Software Design Documents (SDDs)

The documentation is organized into the following categories:

Core Components

System-level components that manage the overall operation and state of the spacecraft: ADCS, Mode Manager, Startup Manager, Reset Manager, Watchdog, Bootloader Trigger, Detumble Manager

Communication Components

Components that handle various communication protocols and interfaces: Amateur Radio, S-Band, Com CCSDS UART, Com CCSDS S-Band, Com CCSDS LoRa, Payload Com, Com Delay

Hardware Components

Components that interface with physical hardware devices and actuators: Antenna Deployer, Burnwire, Camera Handler, Load Switch

Sensor Components

Components that manage and process data from various sensors: IMU Manager, Power Monitor, Thermal Manager

Driver Components

Low-level driver components for specific hardware peripherals: Drv2605 Manager, Ina219 Manager, RTC Manager, Tmp112 Manager, Veml6031 Manager

Storage Components

Components that manage persistent storage and filesystem operations: Flash Worker, Fs Format, Fs Space, Null Prm Db

Security Components

Components that handle authentication and security features: Authenticate, Authentication Router

Additional Resources

Troubleshooting guides and additional configuration information:

Use the navigation tabs above to browse through the different component SDDs. Each SDD includes:

  • Introduction and purpose
  • Requirements
  • Design details
  • Port definitions
  • Command and event specifications
  • Telemetry information
  • Usage examples

Additional Resources