OreSat Software: Real Time Operating System for OreSat1

Poster Image
Event poster; details follow in description
Poster Session
B
Poster Number
06
Project Author(s)
Ria Mahajan
Institution
Portland State University | OrION Internship - PSU
Project Description

During the internship, my main goals were to research and implement a new Real Time Operating System (RTOS) for OreSAT1, which is the nanosatellite being worked on currently by the Portland State Aerospace Society (PSAS). This RTOS implementation would potentially help with making the onboarding process of future firmware volunteers, interns or industry advisors easier. This is due to the system having more resources online for self-learning, and being easier to work with in terms of coding and debugging issues.

This goal was broken down into smaller objectives, the first being finding a replacement for the old RTOS (ChibiOS) used in firmware systems, evaluating its compatibility with the STM32F091RC chip utilized by the boards, testing the chip’s peripherals and communication protocols with the new RTOS, and if successful, start converting old ChibiOS code to zephyr code.

Throughout this process, the RTOS Zephyr was chosen to be further researched, and it was found to be much easier to work with than ChibiOS. Specific peripherals: I2C, PWM, CAN, DAC, ADC, and the chip’s low power modes were tested successfully, and it was concluded that the system could be used to transition into. Finally, the firmware code for the LV3.1 ERS system (Launch Vehicle 3.1 Electromechanical Recovery system) was used as the first ChibiOS multithreaded code to be converted to zephyr syntax and tested on the ERS boards. Although this goal was not achieved within the allotted timeframe, the research conducted gave the firmware team a good foundation to build off of and continue the changeover to a better firmware system.