mirror of
https://github.com/km4ack/patmenu2.git
synced 2025-05-16 06:40:10 -07:00
commit
d451d6a463
@ -93,13 +93,11 @@ if [ -f $PACKET ]; then
|
||||
rm $PACKET
|
||||
fi
|
||||
|
||||
#put date on top line of each file
|
||||
echo "List Last Downloaded $(date)" >> $FILE
|
||||
echo "List Last Downloaded $(date)" >> $FORTY
|
||||
echo "List Last Downloaded $(date)" >> $EIGHTY
|
||||
echo "List Last Downloaded $(date)" >> $TWENTY
|
||||
echo "List Last Downloaded $(date)" >> $THIRTY
|
||||
echo "List Last Downloaded $(date)" >> $PACKET
|
||||
#create file that has grid variable used in calculations
|
||||
touch $HOME/patmenu2/ardop-list/grid.txt
|
||||
MYGRID=$(grep locator $HOME/.config/pat/config.json | sed 's/.*": //;s/"//g;s/,//')
|
||||
echo "GRID=$MYGRID" > $HOME/patmenu2/ardop-list/grid.txt
|
||||
echo "LASTDL=List downloaded `date`" >> $HOME/patmenu2/ardop-list/grid.txt
|
||||
|
||||
#download list to individual files.
|
||||
DL(){
|
||||
|
124
FA-functions
124
FA-functions
@ -296,6 +296,9 @@ xdg-open $MAP
|
||||
#--------------------------------
|
||||
# Alternate Grid Download
|
||||
#--------------------------------
|
||||
|
||||
#THIS FUNCTION DEPRECATED BUT LEFT FOR REFERENCE 11MARCH2022
|
||||
|
||||
#make new dir in pat menu dir if needed
|
||||
mkdir -p $HOME/patmenu2/alt-ardop-list
|
||||
|
||||
@ -355,6 +358,10 @@ exit
|
||||
#--------------------------------
|
||||
# Load Alternate Grid List
|
||||
#--------------------------------
|
||||
|
||||
#THIS FUNCTION DEPRECATED BUT LEFT FOR REFERENCE 11MARCH2022
|
||||
|
||||
|
||||
LOADALTGRID(){
|
||||
OUTFILE=/run/user/$UID/alt-grid.list
|
||||
|
||||
@ -411,7 +418,122 @@ $MAIN &
|
||||
exit
|
||||
}
|
||||
|
||||
|
||||
#--------------------------------
|
||||
# Recalculate Distance & Bearings
|
||||
#--------------------------------
|
||||
|
||||
NEWCALC(){
|
||||
#Function to update the distance and bearing between
|
||||
#your current grid and the winlink gateways.
|
||||
#this is necessary because the calculations are initially
|
||||
#based on the grid in the pat config file at the time the
|
||||
#list is downloaded.
|
||||
#10MARCH2022 KM4ACK
|
||||
|
||||
DIR=/run/user/$UID
|
||||
TMPFILE=$DIR/tempfile
|
||||
TMPFILE2=$DIR/tempfile2
|
||||
TMPFILE3=$DIR/tempfile3
|
||||
MYGRID=$(cat /run/user/$UID/gridinfo.txt | cut -c1-6)
|
||||
|
||||
#backup current lists
|
||||
BKDIR=$MYPATH/ardop-list/bkup-`date +%F.%H%M`
|
||||
mkdir -p $BKDIR
|
||||
cp -r $HOME/patmenu2/ardop-list/*.txt $BKDIR/
|
||||
|
||||
MYGRID=$(yad --form --width=450 --text="<b>Recalculate Distance and Bearings to Gateways</b>\rThis takes 2-3 minutes to complete" \
|
||||
--text-align=center --center --title="Recalculate" --text-align=center --separator="|" --item-separator="|" \
|
||||
--image=$LOGO --window-icon=$LOGO --image-on-top \
|
||||
--field="Current Grid Square" "$MYGRID" \
|
||||
--button="Recalculate":2 \
|
||||
--button="Cancel":1)
|
||||
BUT=$?
|
||||
MYGRID=`echo $MYGRID | awk -F "|" '{print $1}'`
|
||||
|
||||
if [ $BUT = 252 ]; then
|
||||
exit
|
||||
elif [ $BUT = 1 ]; then
|
||||
$MAIN &
|
||||
exit
|
||||
fi
|
||||
|
||||
#create file that has grid variable used in calculations
|
||||
touch $HOME/patmenu2/ardop-list/grid.txt
|
||||
echo "GRID=$MYGRID" > $HOME/patmenu2/ardop-list/grid.txt
|
||||
echo "LASTDL=Recalculated `date`" >> $HOME/patmenu2/ardop-list/grid.txt
|
||||
|
||||
MAIN(){
|
||||
echo "Recalculating 20M List"
|
||||
RECALC 20mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||
--text="Recalculating 20M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||
|
||||
echo "Recalculating 30M List"
|
||||
RECALC 30mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||
--text="Recalculating 30M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||
|
||||
echo "Recalculating 40M List"
|
||||
RECALC 40mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||
--text="Recalculating 40M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||
|
||||
echo "Recalculating 80M List"
|
||||
RECALC 80mardoplist.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||
--text="Recalculating 80M List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||
|
||||
echo "Recalculating Packet list"
|
||||
RECALC packet.txt | yad --center --progress --pulsate --auto-close --no-buttons --text-align=center --title="Recalculate" \
|
||||
--text="Recalculating Packet List\r<b>DO NOT CLOSE THIS WINDOW</b>\rDoing so will abort the process\rand leave you with a corrupt list."
|
||||
|
||||
yad --center --timeout=2 --timeout-indicator=top --no-buttons --text="New Calculations Complete"
|
||||
}
|
||||
|
||||
RECALC(){
|
||||
FILE=$HOME/patmenu2/ardop-list/$1
|
||||
#check for and remove existing temp file
|
||||
if [ -f $TMPFILE3 ]; then
|
||||
rm $TMPFILE3
|
||||
fi
|
||||
|
||||
#create temp list to work with and remove headers/blank lines
|
||||
cp $FILE $TMPFILE
|
||||
sed -i 's/.*information...//;s/.*succeeded.//;s/.*url//' $TMPFILE
|
||||
sed -i '/^$/d' $TMPFILE
|
||||
|
||||
|
||||
|
||||
#read file, calculate new distance, and update
|
||||
while read LINE;
|
||||
do
|
||||
GRID=`echo $LINE | awk '{print $2}' | sed 's/\[//;s/\]//'`
|
||||
DISTANCE=`echo $LINE | awk '{print $3 }'`
|
||||
BEARING=`echo $LINE | awk '{print $4 }'`
|
||||
CALC=`/usr/bin/wwl $MYGRID $GRID`
|
||||
NEWDISTANCE=`echo $CALC | awk '{print $2}'`
|
||||
NEWBEARING=`echo $CALC | awk '{print $5}'`
|
||||
echo $LINE | sed "s/$DISTANCE/$NEWDISTANCE/;s/$BEARING/$NEWBEARING/" >> $TMPFILE2
|
||||
done < $TMPFILE
|
||||
rm $TMPFILE
|
||||
|
||||
#pad distance with zeros for sorting
|
||||
while read LINE
|
||||
do
|
||||
DISTANCE=$(echo $LINE | awk '{ print $3 }')
|
||||
NEWDISTANCE=$(echo $LINE | awk '{ print $3 }' | sed -e :a -e 's/^.\{1,4\}$/0&/;ta')
|
||||
echo $LINE | sed "s/$DISTANCE/$NEWDISTANCE/" >> $TMPFILE3
|
||||
done < $TMPFILE2
|
||||
rm $TMPFILE2
|
||||
|
||||
#sort list by distance
|
||||
sort -k3 -o $TMPFILE3 $TMPFILE3
|
||||
|
||||
cp $TMPFILE3 $HOME/patmenu2/ardop-list/$1
|
||||
}
|
||||
|
||||
#call main function
|
||||
MAIN
|
||||
#return to pat menu
|
||||
$MAIN
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
13
changelog
13
changelog
@ -1,7 +1,16 @@
|
||||
release=2.7.0
|
||||
|
||||
release=2.8.0
|
||||
|
||||
Changelog
|
||||
2.8.0 redesign layout of main screen
|
||||
add new modem menu
|
||||
add vara modem start (beta)
|
||||
add vara FM modem start (beta)
|
||||
deprecate alternate grid list download function
|
||||
deprecate load alternate grid funtion
|
||||
add gateway distance/bearing recalculation
|
||||
add "save as" to current config file see https://github.com/km4ack/patmenu2/issues/48
|
||||
add config file name to bottom of main menu
|
||||
update menu shortcut to support non-pi usernames
|
||||
2.7.0 add mobi-pair script to assist with pairing mobilinkd devices
|
||||
add mobilinkd wired modem connection (Doesn't work with version 2)
|
||||
improve mobilinkd modem start
|
||||
|
27
find2
27
find2
@ -4,18 +4,13 @@
|
||||
#20200425 KM4ACK
|
||||
#side note: written during covid-19 outbreak of 2020
|
||||
|
||||
#######DEV NOTES#############
|
||||
#############################
|
||||
|
||||
|
||||
#############################
|
||||
|
||||
MYPATH=$HOME/patmenu2
|
||||
PATMENU=$MYPATH/patmenu
|
||||
LOGO=$MYPATH/pmlogo.png
|
||||
CURRENT=$(crontab -l | grep getardoplist | awk '{print $2":"$1}')
|
||||
source $MYPATH/.grid
|
||||
GRID=$GRID
|
||||
GRID=$(grep GRID $HOME/patmenu2/ardop-list/grid.txt | sed 's/GRID=//')
|
||||
LASTDOWNLOAD=$(grep LASTDL $HOME/patmenu2/ardop-list/grid.txt | tail -1 | sed 's/LASTDL=//')
|
||||
|
||||
source $MYPATH/FA-functions
|
||||
|
||||
@ -24,12 +19,11 @@ yad --form --width=480 --text="<b>Find Gateways</b> by KM4ACK" --text-align=cent
|
||||
--text="<b>Find Gateways</b> by KM4ACK" \
|
||||
--field="Search for Gateway":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; GRIDSEARCH"' \
|
||||
--field="View Grid Map":fbtn 'bash -c "source $MYPATH/FA-functions; MAP"' \
|
||||
--field="Download Home Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; DOWNLIST"' \
|
||||
--field="Download Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; ALTGRID"' \
|
||||
--field="Load Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; LOADALTGRID"' \
|
||||
--field="Auto Download Home Grid List <b>$CURRENT</b>":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; AUTODOWN"' \
|
||||
--field="Home $LASTDL":LBL \
|
||||
--field="Grid List Currently Loaded <b>$GRID</b>":LBL \
|
||||
--field="Download Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; DOWNLIST"' \
|
||||
--field="Auto Download Gateway List <b>$CURRENT</b>":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; AUTODOWN"' \
|
||||
--field="Recalculate Distance and Bearings":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; NEWCALC"' \
|
||||
--field="$LASTDOWNLOAD":LBL \
|
||||
--field="Current calculations based on grid <b>$GRID</b>":LBL \
|
||||
--button="Main Menu":1
|
||||
|
||||
QUIT=$?
|
||||
@ -39,4 +33,9 @@ $PATMENU &
|
||||
exit
|
||||
elif [ $QUIT = 252 ]; then
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#left for reference
|
||||
#--field="Download Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; ALTGRID"' \
|
||||
#--field="Load Alternate Grid Gateway List":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/FA-functions; LOADALTGRID"' \
|
||||
|
14
getardoplist
14
getardoplist
@ -87,15 +87,13 @@ if [ -f $PACKET ]; then
|
||||
rm $PACKET
|
||||
fi
|
||||
|
||||
#put date on top line of each file
|
||||
echo "List Last Downloaded $(date)" >> $FILE
|
||||
echo "List Last Downloaded $(date)" >> $FORTY
|
||||
echo "List Last Downloaded $(date)" >> $EIGHTY
|
||||
echo "List Last Downloaded $(date)" >> $TWENTY
|
||||
echo "List Last Downloaded $(date)" >> $THIRTY
|
||||
echo "List Last Downloaded $(date)" >> $PACKET
|
||||
|
||||
#yad --center --progress --pulsate --timeout-indicator=top --auto-close --no-buttons --text="Start Download"
|
||||
#create file that has grid variable used in calculations
|
||||
touch $HOME/patmenu2/ardop-list/grid.txt
|
||||
MYGRID=$(grep locator $HOME/.config/pat/config.json | sed 's/.*": //;s/"//g;s/,//')
|
||||
echo "GRID=$MYGRID" > $HOME/patmenu2/ardop-list/grid.txt
|
||||
echo "LASTDL=List downloaded `date`" >> $HOME/patmenu2/ardop-list/grid.txt
|
||||
|
||||
|
||||
#download list to individual files.
|
||||
DL(){
|
||||
|
@ -147,6 +147,7 @@ elif [ $BUT = 2 ]; then
|
||||
exit
|
||||
else
|
||||
cp $MYPATH/$NEWCONFIG $MYPATH/config
|
||||
echo "CONF=$NEWCONFIG" > $MYPATH/.currentconf #write config file name to a file
|
||||
rm $OUTFILE
|
||||
yad --title="Config Loaded" --width=400 --height=200 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top \
|
||||
@ -206,9 +207,11 @@ SETTINGS=$(yad --form --width=600 --text-align=center --center --title="Pat Menu
|
||||
--field="AmRRON":CB "$AMRRON" \
|
||||
--field="Custom Warning":CB "$WARN" \
|
||||
--field="Warning Message" "$WARNMSG" \
|
||||
--button="Save As":3 \
|
||||
--button="Update":2 \
|
||||
--button="Cancel":1)
|
||||
BUT=$?
|
||||
|
||||
if [ $BUT = 1 ]; then
|
||||
$MAIN
|
||||
elif [ $BUT = 252 ]; then
|
||||
@ -253,6 +256,30 @@ cp $CONFIGTMP $CONFIG
|
||||
rm $CONFIGTMP
|
||||
$MAIN &
|
||||
exit
|
||||
elif [ $BUT = 3 ]; then
|
||||
NEWNAME=$(yad --form --width=600 --text-align=center --center --title="Name?" --text-align=center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
--text="<b>Pat Menu Settings</b> by KM4ACK" \
|
||||
--field="New Config Name")
|
||||
BUT=$?
|
||||
if [ $BUT = 1 ]; then
|
||||
$MAIN & exit
|
||||
elif [ $BUT = 252 ]; then
|
||||
exit
|
||||
fi
|
||||
|
||||
NEWNAME=$(echo $NEWNAME | awk -F "|" '{print $1}')
|
||||
NEWNAME=$NEWNAME.config #add .config to filename
|
||||
NEWNAME=$(echo $NEWNAME | sed 's/ /-/g') #remove spaces in file name
|
||||
|
||||
cp $CONFIG $HOME/patmenu2/$NEWNAME
|
||||
|
||||
yad --title="Config Created" --width=400 --height=200 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top \
|
||||
--center --text="$NEWNAME created\r\r<b>Don't forget to load the new config file</b>" \
|
||||
--button=gtk-ok
|
||||
$MAIN &
|
||||
exit
|
||||
fi
|
||||
}
|
||||
|
||||
|
33
modems
Executable file
33
modems
Executable file
@ -0,0 +1,33 @@
|
||||
#!/bin/bash
|
||||
|
||||
#Pat Modems
|
||||
#20220309 KM4ACK
|
||||
|
||||
|
||||
|
||||
export MYPATH=$HOME/patmenu2
|
||||
LOGO=$MYPATH/pmlogo.png
|
||||
MAIN=$MYPATH/./patmenu
|
||||
VERSION=$(cat $MYPATH/changelog | grep release | head -1 | sed 's/release=//')
|
||||
|
||||
source $MYPATH/config
|
||||
|
||||
|
||||
|
||||
yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
||||
--field="Start ARDOP Modem":fbtn 'bash -c "$MYPATH/start-pat-ardop"' \
|
||||
--field="Start Packet Modem":fbtn 'bash -c "$MYPATH/start-pat2m"' \
|
||||
--field="Start Mobilinkd Modem Bluetooth":fbtn 'bash -c "$MYPATH/mobilink"' \
|
||||
--field="Start Mobilinkd Modem Wired":fbtn 'bash -c "$MYPATH/mobi-wired"' \
|
||||
--field="Start VARA Modem (BETA)":fbtn 'bash -c "$MYPATH/start-vara-hf"' \
|
||||
--field="Start VARA FM Modem (BETA)":fbtn 'bash -c "$MYPATH/start-vara-fm"' \
|
||||
--field="Stop Modems":fbtn 'bash -c "$MYPATH/stop-modems"' \
|
||||
--button="Main Menu":1
|
||||
BUT=$?
|
||||
|
||||
if [ $BUT = 1 ]; then
|
||||
$MAIN &
|
||||
exit
|
||||
fi
|
16
patmenu
16
patmenu
@ -1,6 +1,6 @@
|
||||
#!/bin/bash
|
||||
|
||||
#Pat Catalog
|
||||
#Pat Menu
|
||||
#20200427 KM4ACK
|
||||
#side note: written during covid-19 outbreak of 2020
|
||||
|
||||
@ -41,14 +41,17 @@ yad --title="N0CALL" --width=400 --height=100 \
|
||||
--button=gtk-ok
|
||||
fi
|
||||
|
||||
#get name of current config file
|
||||
source $MYPATH/.currentconf
|
||||
CONFIG=$(echo $CONF | sed 's/.config//')
|
||||
if [ -z $CONFIG ]; then
|
||||
CONFIG=default
|
||||
fi
|
||||
|
||||
yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-align=center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
||||
--field="Start ARDOP Modem":fbtn 'bash -c "$MYPATH/start-pat-ardop"' \
|
||||
--field="Start Packet Modem":fbtn 'bash -c "$MYPATH/start-pat2m"' \
|
||||
--field="Start Mobilinkd Modem Bluetooth":fbtn 'bash -c "$MYPATH/mobilink"' \
|
||||
--field="Start Mobilinkd Modem Wired":fbtn 'bash -c "$MYPATH/mobi-wired"' \
|
||||
--field="Stop Modems":fbtn 'bash -c "$MYPATH/stop-modems"' \
|
||||
--field="Start/Stop Modem":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/modems"' \
|
||||
--field="Find Winlink Gateways":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/find2"' \
|
||||
--field="Pat Auto Connect":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; AUTOPAT"' \
|
||||
--field="Pat Catalog":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/catalog"' \
|
||||
@ -58,6 +61,7 @@ yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-al
|
||||
--field="Settings/Config":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/manage-menu"' \
|
||||
--field="Quick Stats":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; STATS"' \
|
||||
--field="My Call - $MYCALLSIGN":LBL \
|
||||
--field="Config=$CONFIG":LBL \
|
||||
--button="QUIT":1
|
||||
|
||||
BUT=$?
|
||||
|
15
setup
15
setup
@ -38,8 +38,19 @@ rm -rf $HOME/patmenu
|
||||
fi
|
||||
|
||||
|
||||
#copy new desktop link
|
||||
sudo cp $MYPATH/patmenu2.desktop /usr/share/applications/patmenu.desktop
|
||||
#create new desktop link
|
||||
cat <<EOF > /run/user/$UID/patmenu.desktop
|
||||
[Desktop Entry]
|
||||
Name=Pat Menu
|
||||
GenericName=Amateur Radio Digital Modem
|
||||
Comment=Amateur Radio Sound Card Communications
|
||||
Exec=/home/`whoami`/patmenu2/patmenu
|
||||
Icon=/home/`whoami`/patmenu2/pmlogo.png
|
||||
Terminal=false
|
||||
Type=Application
|
||||
Categories=Network;HamRadio;
|
||||
EOF
|
||||
sudo cp /run/user/$UID/patmenu.desktop /usr/share/applications/patmenu.desktop
|
||||
|
||||
#download RMS List
|
||||
$MYPATH/getardoplist
|
||||
|
134
start-vara-fm
Executable file
134
start-vara-fm
Executable file
@ -0,0 +1,134 @@
|
||||
#!/bin/bash
|
||||
|
||||
#script to start vara fm modem
|
||||
#10MARCH2022 KM4ACK
|
||||
|
||||
MYPATH=$HOME/patmenu2
|
||||
LOGO=$MYPATH/pmlogo.png
|
||||
source $MYPATH/config
|
||||
|
||||
#Check if FLRIG is running if user has it set in config file
|
||||
if [ "$RIGCONTROL" = 'yes' ]; then
|
||||
echo "rig control is on"
|
||||
FLRIG=$(echo $RIG | grep "\-m 4")
|
||||
if [ ! -z "$FLRIG" ]; then
|
||||
FLRIG=$(pidof flrig)
|
||||
if [ -z "$FLRIG" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="Please start FLRIG and try again" \
|
||||
--button=gtk-ok
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
#Check if modem is already running
|
||||
MODEMCHECK=$(ps aux | grep -i box86 | grep -i varafm)
|
||||
if [ ! -z "$MODEMCHECK" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="Packet Modem is already running" \
|
||||
--button=gtk-ok
|
||||
exit
|
||||
fi
|
||||
|
||||
#check if piardopc is running
|
||||
PIDDW=$(pidof piardopc)
|
||||
if [ ! -z "$PIDDW" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="It looks like the ARDOP modem is running.\rStop all modems and try again" \
|
||||
--button=gtk-ok
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#check if direwolf is running
|
||||
PIDDW=$(pidof direwolf)
|
||||
if [ ! -z "$PIDDW" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="It looks like direwolf is running.\rStop all modems and try again" \
|
||||
--button=gtk-ok
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#give user some feedback
|
||||
yad --width=350 --height=75 --title="Starting Modem" --timeout=20 --timeout-indicator=top --no-buttons --center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --text="Modem Starting....standby" &
|
||||
|
||||
#Set Mode
|
||||
RIGFM=$RIG" M $MODE2M"
|
||||
|
||||
SETRIG () {
|
||||
|
||||
#set radio frequency & mode
|
||||
$RIGFM
|
||||
|
||||
sleep 1
|
||||
|
||||
#check rig is in correct mode
|
||||
MODE=$($RIG m | grep $MODE2M)
|
||||
|
||||
sleep 1
|
||||
|
||||
MODECHECK() {
|
||||
#check rig is in correct mode
|
||||
MODE=$($RIG m | grep $MODE2M)
|
||||
}
|
||||
|
||||
sleep 1
|
||||
|
||||
if [ -z $MODE ]
|
||||
then
|
||||
$RIGFM
|
||||
MODECHECK
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#see if rig control is used
|
||||
if [ $RIGCONTROL == 'yes' ]; then
|
||||
PIDCTL=$(pidof rigctld)
|
||||
if [ -z "$PIDCTL" ]; then
|
||||
CONTROL=$(cat $MYPATH/config | grep '^RIG="' | sed 's/RIG="//' | sed 's/"//' | sed 's/rigctl/rigctld/')
|
||||
$CONTROL &
|
||||
rigpid=`echo $!`
|
||||
fi
|
||||
SETRIG
|
||||
fi
|
||||
|
||||
echo "starting VARA-FM"
|
||||
/usr/local/bin/wine /home/pi/.wine/drive_c/VARA\ FM/VARAFM.exe > /dev/null 2>&1 &
|
||||
sleep 7 #give vara time to start
|
||||
|
||||
#verify vara has started
|
||||
PIDVARA=$(ps aux | grep -i box86 | grep -i varafm)
|
||||
if [ -z "$PIDVARA" ]
|
||||
then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="The VARA Modem FAILED to Start" \
|
||||
--button=gtk-ok
|
||||
|
||||
else
|
||||
|
||||
yad --title="VARA MODEM" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||
--center --form --text="\r\r\r\rThe VARA Modem has Started\rJust a few more seconds" \
|
||||
--button=gtk-ok &
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
#restart pat so terminal window correctly reflects rig control
|
||||
sudo systemctl restart pat@`whoami`
|
||||
|
||||
echo "starting browser"
|
||||
#open pat inbox in browser
|
||||
export DISPLAY=:0 && xdg-open http://127.0.0.1:$PORT > /dev/null 2>&1
|
||||
|
||||
#echo "cleaning up and closing"
|
||||
#varapid=`ps aux | grep -i box86 | grep -i varafm`
|
||||
#kill $varapid > /dev/null 2>&1
|
||||
#kill $rigpid > /dev/null 2>&1
|
||||
|
134
start-vara-hf
Executable file
134
start-vara-hf
Executable file
@ -0,0 +1,134 @@
|
||||
#!/bin/bash
|
||||
|
||||
#script to start vara hf modem
|
||||
#10MARCH2022 KM4ACK
|
||||
|
||||
MYPATH=$HOME/patmenu2
|
||||
LOGO=$MYPATH/pmlogo.png
|
||||
source $MYPATH/config
|
||||
|
||||
#Check if FLRIG is running if user has it set in config file
|
||||
if [ "$RIGCONTROL" = 'yes' ]; then
|
||||
echo "rig control is on"
|
||||
FLRIG=$(echo $RIG | grep "\-m 4")
|
||||
if [ ! -z "$FLRIG" ]; then
|
||||
FLRIG=$(pidof flrig)
|
||||
if [ -z "$FLRIG" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="Please start FLRIG and try again" \
|
||||
--button=gtk-ok
|
||||
exit
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
#Check if modem is already running
|
||||
MODEMCHECK=$(ps aux | grep -i box86 | grep -i varafm)
|
||||
if [ ! -z "$MODEMCHECK" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="Packet Modem is already running" \
|
||||
--button=gtk-ok
|
||||
exit
|
||||
fi
|
||||
|
||||
#check if piardopc is running
|
||||
PIDDW=$(pidof piardopc)
|
||||
if [ ! -z "$PIDDW" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="It looks like the ARDOP modem is running.\rStop all modems and try again" \
|
||||
--button=gtk-ok
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#check if direwolf is running
|
||||
PIDDW=$(pidof direwolf)
|
||||
if [ ! -z "$PIDDW" ]; then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="It looks like direwolf is running.\rStop all modems and try again" \
|
||||
--button=gtk-ok
|
||||
exit 0
|
||||
fi
|
||||
|
||||
#give user some feedback
|
||||
yad --width=350 --height=75 --title="Starting Modem" --timeout=20 --timeout-indicator=top --no-buttons --center \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --text="Modem Starting....standby" &
|
||||
|
||||
#Set Mode
|
||||
RIGFM=$RIG" M $MODEHF"
|
||||
|
||||
SETRIG () {
|
||||
|
||||
#set radio frequency & mode
|
||||
$RIGFM
|
||||
|
||||
sleep 1
|
||||
|
||||
#check rig is in correct mode
|
||||
MODE=$($RIG m | grep $MODE2M)
|
||||
|
||||
sleep 1
|
||||
|
||||
MODECHECK() {
|
||||
#check rig is in correct mode
|
||||
MODE=$($RIG m | grep $MODE2M)
|
||||
}
|
||||
|
||||
sleep 1
|
||||
|
||||
if [ -z $MODE ]
|
||||
then
|
||||
$RIGFM
|
||||
MODECHECK
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#see if rig control is used
|
||||
if [ $RIGCONTROL == 'yes' ]; then
|
||||
PIDCTL=$(pidof rigctld)
|
||||
if [ -z "$PIDCTL" ]; then
|
||||
CONTROL=$(cat $MYPATH/config | grep '^RIG="' | sed 's/RIG="//' | sed 's/"//' | sed 's/rigctl/rigctld/')
|
||||
$CONTROL &
|
||||
rigpid=`echo $!`
|
||||
fi
|
||||
SETRIG
|
||||
fi
|
||||
|
||||
echo "starting VARA-FM"
|
||||
/usr/local/bin/wine /home/pi/.wine/drive_c/VARA/VARA.exe > /dev/null 2>&1 &
|
||||
sleep 7 #give vara time to start
|
||||
|
||||
#verify vara has started
|
||||
PIDVARA=$(ps aux | grep -i box86 | grep VARA.exe)
|
||||
if [ -z "$PIDVARA" ]
|
||||
then
|
||||
yad --title="FAILED" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||
--center --form --text="The VARA Modem FAILED to Start" \
|
||||
--button=gtk-ok
|
||||
|
||||
else
|
||||
|
||||
yad --title="VARA MODEM" --width=400 --height=100 \
|
||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||
--center --form --text="\r\r\r\rThe VARA Modem has Started\rJust a few more seconds" \
|
||||
--button=gtk-ok &
|
||||
fi
|
||||
|
||||
sleep 1
|
||||
#restart pat so terminal window correctly reflects rig control
|
||||
sudo systemctl restart pat@`whoami`
|
||||
|
||||
echo "starting browser"
|
||||
#open pat inbox in browser
|
||||
export DISPLAY=:0 && xdg-open http://127.0.0.1:$PORT > /dev/null 2>&1
|
||||
|
||||
#echo "cleaning up and closing"
|
||||
#varapid=`ps aux | grep -i box86 | grep VARA.exe`
|
||||
#kill $varapid > /dev/null 2>&1
|
||||
#kill $rigpid > /dev/null 2>&1
|
||||
|
Loading…
x
Reference in New Issue
Block a user