This repository contains the Argus Payload Flight Software for the Jetson Orin Nano (8GB) and its custom carrier board. Argus is a technology demonstration mission focused on vision-based orbit determination.
- CUDA
- TensorRT
- spdlog - Logging library
- OpenCV - Computer vision library
- Eigen3 - Linear algebra Library
- GTest - testing framework
- TODO
sudo chmod +x install_deps.sh build.sh run.sh
./install_deps.sh
Give permissions to both scripts
sudo chmod +x build.sh run.sh
To compile using CMake, build the project using the helper script:
./build.sh [Debug|Release] [disable-nn]
./bin/PAYLOAD [optional: <communication-interface: [UART, CLI]>]
All binaries will appear in the bin folder.
The configuration file is located at config/config.toml. Update this file to modify system parameters.
As a functional debugging tool, the Payload can be run and controlled locally through a command-line interface, either through the compiled one or the python interface (perfect replica). First, run the main process in CLI mode:
./bin/PAYLOAD [optional: <communication-interface: [UART, CLI]>] // default to UART
In another terminal, launch either the compiled CLI or its python equivalent (perfect replica):
./bin/CLI_CMD
or
python python/cli_cmd.py
Under the hood, both processes communicates through 2 distinct named pipes (FIFO).
The Payload communicates through its host machine via UART (transition from SPI in progress) with a set of predefined commands available at TODO (internal README).