Skip to content

Software System for LORIS, a 2U CubeSat being launched from the ISS in 2022

License

Notifications You must be signed in to change notification settings

DalhousieSpaceSystemsLab/CubeSat-Core

Repository files navigation

Welcome to LORIS!

Low Orbit Reconaissance Imaging Satellite

Introduction

LORIS is a 2U CubeSat being developed by Dalhousie University. LORIS's payload features two cameras; one which takes pictures using visible spectrum light and a second which takes pictures using near-infrared light (NIR). This repository contains all source code for the Core Software System (CSS) that will run on the satellite's on-board computer (OBC). It's primarily written in C++, while making use of other languages such as the BASH scripting language. The CSS is responsible for holding all data generated by every external subsystem, storing all generated data, issuing commands to subsystems to change their state, and completing missions received from an external sender in a way that the satellite maintains a nominal state.

Software Break Down

The entire repository contains code for three distrinct parts: Core, Emulation, and Ground Station.

Core

The Core code is what will be used on the OBC of the satellite. It contains all logic necessary for ensuring successful, autonomous operation of the satellite.

Code Conventions

Using Google C++ conventions. Reference here:

https://google.github.io/styleguide/cppguide.html

Committing Code

Using the following Git model for development, testing, hot-fixes, and merging: https://nvie.com/posts/a-successful-git-branching-model/?

Project Directories

build – Output executables (“targets”). The suffix _d indicates debug version.

docs – Project’s documentation, auto-generated.

src – Source files of the project with subdirectories if needed.
|- api - Standard IPC library and IPC client library.
|- client - Binary for client testing.
|- dock - Binary for the dock (runs all of the modules).
|- modules - Contains source code and headers for dock modules.

ALL SUBDIRECTORIES
inc - Contains public .h or .hpp files.
src - Contains .c or .cpp files.
|- inc - Contains private .h or .hpp files.

.gitignore – Prevents adding binary and temporary files to the git repository. LICENSE – Describes how this project can be used and distributed. README.md – General information about the project in Markdown format.

Building the Project

Have a look at Compiling the repo for instructions on how to compile the repo.

Code Documentation

You may find the code documentation at http://cubesat.alexamellal.com . If you wish, you can generate the documentation yourself by running:

doxygen Doxyfile

About

Software System for LORIS, a 2U CubeSat being launched from the ISS in 2022

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published