| doxygen | |
| pages | |
| solaris-v2 | |
| main | |
| custom.c | Custom definitions for the Solaris Packet Protocol |
| custom.h | Finite State Machine (FSM) module for the SPP core |
| main.c | |
| main_perf.c | |
| spp | |
| core | |
| pubsub | |
| pubsub.c | Priority-aware publish-subscribe packet router implementation |
| pubsub.h | Publish-subscribe packet router |
| commonbit.c | Common bit functions for the SPP core library |
| commonbit.h | |
| core.c | SPP core initialisation and port registry implementation |
| core.h | SPP core initialisation and port registration API |
| packet.h | Solaris Packet Protocol (SPP) packet structure definitions |
| returnTypes.h | Standard return-value type used across all SPP modules |
| types.h | Portable integer types and SPI/storage configuration types for SPP |
| version.h | SPP library version constants |
| external | |
| encryption | |
| cipher.c | SPP packet AES-128-GCM cipher context implementation |
| cipher.h | SPP packet AES-128-GCM cipher context |
| encryption.c | |
| encryption.h | |
| hal | |
| gpio | |
| gpio.c | |
| gpio.h | SPP GPIO HAL API — dispatches through the registered HAL port |
| spi | |
| spi.c | HAL SPI functions implementation. Calls the function pointer and returns the result |
| spi.h | SPP SPI HAL API — dispatches through the registered HAL port |
| storage | |
| storage.c | HAL storage implementation that dispatches operations to the registered port |
| storage.h | SPP storage HAL API — dispatches through the registered HAL port |
| time | |
| time.c | |
| time.h | SPP HAL time API — dispatches through the registered HAL port |
| uart | |
| uart.c | HAL UART functions implementation. Calls the function pointer and returns the result |
| uart.h | SPP UART HAL API — dispatches through the registered HAL port |
| hal.c | HAL port. All the necessary functions needed to setup the HAL ports and to get the pointers to the functions that are used by the SPP library |
| hal.h | This file contains the structs that contain all the pointers to the functions that are used by the SPP library. The structs are used to abstract the hardware and to make the code more portable. It also contains the public functions needed to initialize all these structs |
| ports | |
| hal | |
| esp32 | |
| halEsp32.c | ESP32 HAL port for SPP — polling SPI, no FreeRTOS dependency |
| halEsp32.h | ESP32-S3 HAL port descriptor for SPP |
| macrosEsp32.h | ESP32 hardware pin definitions and SPI constants |
| stub | |
| halStub.c | Stub HAL port for host-side unit testing |
| services | |
| bmp390 | |
| bmp390.c | |
| bmp390.h | BMP390 barometric pressure sensor driver and service |
| bmp390_sim.c | |
| databank | |
| databank.c | Static packet pool implementation |
| databank.h | Static packet pool manager |
| datalogger | |
| datalogger.c | SD card packet logger — SPP consumer service implementation |
| datalogger.h | SD card packet logger service |
| fsm | |
| fsm.c | Finite State Machine (FSM) implementation for the SPP core |
| fsm.h | Finite State Machine (FSM) module for the SPP core |
| icm20948 | |
| dmpImage.h | |
| icm20948.c | ICM20948 IMU driver + SPP service implementation |
| icm20948.h | ICM20948 IMU driver and SPP service |
| log | |
| log.c | SPP logging service implementation |
| log.h | SPP logging service |
| maxm10m20b | |
| maxm10m20b.c | |
| maxm10m20b.h | |
| sx1262 | |
| sx1262.c | Sx1262 module telemetry + SPP service implementation |
| sx1262.h | |
| kpid.h | APID bitmask assignments for every SPP producer |
| service.c | SPP module registry implementation |
| service.h | SPP module descriptor and registry API |
| util | |
| crc.c | CRC-16/CCITT implementation |
| crc.h | CRC-16/CCITT checksum utility |
| macros.h | Compile-time configuration flags and utility macros for SPP |
| structof.h | Container-of macro for intrusive data structures |
| spp.h | Top-level SPP include — pulls in the full public API |