From 170728bd4847d89682c8d8082a305789cbbb6973 Mon Sep 17 00:00:00 2001 From: F5OEO Date: Sat, 24 Nov 2018 16:30:06 +0000 Subject: [PATCH] Change 434MHZ output only to general coverage --- easytest.sh | 82 +++++++++++++++++++++++++++++++++++++++--------- fm2ssb.sh | 2 +- rtlmenu.sh | 49 ++++++++++++++++++++++------- snap2spectrum.sh | 2 +- snapsstv.sh | 2 +- testam.sh | 2 +- testchirp.sh | 2 +- testfmrds.sh | 2 +- testfreedv.sh | 2 +- testfsq.sh | 2 +- testnfm.sh | 2 +- testopera.sh | 2 +- testpocsag.sh | 2 +- testspectrum.sh | 2 +- testssb.sh | 2 +- testsstv.sh | 2 +- testvfo.sh | 2 +- transponder.sh | 2 +- 18 files changed, 121 insertions(+), 42 deletions(-) diff --git a/easytest.sh b/easytest.sh index 1c205f1..599ba8d 100755 --- a/easytest.sh +++ b/easytest.sh @@ -1,9 +1,46 @@ #!/bin/bash status="0" +OUTPUT_FREQ=434.0 +LAST_ITEM="0 Tune" +do_freq_setup() +{ + +FREQ=$(whiptail --inputbox "Choose output Frequency (in MHZ) Default is 434MHZ" 8 78 $OUTPUT_FREQ --title "Rpitx transmit Frequency" 3>&1 1>&2 2>&3) +if [ $? -eq 0 ]; then + OUTPUT_FREQ=$FREQ +fi + +} + +do_stop_transmit() +{ + sudo killall tune 2>/dev/null + sudo killall pichirp 2>/dev/null + sudo killall spectrumpaint 2>/dev/null + sudo killall pifmrds 2>/dev/null + sudo killall sendiq 2>/dev/null + sudo killall pocsag 2>/dev/null + sudo killall piopera 2>/dev/null + sudo killall rpitx 2>/dev/null + sudo killall freedv 2>/dev/null + sudo killall pisstv 2>/dev/null +} + +do_status() +{ + LAST_ITEM="$menuchoice" + whiptail --title "Transmit ""$LAST_ITEM"" on ""$OUTPUT_FREQ""MHZ" --msgbox "Transmitting" 8 78 + do_stop_transmit +} + + +do_freq_setup + while [ "$status" -eq 0 ] do - menuchoice=$(whiptail --title "Rpitx on 434Mhz" --menu "Choose your test, ctrl^c to end a test" 20 82 12 \ + menuchoice=$(whiptail --default-item "$LAST_ITEM" --title "Rpitx on ""$OUTPUT_FREQ""MHZ" --menu "Choose your test" 20 82 12 \ + "F Set frequency" "Modify frequency (actual $INPUT_RTLSDR Mhz)" \ "0 Tune" "Carrier" \ "1 Chirp" "Moving carrier" \ "2 Spectrum" "Spectrum painting" \ @@ -17,21 +54,36 @@ status="0" "10 Pocsag" "Pager message" \ "11 Opera" "Like morse but need Opera decoder" \ 3>&2 2>&1 1>&3) - + case "$menuchoice" in - 0\ *) "./testvfo.sh" >/dev/null 2>/dev/null ;; - 1\ *) "./testchirp.sh" >/dev/null 2>/dev/null ;; - 2\ *) "./testspectrum.sh" >/dev/null 2>/dev/null ;; - 3\ *) "./snap2spectrum.sh" >/dev/null 2>/dev/null ;; - 4\ *) "./testfmrds.sh" >/dev/null 2>/dev/null ;; - 5\ *) "./testnfm.sh" >/dev/null 2>/dev/null ;; - 6\ *) "./testssb.sh" >/dev/null 2>/dev/null ;; - 7\ *) "./testam.sh" >/dev/null 2>/dev/null ;; - 8\ *) "./testfreedv.sh" >/dev/null 2>/dev/null ;; - 9\ *) "./testsstv.sh" >/dev/null 2>/dev/null ;; - 10\ *) "./testpocsag.sh" >/dev/null 2>/dev/null ;; - 11\ *) "./testopera.sh" >/dev/null 2>/dev/null ;; - *) status=1;; + F\ *) do_freq_setup ;; + 0\ *) "./testvfo.sh" "$OUTPUT_FREQ""e6" >/dev/null 2>/dev/null & + do_status;; + 1\ *) "./testchirp.sh" "$OUTPUT_FREQ""e6" >/dev/null 2>/dev/null & + do_status;; + 2\ *) "./testspectrum.sh" "$OUTPUT_FREQ""e6" >/dev/null 2>/dev/null & + do_status;; + 3\ *) "./snap2spectrum.sh" "$OUTPUT_FREQ""e6" >/dev/null 2>/dev/null & + do_status;; + 4\ *) "./testfmrds.sh" "$OUTPUT_FREQ" >/dev/null 2>/dev/null & + do_status;; + 5\ *) "./testnfm.sh" "$OUTPUT_FREQ""e3" >/dev/null 2>/dev/null & + do_status;; + 6\ *) "./testssb.sh" "$OUTPUT_FREQ""e6" >/dev/null 2>/dev/null & + do_status;; + 7\ *) "./testam.sh" "$OUTPUT_FREQ""e3" >/dev/null 2>/dev/null & + do_status;; + 8\ *) "./testfreedv.sh" "$OUTPUT_FREQ""e6" >/dev/null 2>/dev/null & + do_status;; + 9\ *) "./testsstv.sh" "$OUTPUT_FREQ""e6">/dev/null 2>/dev/null & + do_status;; + 10\ *) "./testpocsag.sh" "$OUTPUT_FREQ""e6">/dev/null 2>/dev/null & + do_status;; + 11\ *) "./testopera.sh" "$OUTPUT_FREQ""e6">/dev/null 2>/dev/null & + do_status;; + *) status=1 + whiptail --title "Bye bye" --msgbox "Thx for using rpitx" 8 78 + ;; esac done diff --git a/fm2ssb.sh b/fm2ssb.sh index d2dd24a..fc1147a 100755 --- a/fm2ssb.sh +++ b/fm2ssb.sh @@ -1,3 +1,3 @@ echo fm2ssb.sh freq gain -rtl_fm -f $1 -s 250k -r 48k -g $2 - | csdr convert_i16_f | csdr fir_interpolate_cc 2| csdr dsb_fc | csdr bandpass_fir_fft_cc 0.002 0.06 0.01 | csdr fastagc_ff | buffer | sudo ./sendiq -i /dev/stdin -s 96000 -f 434.0e6 -t float +rtl_fm -f $1 -s 250k -r 48k -g $2 - | csdr convert_i16_f | csdr fir_interpolate_cc 2| csdr dsb_fc | csdr bandpass_fir_fft_cc 0.002 0.06 0.01 | csdr fastagc_ff | buffer | sudo ./sendiq -i /dev/stdin -s 96000 -f $3 -t float # | sox -traw -r48k -es -b16 - -c1 -r 48k -traw - \ No newline at end of file diff --git a/rtlmenu.sh b/rtlmenu.sh index a4bcf6c..65067df 100755 --- a/rtlmenu.sh +++ b/rtlmenu.sh @@ -1,7 +1,9 @@ #!/bin/bash status="0" INPUT_RTLSDR=434.0 -INPUT_GAIN=0 +INPUT_GAIN=35 +OUTPUT_FREQ=434.0 +LAST_ITEM="0 Record" do_freq_setup() { @@ -16,6 +18,24 @@ if [ $? -eq 0 ]; then INPUT_GAIN=$GAIN fi +FREQ=$(whiptail --inputbox "Choose output Frequency (in MHZ) Default is 434MHZ" 8 78 $OUTPUT_FREQ --title "Transmit Frequency" 3>&1 1>&2 2>&3) +if [ $? -eq 0 ]; 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 @@ -23,22 +43,29 @@ do_freq_setup while [ "$status" -eq 0 ] do - menuchoice=$(whiptail --title "Rpitx with RTLSDR" --menu "Choose your test, ctrl^c to end a test" 20 82 12 \ + 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 434MHZ" \ - "3 Fm->SSB" "Transcode FM $INPUT_RTLSDR to 434MHZ" \ + "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"M record.iq >/dev/null 2>/dev/null ;; - 1\ *) sudo ./sendiq -s 250000 -f "$INPUT_RTLSDR"e6 -t u8 -i record.iq >/dev/null 2>/dev/null ;; - 2\ *) source $"$PWD/transponder.sh" "$INPUT_RTLSDR"M $INPUT_GAIN ;; - 3\ *) source $"$PWD/fm2ssb.sh" "$INPUT_RTLSDR"M $INPUT_GAIN >/dev/null 2>/dev/null ;; - 4\ *) do_freq_setup ;; - *) status=1;; + 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\ *) source $"$PWD/transponder.sh" "$INPUT_RTLSDR"M $INPUT_GAIN $OUTPUT_FREQ"e6" >/dev/null 2>/dev/null & + do_status;; + 3\ *) source $"$PWD/fm2ssb.sh" "$INPUT_RTLSDR"M $INPUT_GAIN $OUTPUT_FREQ"e6" >/dev/null 2>/dev/null & + do_status;; + 4\ *) + do_freq_setup;; + *) status=1 + whiptail --title "Bye bye" --msgbox "Thx for using rpitx" 8 78 + ;; esac - + done exit diff --git a/snap2spectrum.sh b/snap2spectrum.sh index efb14cf..4aadce5 100755 --- a/snap2spectrum.sh +++ b/snap2spectrum.sh @@ -3,7 +3,7 @@ raspistill -w 320 -h 256 -o picture.jpg -t 1 #convert picture.jpg -flip -colors 16 -colorspace gray -colorspace YUV picture.yuv #convert BBC-Test-Card-F320x256.jpg -flip -quantize YUV -dither FloydSteinberg -colors 4 -interlace partition picture.yuv convert picture.jpg -flip -quantize YUV -dither FloydSteinberg -colors 4 -interlace partition picture.yuv -sudo ./spectrumpaint picture.Y 434.0e6 100000 +sudo ./spectrumpaint picture.Y $1 100000 #convert -depth 8 picture.jpg picture.rgb diff --git a/snapsstv.sh b/snapsstv.sh index f1fb2a9..25629ec 100755 --- a/snapsstv.sh +++ b/snapsstv.sh @@ -1,6 +1,6 @@ raspistill -w 320 -h 256 -o picture.jpg -t 1 convert -depth 8 picture.jpg picture.rgb -sudo ./pisstv picture.rgb 434e6 +sudo ./pisstv picture.rgb $1 diff --git a/testam.sh b/testam.sh index 30ce2c0..d764427 100755 --- a/testam.sh +++ b/testam.sh @@ -1,3 +1,3 @@ #TODO using the AM mode from librpitx echo Need to implement -(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr gain_ff 4.0 | csdr dsb_fc | sudo ./rpitx -i - -m IQFLOAT -f 434000 -s 48000 +(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr gain_ff 4.0 | csdr dsb_fc | sudo ./rpitx -i - -m IQFLOAT -f $1 -s 48000 diff --git a/testchirp.sh b/testchirp.sh index bad2e25..de57307 100755 --- a/testchirp.sh +++ b/testchirp.sh @@ -1,2 +1,2 @@ -sudo ./pichirp 433.95e6 100000 5 +sudo ./pichirp $1 100000 5 diff --git a/testfmrds.sh b/testfmrds.sh index 0436f7f..3719f6e 100755 --- a/testfmrds.sh +++ b/testfmrds.sh @@ -1 +1 @@ -sudo ./pifmrds -freq 434 -audio src/pifmrds/stereo_44100.wav +sudo ./pifmrds -freq $1 -audio src/pifmrds/stereo_44100.wav diff --git a/testfreedv.sh b/testfreedv.sh index edbd9b6..9a4f668 100755 --- a/testfreedv.sh +++ b/testfreedv.sh @@ -1,2 +1,2 @@ -sudo ./freedv src/freedv/VCO800XA.rf 434e6 400 +sudo ./freedv src/freedv/VCO800XA.rf $1 400 diff --git a/testfsq.sh b/testfsq.sh index 4ec90e1..1a4c759 100755 --- a/testfsq.sh +++ b/testfsq.sh @@ -1 +1 @@ -sudo ./pifsq "Test" 434e6 +sudo ./pifsq "Test" $1 diff --git a/testnfm.sh b/testnfm.sh index d43b6a7..62b7d2f 100755 --- a/testnfm.sh +++ b/testnfm.sh @@ -2,5 +2,5 @@ # Need to use a direct FM modulation with librpitx and not using IQ : TODO echo "If you need to test broadcast FM , use PiFMRDS" #(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr gain_ff 2500 | sudo ./sendiq -i /dev/stdin -s 24000 -f 434e6 -t float 1 -(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr gain_ff 7000 | csdr convert_f_samplerf 20833 | sudo ./rpitx -i- -m RF -f 434000 +(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr gain_ff 7000 | csdr convert_f_samplerf 20833 | sudo ./rpitx -i- -m RF -f $1 diff --git a/testopera.sh b/testopera.sh index 235a197..e2a65f8 100755 --- a/testopera.sh +++ b/testopera.sh @@ -1,3 +1,3 @@ -sudo ./piopera F5OEO 0.5 434e6 +sudo ./piopera F5OEO 0.5 $1 diff --git a/testpocsag.sh b/testpocsag.sh index a5a4aea..4dd52b0 100755 --- a/testpocsag.sh +++ b/testpocsag.sh @@ -1 +1 @@ -echo -e "1:YOURCALL\n2: Hello world" | sudo ./pocsag -f 434.e6 +echo -e "1:YOURCALL\n2: Hello world" | sudo ./pocsag -f $1 diff --git a/testspectrum.sh b/testspectrum.sh index 718d2b3..9a49f97 100755 --- a/testspectrum.sh +++ b/testspectrum.sh @@ -1,2 +1,2 @@ convert BBC.jpg -flip -quantize YUV -dither FloydSteinberg -colors 4 -interlace partition picture.yuv -sudo ./spectrumpaint picture.Y 434.0e6 100000 +sudo ./spectrumpaint picture.Y $1 100000 diff --git a/testssb.sh b/testssb.sh index 87d3adc..37b939b 100755 --- a/testssb.sh +++ b/testssb.sh @@ -1,2 +1,2 @@ -(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr fir_interpolate_cc 2| csdr dsb_fc | csdr bandpass_fir_fft_cc 0.002 0.06 0.01 | csdr fastagc_ff | sudo ./sendiq -i /dev/stdin -s 96000 -f 434.0e6 -t float +(while true; do cat sampleaudio.wav; done) | csdr convert_i16_f | csdr fir_interpolate_cc 2| csdr dsb_fc | csdr bandpass_fir_fft_cc 0.002 0.06 0.01 | csdr fastagc_ff | sudo ./sendiq -i /dev/stdin -s 96000 -f $1 -t float diff --git a/testsstv.sh b/testsstv.sh index d256309..9a9da86 100755 --- a/testsstv.sh +++ b/testsstv.sh @@ -1,2 +1,2 @@ convert -depth 8 BBC.jpg picture.rgb -sudo ./pisstv picture.rgb 434e6 +sudo ./pisstv picture.rgb $1 diff --git a/testvfo.sh b/testvfo.sh index a03c4a0..c1bbfd5 100755 --- a/testvfo.sh +++ b/testvfo.sh @@ -1 +1 @@ -sudo tune -f 434.0e6 +sudo tune -f $1 diff --git a/transponder.sh b/transponder.sh index ffda7c7..f5e13f6 100755 --- a/transponder.sh +++ b/transponder.sh @@ -1,4 +1,4 @@ #You need a rtl-sdr dongle in order to run this echo "transponder FreqIn(Mhz) Gain(0-45)" -rtl_sdr -s 250000 -g "$2" -f "$1" - | buffer | sudo ./sendiq -s 250000 -f 434.0e6 -t u8 -i - +rtl_sdr -s 250000 -g "$2" -f "$1" - | buffer | sudo ./sendiq -s 250000 -f $3 -t u8 -i -