Design and development of the embedded computing platform, flight software architecture and subsystem communication used to operate and test Violet, the New Brunswick CubeSat.
Doctoral research · Université de Moncton · CubeSat NB (Violet)
PROJECT OVERVIEW
Violet is the New Brunswick CubeSat developed as part of the Canadian CubeSat initiative to support scientific research related to the Earth's ionosphere and space weather.
Operating a CubeSat requires much more than running a single application. The spacecraft must coordinate multiple embedded subsystems, execute scheduled mission operations, collect and store scientific data, communicate with the ground station, monitor its own health and respond to faults.
My doctoral research focused on the embedded platform required to support these operations, including the on-board computer, mission software, inter-subsystem communication, GNSS payload integration and the FlatSat environment used for system-level testing.
ENGINEERING SCOPE
The project covered the complete embedded stack, from custom electronics and low-level firmware to real-time software, spacecraft networking and hardware-in-the-loop integration testing.
Designed and implemented a layered embedded mission-software architecture in C using FreeRTOS.
Developed a custom STM32F405-based OBC platform for executing the mission software and coordinating spacecraft operations.
Developed and integrated an STM32F407-based communication subsystem supporting the CubeSat communication architecture.
Implemented CubeSat Space Protocol (CSP) communication between embedded subsystems using the spacecraft CAN network.
Developed a C library and carrier-board integration for communicating with the OEM7 GNSS receiver.
Developed test infrastructure and CLI tools for commanding subsystems, debugging and analyzing results during integration.
FLIGHT SOFTWARE
The flight software was organized into five layers to separate hardware-specific code from communication services and mission-level functionality. This structure made the system easier to develop, test and extend as additional CubeSat subsystems were integrated.
Mission operations · Telemetry · Housekeeping · Subsystem operation · Software installation & updates
CubeSat Space Protocol (CSP) · Inter-subsystem networking
FreeRTOS · Tasks · Scheduling · Synchronization
Hardware-dependent software · RTC · Storage · Sensors · Interfaces
OBC · Communication · Payload · Sensors · CubeSat subsystems
EMBEDDED COMMUNICATION
Violet consists of multiple embedded subsystems that must exchange commands, telemetry and mission data reliably. Rather than treating each interface independently, the spacecraft uses a common communication architecture.
CubeSat Space Protocol (CSP) was implemented and tested on the STM32F405 on-board computer and the STM32F407 communication board, with CAN serving as the primary inter-subsystem network.
This allowed the OBC to communicate with other spacecraft subsystems through a consistent packet-based interface while additional interfaces such as I²C were used where required.
RELIABILITY
The OBC periodically requests telemetry from spacecraft subsystems and evaluates the returned values against operating rules. When an abnormal condition is detected, the software identifies the fault, enters the appropriate failure mode and attempts recovery before returning the spacecraft to normal operation.
INTEGRATION & VALIDATION
Before final spacecraft integration, the embedded subsystems were connected through a FlatSat test platform. This made it possible to run the mission software on real hardware while keeping each subsystem physically accessible for debugging and measurement.
The configuration connected the STM32F405 OBC, STM32F407 communication board and OEM7 carrier board. It was used to verify CSP packet exchange over CAN, GNSS communication, command execution and communication between the spacecraft and ground-side test equipment.
MEASURED RESULTS
TECHNOLOGIES
STM32 · C/C++ · Firmware
FreeRTOS · Tasks · Synchronization
CAN · Embedded Interfaces
Hardware Integration · Testing · Debugging · Validation
RESEARCH & PUBLICATIONS
Research describing the architecture and development of flight software for the CubeSat application.
Engineering work covering the on-board computer and supporting test platform used during CubeSat development.
Konceptux works on embedded firmware, connected products, hardware integration, communications and engineering prototypes.
Discuss Your Project