kopia lustrzana https://github.com/F5OEO/rpitx
68 wiersze
2.0 KiB
Bash
Executable File
68 wiersze
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
status="0"
|
|
INPUT_RTLSDR=434.0
|
|
INPUT_GAIN=35
|
|
OUTPUT_FREQ=434.0
|
|
LAST_ITEM="0 Record"
|
|
|
|
do_freq_setup()
|
|
{
|
|
|
|
if FREQ=$(whiptail --inputbox "Choose input Frequency (in MHZ) Default is 434MHZ" 8 78 $INPUT_RTLSDR --title "RTL-SDR Receive Frequency" 3>&1 1>&2 2>&3); then
|
|
INPUT_RTLSDR=$FREQ
|
|
fi
|
|
|
|
if GAIN=$(whiptail --inputbox "Choose input Gain (0(AGC) or 1-45)" 8 78 $INPUT_GAIN --title "RTL-SDR Receive Frequency" 3>&1 1>&2 2>&3); then
|
|
INPUT_GAIN=$GAIN
|
|
fi
|
|
|
|
if FREQ=$(whiptail --inputbox "Choose output Frequency (in MHZ) Default is 434MHZ" 8 78 $OUTPUT_FREQ --title "Transmit Frequency" 3>&1 1>&2 2>&3); then
|
|
OUTPUT_FREQ=$FREQ
|
|
fi
|
|
|
|
}
|
|
|
|
do_stop()
|
|
{
|
|
sudo killall rtl_sdr 2>/dev/null
|
|
sudo killall sendiq 2>/dev/null
|
|
sudo killall rtl_fm 2>/dev/null
|
|
}
|
|
do_status()
|
|
{
|
|
LAST_ITEM="$menuchoice"
|
|
whiptail --title "Processing ""$LAST_ITEM"" on ""$OUTPUT_FREQ""MHZ" --msgbox "Running" 8 78
|
|
do_stop
|
|
}
|
|
|
|
do_freq_setup
|
|
|
|
while [ "$status" -eq 0 ]
|
|
do
|
|
|
|
menuchoice=$(whiptail --default-item "$LAST_ITEM" --title "Rpitx with RTLSDR" --menu "Choose your test" 20 82 12 \
|
|
"0 Record" "Record spectrum on $INPUT_RTLSDR" \
|
|
"1 Play" "Replay spectrum" \
|
|
"2 Transponder" "Transmit $INPUT_RTLSDR to ""$OUTPUT_FREQ"MHZ \
|
|
"3 Fm->SSB" "Transcode FM $INPUT_RTLSDR to ""$OUTPUT_FREQ"MHZ \
|
|
"4 Set frequency" "Modify frequency (actual $INPUT_RTLSDR Mhz)" \
|
|
3>&2 2>&1 1>&3)
|
|
|
|
case "$menuchoice" in
|
|
0\ *) rtl_sdr -s 250000 -g "$INPUT_GAIN" -f "$INPUT_RTLSDR"e6 record.iq >/dev/null 2>/dev/null &
|
|
do_status;;
|
|
1\ *) sudo ./sendiq -s 250000 -f "$OUTPUT_FREQ"e6 -t u8 -i record.iq >/dev/null 2>/dev/null &
|
|
do_status;;
|
|
2\ *) FREQ_IN="$INPUT_RTLSDR"M GAIN="$INPUT_GAIN" FREQ_OUT="$OUTPUT_FREQ"e6 . "$PWD/transponder.sh" >/dev/null 2>/dev/null &
|
|
do_status;;
|
|
3\ *) FREQ_IN="$INPUT_RTLSDR"M GAIN="$INPUT_GAIN" FREQ_OUT="$OUTPUT_FREQ"e6 . "$PWD/fm2ssb.sh" >/dev/null 2>/dev/null &
|
|
do_status;;
|
|
4\ *)
|
|
do_freq_setup;;
|
|
*) status=1
|
|
whiptail --title "Bye bye" --msgbox "Thanks for using rpitx!" 8 78
|
|
;;
|
|
esac
|
|
done
|