2023-01-12 12:46:45 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
#
|
|
|
|
# Horus Binary RTLSDR Helper Script
|
|
|
|
#
|
|
|
|
# Uses rtl_fm to receive a chunk of spectrum, and passes it into horus_demod.
|
|
|
|
#
|
|
|
|
|
|
|
|
# Calculate the SDR tuning frequency
|
|
|
|
SDR_RX_FREQ=$(echo "$RXFREQ - $RXBANDWIDTH/2 - 1000" | bc)
|
|
|
|
|
|
|
|
# Calculate the frequency estimator limits
|
|
|
|
FSK_LOWER=1000
|
|
|
|
FSK_UPPER=$(echo "$FSK_LOWER + $RXBANDWIDTH" | bc)
|
|
|
|
|
|
|
|
echo "Using SDR Centre Frequency: $SDR_RX_FREQ Hz."
|
|
|
|
echo "Using FSK estimation range: $FSK_LOWER - $FSK_UPPER Hz"
|
|
|
|
|
|
|
|
BIAS_SETTING=""
|
|
|
|
|
|
|
|
if [ "$BIAS" = "1" ]; then
|
|
|
|
echo "Enabling Bias Tee."
|
|
|
|
BIAS_SETTING=" -T"
|
|
|
|
fi
|
|
|
|
|
|
|
|
GAIN_SETTING=""
|
|
|
|
if [ "$GAIN" = "0" ]; then
|
|
|
|
echo "Using AGC."
|
|
|
|
GAIN_SETTING=""
|
|
|
|
else
|
|
|
|
echo "Using Manual Gain"
|
|
|
|
GAIN_SETTING=" -g $GAIN"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Start the receive chain.
|
|
|
|
# Note that we now pass in the SDR centre frequency ($SDR_RX_FREQ) and 'target' signal frequency ($RXFREQ)
|
|
|
|
# to enable providing additional metadata to Habitat / Sondehub.
|
2023-07-28 12:00:06 +00:00
|
|
|
rtl_fm -M raw -F9 -d $SDR_DEVICE -s 48000 -p $PPM $GAIN_SETTING$BIAS_SETTING -f $SDR_RX_FREQ | $DECODER -q --stats=5 -g -m binary --fsk_lower=$FSK_LOWER --fsk_upper=$FSK_UPPER - - | python3 -m horusdemodlib.uploader --freq_hz $SDR_RX_FREQ --freq_target_hz $RXFREQ $@
|