This repository contains the application needed to parse the beacons from the University of Sydney's satellites CUAVA-2 and Waratah Seed-1.
Additionally we include the gnu-radio flowgraph to receive the raw beacons and an example of a raw beacon recorded directly after the decimating low-pass filter.
The beacon decoder is written in Rust. To run the parser you'll need to:
- Clone this repo
git clone https://github.com/Cube-OS/cuava-beacon-decoder
- Install Rust if needed
- Change to the directory
cd cuava-beacon-decoder
The parser can be used standalone by inputting a file with demodulated and decoded raw beacon data or together with the flowgraph, which requires the flowgraph to be started first.
- Run from the directory
cargo run
- Build and run from anywhere
cargo build --release
cp target/release/cuava-beacon-decoder PATH/TO/DESTINATION
cd PATH/TO/DESTINATION
./cuava-beacon-decoder
The following options are available:
./cuava-beacon-decoder -i INPUT-FILE -o OUTPUT-FILE -p PORT
The -i INPUT-FILE
option enables the standalone use for parsing pre-recorded beacons.
The standard port is 3210
.
The JSON output is directed to a file ./beacon.txt
or any file specified with -o OUTPUT-FILE
.
An example of a raw beacon is included in this repository and can be tested using
cargo run --release -- -i demodulated-beacon.raw
Frequency: 400.65MHz
Baudrate: 1k2
Modulation: BPSK-G3RUH
The flowgraph has been built with gnu-radio 3.9.6
and gr-satellites 2.3.2
and has been tested with the Ettus Research B200/B210 SDRs.