This is the central repository for the PyGNC system and is intended to exist as a large "monorepo" containing many complementary components. The following is a high-level breakdown of the repository.
Everything contained in flight/
is intended to run on a raspberry pi operating as a secondary processor in coordination with a PyCubed main processor.
This is a julia application that emulates a PyCubed main processor and its interaction with the raspberry pi.
This is a julia application that uses realistic orbit dynamics simulation to generate "scenarios." Scenarios are binary files containing data in the same format the PyCubed processor would generate it in. Currently each scenario consists of one file, batch_sensor_gps_data.bin
which is a batch of sensor and GPS measurements taken over a long time period and then uploaded to the raspberry pi at once.
The scenarios generated by the scenario_generator
are stored here.
Unit tests and test scripts for code in flight
are stored here.
Unit tests can be run by running nose2
or runtests.py
.
The repository also contains convenience scripts for packaging the flight code in a zip file and transferring it to a raspberry pi via scp.
package_flight_code.sh
zips up the flight code, avoidingREADME.md
and__pycache__
files and adding a file containing git version informationupdate_raspi.sh
callspackage_flight_code.sh
and transfers the result to a raspberry pi located at[email protected]
.