add fm scripts

pacsat-loop-old
Alan Johnston 2 months ago
parent 94041dac3e
commit dc697a8306

@ -0,0 +1,5 @@
#!/bin/bash
sudo modprobe snd-aloop
direwolf -P+ -D1 -qd -dp -r 48000 -c /home/pi/CubeSatSim/direwolf/direwolf-pacsatsim-jp14.conf -t 0

@ -0,0 +1,211 @@
#!/bin/bash
# script to auto decode packet using rtl_fm and Direwolf and run Pacsat
export LD_LIBRARY_PATH=/mnt/usb-disk/ariss/lib:/usr/local/lib/iors_common:$LD_LIBRARY_PATH
#sudo systemctl stop cubesatsim
#sudo systemctl stop transmit
sudo systemctl stop command &>/dev/null
sudo modprobe snd-aloop
#sudo systemctl stop openwebrx
#sudo systemctl stop rtl_tcp &>/dev/null
#pkill -o chromium &>/dev/null
#sudo killall -9 rtl_fm &>/dev/null
#sudo killall -9 direwolf &>/dev/null
#udo killall -9 aplay &>/dev/null
#sudo killall -9 qsstv &>/dev/null
#sudo killall -9 rtl_tcp &>/dev/null
#sudo killall -9 java &>/dev/null
#sudo killall -9 CubicSDR &>/dev/null
#sudo killall -9 zenity &>/dev/null
echo
#frequency=$(zenity --list 2>/dev/null --width=410 --height=360 --title="Packet Decoding with Direwolf" --text="Choose the frequency for packet decoding" --column="kHz" --column="Application" 144390 "APRS US 2m" 434900 "CubeSatSim" 144800 "APRS European 2m" 145175 "APRS Australian 2m" Other "Choose another frequency" 145825 "APRS on ISS" 437100 "Serenity CubeSat 4800 bps" Serenity "Test Serenity CubeSat decoding with WAV file" APRS "Test APRS decoding with CubeSatSim WAV file")
#echo $frequency
#if [ -z "$frequency" ]; then
#echo "No choice made. Exiting."
#sleep 3
#exit
#echo "Choose the number for the packet decoding option:"
#echo
#echo "1. APRS US 2m (144390 kHz)"
#echo "2. CubeSatSim (434900 kHz)"
#echo "3. APRS European 2m (144800 kHz)"
#echo "4. APRS Australian 2m (145175 kHz)"
#echo "5. APRS on another frequency"
#echo "6. APRS on ISS (145825 kHz)"
#echo "7. Serenity CubeSat 4800 bps (437.1 MHz)"
#echo "8. Test Serenity CubeSat decoding with WAV file"
#echo "9. Test APRS decoding with CubeSatSim WAV file"
#echo
#read -r choice
choice=2
#fi
if [ "$choice" = "1" ] || [ "$frequency" = "144390" ]; then
frequency=144390000
elif [ "$choice" = "2" ] || [ "$frequency" = "434900" ] ; then
frequency=434900000
echo
echo "If your Pacsat Ground Station is transmitting packets, you will see them here"
echo
elif [ "$choice" = "3" ] || [ "$frequency" = "144800" ]; then
frequency=144800000
elif [ "$choice" = "4" ] || [ "$frequency" = "145175" ]; then
frequency=145175000
elif [ "$choice" = "5" ] || [ "$frequency" = "Other" ] ; then
echo
echo "Enter the frequency in kiloHertz"
echo
read -r frequency
frequency=$frequency"000"
#echo $frequency
elif [ "$choice" = "6" ] || [ "$frequency" = "145825" ] ; then
frequency=145825000
echo
echo "If the ISS is overhead and in APRS mode (see tracking application such as Gpredict), you will see packets."
echo
elif [ "$choice" = "7" ] || [ "$frequency" = "437100" ] ; then
frequency=437100000
echo
echo "If the Serenity CubeSat is overhead and transmitting (see tracking application such as Gpredict), you will see packets."
echo
elif [ "$choice" = "8" ] || [ "$frequency" = "Serenity" ] ; then
echo "A recorded WAV file will play and you should see some packets decoded"
echo
value=`aplay -l | grep "Loopback"`
echo "$value" > /dev/null
set -- $value
# aplay -D hw:0,0 /home/pi/CubeSatSim/groundstation/WAV/SDRSharp_20210830_200034Z_437097377Hz_AF.wav &
# aplay -D hw:${2:0:1},0,0 /home/pi/CubeSatSim/groundstation/WAV/SDRSharp_20210830_200034Z_437097377Hz_AF.wav &
aplay -D hw:0,0 /home/pi/CubeSatSim/groundstation/WAV/beacon_test_2.wav &
aplay -D hw:${2:0:1},0,0 /home/pi/CubeSatSim/groundstation/WAV/beacon_test_2.wav &
timeout 30 direwolf -c /home/pi/CubeSatSim/groundstation/direwolf/direwolf-4800.conf -r 48000 -t 0
echo
echo "Test complete. This window will close in 10 seconds."
sleep 5
exit
elif [ "$choice" = "8" ] || [ "$frequency" = "APRS" ] ; then
echo "A recorded APRS WAV file from the CubeSatSim will play and you should see a packet decoded."
echo
value=`aplay -l | grep "Loopback"`
echo "$value" > /dev/null
set -- $value
#aplay -D hw:0,0 /home/pi/CubeSatSim/telem.wav &
(while true; do (sleep 2 && aplay -D hw:0,0 /home/pi/CubeSatSim/telem.wav &>/dev/null); done) &
#aplay -D hw:${2:0:1},0,0 /home/pi/CubeSatSim/telem.wav &
(while true; do (sleep 2 && aplay -D hw:${2:0:1},0,0 /home/pi/CubeSatSim/telem.wav &>/dev/null); done) &
timeout 30 direwolf -c /home/pi/CubeSatSim/groundstation/direwolf/direwolf.conf -r 48000 -t 0
echo
echo "Test complete. This window will close in 10 seconds."
sleep 5
exit
#fi
fi
#echo
#echo "Note that the 'Tuned to' frequency will be different from the chosen frequency due to the way SDRs work."
echo
if [ "$choice" = "7" ] || [ "$choice" = "8" ] || [ "$frequency" = "Serenity" ] || [ "$frequency" = "437100000" ] ; then
echo -e "Auto decoding 4800 bps AX.25 packets on $frequency Hz"
direwolf -r 48000 -c /home/pi/CubeSatSim/groundstation/direwolf/direwolf-4800.conf -t 0 &
else
# echo -e "Auto decoding APRS Pacsat packets on $frequency Hz"
# direwolf -P+ -D1 -qd -dp -r 48000 -c /home/pi/CubeSatSim/direwolf/direwolf-pacsatsim-loopback.conf -t 0 &
/usr/bin/x-terminal-emulator --geometry=120x40 -e "/home/pi/CubeSatSim/pacsatsim-df.sh"
### arecord -D plughw:CARD=Loopback,DEV=1 -f S16_LE -r 48000 -c 1 | csdr convert_s16_f | csdr gain_ff 14000 | csdr convert_f_samplerf 20833 | sudo rpitx -i- -m RF -f 434900 &
echo "Don't close the direwolf window or the Pacsatsim will stop running."
echo
fi
sleep 5
value=`aplay -l | grep "Loopback"`
echo "$value" > /dev/null
set -- $value
#rtl_fm -M fm -f $frequency -s 48k | tee >(aplay -D hw:${2:0:1},0,0 -r 48000 -t raw -f S16_LE -c 1) | aplay -D hw:0,0 -r 48000 -t raw -f S16_LE -c 1 &
cd /home/pi/pi_pacsat/Debug
./pi_pacsat -c pacsat.config -d /home/pi/PacSat
sleep 5
Loading…
Cancel
Save

Powered by TurnKey Linux.