TODO:
The HackRF and GNURadio project is critical to the function of the ground station, as it allows the ground station to communicate with the satellite while in orbit.
The HackRF is a type of Software Defined Radio (SDR) capable of receiving and transmitting signals. A software defined radio essentially replaces the physical radio components with ones defined in software on an embedded system or on your computer [more information found here].
Figure: HackRF diagram with key connections. The red "nipples" over each connection are to protect each of these inputs. Please keep these on when you are not actively connecting these inputs to something!
The HackRF must be connected to the computer in order to send and receive communications. Until we get functionality, we need to connect an RX HackRF to a TX HackRF. As of March 2022, we have two HackRFs, one labelled "Preferred RX" and one labelled "Preferred TX". However, we use them oppositely as the Preferred TX HackRF works better for RX (likely due to overuse of the Preferred RX HackRF). To summarize:
TX: Use Preferred RX.
RX: Use Preferred TX.
GNURadio is the software interface that enables us to interact with the HackRF through a laptop. The GNURadio Companion shows visual flowgraphs that represent all inputs, modifications, and outputs that we make to input and output signals. GNURadio will only run effectively on Linux, and due to the numerous dependencies our current flowgraph setup will only run on a specific version of Ubuntu, 21.0.4.
Please see the Ground Station Software Setup and the Flowgraph Documentation for more information about GNURadio.