Institution: 
Portland State University
Mentor: 
Andrew Greenberg
Internship Location: 
Virtual
Internship Term: 
Summer 2022
Full time/Part Time: 
Full time
Status: 
Closed
Academic Majors Sought: 
EE / ECE / CS
Introduction: 

OreSat is a fully open source 1U - 3U CubeSat system meant to be built, modified, and flown by student teams. OreSat has everything you would expectfrom a CubeSat system: a 1 - 3U structure, multi-band deployable antenna, solar array, battery pack, on-board computer, radio system, star tracker,reaction wheels, magnetorquers, GPS receiver, and capability for a high speed S band radio system. The first OreSat satellite, OreSat0, is currentlyoperational in low earth orbit. Two other OreSat missions are planned, and there are three other educational projects planning on building OreSats. Youcan find out more details at https://www.oresat.org/. The OreSat “C3” (Command, Communication, and Control) card is the main controller on all OreSatsatellites. There are still large gaps in the firmware infrastructure of the C3 card, and changes that we want to make based on what we learned fromOresat0.

Position Description: 

The OreSat open source satellite ecosystem (https://www.oresat.org/) uses the "C3" card as its on-board computer. The C3 card runs the two radioreceivers and one radio transmitter, interprets commands from the ground, including over-the-air firmware updates. It also monitors the health and statusof the CubeSat, and sends telemetry beacons. The C3 card is based on the STM32F439 microcontroller running the ChibiOS real time operating system.Firmware is written in C. The firmware depends on CCSDS communication protocols to the ground, and on the CANopen standard to talk with the rest ofthe satellite subsystems. This internship’s goal is to extend the C3’s functionality by adding (1) file transfer using CCSDS communication standards, (2)eMMC file transfer to and from the CANopen bus, and (3) the implementation of “mission modes” to control of the onboard subsystems usingindependent state machines. Students will work directly with experienced industry advisors, OreSat project manager, and other students working onOreSat firmware.

Position Responsibilities: 

The student will work with the OreSat project managers to (1) ramp up on the existing system, (2) identify and spec the feature requests, (3) implementthem, and (4) test them on the “FlatSat” integration hardware-in-the-loop test system at PSU. Students will work closely with experienced industryadvisors, and possibly help coordinate other students who may be working on this project.

Required/Preferred Qualifications: 

The student is required to already be deeply familiar with open source embedded systems programming: Git, GCC, GDB, and Make on the Linuxoperating system. The student should already be family with embedded systems programming, including real-time operating systems. Graduate studentsare encouraged to apply, although a student of any year is acceptable given experience.