mirror of
https://github.com/km4ack/patmenu2.git
synced 2025-05-16 23:00:11 -07:00
commit
a3bb36ab1e
@ -1,7 +1,13 @@
|
|||||||
release=2.6.1
|
release=2.7.0
|
||||||
|
|
||||||
|
|
||||||
Changelog
|
Changelog
|
||||||
|
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
|
||||||
|
clean up initial config file
|
||||||
|
add new custom warning feature
|
||||||
|
fix path for repairing config file
|
||||||
2.6.1 improve GPS weather accuracy
|
2.6.1 improve GPS weather accuracy
|
||||||
update ARDOP modem start
|
update ARDOP modem start
|
||||||
update Packet modem start
|
update Packet modem start
|
||||||
|
21
config
21
config
@ -1,19 +1,10 @@
|
|||||||
#20191230 KM4ACK
|
#20191230 KM4ACK
|
||||||
|
#last edit 04MARCH2022 KM4ACK
|
||||||
#This setup is designed to work with a VOX soundcard (ie Signalink)
|
|
||||||
#If using a VOX soundcard or radio with a VOX soundcard built in
|
|
||||||
#simply edit the call sign below to yours and change
|
|
||||||
#RIGCONTROL=no to RIGCONTROL=yes below.
|
|
||||||
#Now test the setup. Be sure you have FLRIG open
|
|
||||||
#and configured for your radio.
|
|
||||||
#AMRRON operators see bottom of this file for trimode.
|
|
||||||
|
|
||||||
|
|
||||||
#change next line to your call sign
|
#change next line to your call sign
|
||||||
MYCALLSIGN=N0CALL
|
MYCALLSIGN=N0CALL
|
||||||
|
|
||||||
#enter your piardopc command on the line below
|
#command to start ARDOP modem
|
||||||
#Be sure to not delete the quotation marks.
|
|
||||||
ARDOP="$HOME/ardop/./piardopc 8515 plughw:1,0 plughw:1,0"
|
ARDOP="$HOME/ardop/./piardopc 8515 plughw:1,0 plughw:1,0"
|
||||||
|
|
||||||
#Path to ardop-gui if installed
|
#Path to ardop-gui if installed
|
||||||
@ -52,22 +43,18 @@ MODEHF=USB
|
|||||||
#Mode used for packet digital comms on your radio
|
#Mode used for packet digital comms on your radio
|
||||||
MODE2M=FM
|
MODE2M=FM
|
||||||
|
|
||||||
#port number used by pat html service
|
#port number for pat inbox ie. 127.0.0.1:8080
|
||||||
#pat default is 8080. I prefer 5000
|
|
||||||
PORT=8080
|
PORT=8080
|
||||||
|
|
||||||
#Path to log file
|
#Path to log file
|
||||||
LOG=$HOME/Documents/mylog.txt
|
LOG=$HOME/Documents/mylog.txt
|
||||||
|
|
||||||
#Below this line is only useful to AMRRON operators. Others shouldn't edit below this line.
|
#Below this line is only useful to AMRRON operators. Others shouldn't edit below this line.
|
||||||
#NOTE:The amrron portion of this script is still experimental.
|
#NOTE:The AMRRON portion of this script is still experimental.
|
||||||
|
|
||||||
#set next line to yes for tri-mode setup
|
#set next line to yes for tri-mode setup
|
||||||
AMRRON=no
|
AMRRON=no
|
||||||
|
|
||||||
#amrron operaters should save/exit this config file after setting above to yes and then run
|
|
||||||
# bash ~/patmenu/trimode
|
|
||||||
#to enable trimode ops
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -25,6 +25,8 @@ SETTINGS=$(yad --form --width=600 --text-align=center --center --title="Pat Menu
|
|||||||
--field="Pat Port" "$PORT" \
|
--field="Pat Port" "$PORT" \
|
||||||
--field="Log File Location" "$LOG" \
|
--field="Log File Location" "$LOG" \
|
||||||
--field="AmRRON":CB "no|yes" \
|
--field="AmRRON":CB "no|yes" \
|
||||||
|
--field="Custom Warning":CB "no|yes" \
|
||||||
|
--field="Warning Message" "$WARNMSG" \
|
||||||
--button="Create":2 \
|
--button="Create":2 \
|
||||||
--button="Cancel":1)
|
--button="Cancel":1)
|
||||||
BUT=$?
|
BUT=$?
|
||||||
@ -47,6 +49,8 @@ MODE2M=$(echo $SETTINGS | awk -F "|" '{print $11}')
|
|||||||
PORT=$(echo $SETTINGS | awk -F "|" '{print $12}')
|
PORT=$(echo $SETTINGS | awk -F "|" '{print $12}')
|
||||||
LOG=$(echo $SETTINGS | awk -F "|" '{print $13}')
|
LOG=$(echo $SETTINGS | awk -F "|" '{print $13}')
|
||||||
AMRRON=$(echo $SETTINGS | awk -F "|" '{print $14}')
|
AMRRON=$(echo $SETTINGS | awk -F "|" '{print $14}')
|
||||||
|
WARN=$(echo $SETTINGS | awk -F "|" '{print $15}')
|
||||||
|
WARNMSG=$(echo $SETTINGS | awk -F "|" '{print $16}')
|
||||||
|
|
||||||
NAME=$(yad --form --width=600 --text-align=center --center --title="Name?" --text-align=center \
|
NAME=$(yad --form --width=600 --text-align=center --center --title="Name?" --text-align=center \
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
@ -81,6 +85,8 @@ echo "MODE2M=$MODE2M" >> $CONFIGTMP
|
|||||||
echo "PORT=$PORT" >> $CONFIGTMP
|
echo "PORT=$PORT" >> $CONFIGTMP
|
||||||
echo "LOG=$LOG" >> $CONFIGTMP
|
echo "LOG=$LOG" >> $CONFIGTMP
|
||||||
echo "AMRRON=$AMRRON" >> $CONFIGTMP
|
echo "AMRRON=$AMRRON" >> $CONFIGTMP
|
||||||
|
echo "WARN=$WARN" >> $CONFIGTMP
|
||||||
|
echo "WARNMSG=\"$WARNMSG\"" >> $CONFIGTMP
|
||||||
CHECKFILE=$(ls $MYPATH | grep $NEWCONFIG)
|
CHECKFILE=$(ls $MYPATH | grep $NEWCONFIG)
|
||||||
if [ -z "$CHECKFILE" ];then
|
if [ -z "$CHECKFILE" ];then
|
||||||
cp $CONFIGTMP $MYPATH/$NEWCONFIG
|
cp $CONFIGTMP $MYPATH/$NEWCONFIG
|
||||||
@ -175,6 +181,12 @@ else
|
|||||||
AMRRON="no|yes"
|
AMRRON="no|yes"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ "$WARN" = 'yes' ]; then
|
||||||
|
WARN="yes|no"
|
||||||
|
else
|
||||||
|
WARN="no|yes"
|
||||||
|
fi
|
||||||
|
|
||||||
SETTINGS=$(yad --form --width=600 --text-align=center --center --title="Pat Menu Settings" --text-align=center \
|
SETTINGS=$(yad --form --width=600 --text-align=center --center --title="Pat Menu Settings" --text-align=center \
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
--text="<b>Pat Menu Settings</b> by KM4ACK" \
|
--text="<b>Pat Menu Settings</b> by KM4ACK" \
|
||||||
@ -192,6 +204,8 @@ SETTINGS=$(yad --form --width=600 --text-align=center --center --title="Pat Menu
|
|||||||
--field="Pat Port" "$PORT" \
|
--field="Pat Port" "$PORT" \
|
||||||
--field="Log File Location" "$LOG" \
|
--field="Log File Location" "$LOG" \
|
||||||
--field="AmRRON":CB "$AMRRON" \
|
--field="AmRRON":CB "$AMRRON" \
|
||||||
|
--field="Custom Warning":CB "$WARN" \
|
||||||
|
--field="Warning Message" "$WARNMSG" \
|
||||||
--button="Update":2 \
|
--button="Update":2 \
|
||||||
--button="Cancel":1)
|
--button="Cancel":1)
|
||||||
BUT=$?
|
BUT=$?
|
||||||
@ -214,6 +228,8 @@ MODE2M=$(echo $SETTINGS | awk -F "|" '{print $11}')
|
|||||||
PORT=$(echo $SETTINGS | awk -F "|" '{print $12}')
|
PORT=$(echo $SETTINGS | awk -F "|" '{print $12}')
|
||||||
LOG=$(echo $SETTINGS | awk -F "|" '{print $13}')
|
LOG=$(echo $SETTINGS | awk -F "|" '{print $13}')
|
||||||
AMRRON=$(echo $SETTINGS | awk -F "|" '{print $14}')
|
AMRRON=$(echo $SETTINGS | awk -F "|" '{print $14}')
|
||||||
|
WARN=$(echo $SETTINGS | awk -F "|" '{print $15}')
|
||||||
|
WARNMSG=$(echo $SETTINGS | awk -F "|" '{print $16}')
|
||||||
|
|
||||||
echo "#Config file for Pat Menu" > $CONFIGTMP
|
echo "#Config file for Pat Menu" > $CONFIGTMP
|
||||||
echo "#20200429 KM4ACK" >> $CONFIGTMP
|
echo "#20200429 KM4ACK" >> $CONFIGTMP
|
||||||
@ -231,6 +247,8 @@ echo "MODE2M=$MODE2M" >> $CONFIGTMP
|
|||||||
echo "PORT=$PORT" >> $CONFIGTMP
|
echo "PORT=$PORT" >> $CONFIGTMP
|
||||||
echo "LOG=$LOG" >> $CONFIGTMP
|
echo "LOG=$LOG" >> $CONFIGTMP
|
||||||
echo "AMRRON=$AMRRON" >> $CONFIGTMP
|
echo "AMRRON=$AMRRON" >> $CONFIGTMP
|
||||||
|
echo "WARN=$WARN" >> $CONFIGTMP
|
||||||
|
echo "WARNMSG=\"$WARNMSG\"" >> $CONFIGTMP
|
||||||
cp $CONFIGTMP $CONFIG
|
cp $CONFIGTMP $CONFIG
|
||||||
rm $CONFIGTMP
|
rm $CONFIGTMP
|
||||||
$MAIN &
|
$MAIN &
|
||||||
|
@ -478,7 +478,7 @@ PATV=$(pat version | awk '{print $2}' | sed 's/v0.//' | awk -F "." '{print $1}')
|
|||||||
if [ $PATV -le 11 ]; then
|
if [ $PATV -le 11 ]; then
|
||||||
PATPATH=$HOME/.wl2k/
|
PATPATH=$HOME/.wl2k/
|
||||||
else
|
else
|
||||||
PATPATH=$XDGHOME_CONFIG_PATH/
|
PATPATH=$XDG_CONFIG_HOME/pat/
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
81
mobi-pair
Executable file
81
mobi-pair
Executable file
@ -0,0 +1,81 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#this script attempts to pair a Mobilinkd TNC with the Pi.
|
||||||
|
#04MARCH2022 KM4ACK
|
||||||
|
|
||||||
|
EXISTING=`bluetoothctl paired-devices | grep Mobilinkd`
|
||||||
|
TMP=/run/user/$UID/mobi.txt
|
||||||
|
|
||||||
|
#see if we already have a TNC paired
|
||||||
|
if [ -n "$EXISTING" ]; then
|
||||||
|
clear;echo;echo
|
||||||
|
cat <<EOF
|
||||||
|
A Mobilinkd TNC is already paired with this pi.
|
||||||
|
Remove the existing pairing and try again.
|
||||||
|
EOF
|
||||||
|
sleep 3
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if ! hash expect 2>/dev/null; then
|
||||||
|
echo "We are missing a dependency....expect"
|
||||||
|
echo "Hang on while it is installed"
|
||||||
|
echo "You can press ctrl+c to exit"
|
||||||
|
sleep 3
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install -y expect
|
||||||
|
fi
|
||||||
|
|
||||||
|
#create connect script in RAM memory. (Called later from this script)
|
||||||
|
cat << "MYFILE" > /run/user/$UID/connect
|
||||||
|
#!/usr/bin/expect -f
|
||||||
|
|
||||||
|
set prompt "#"
|
||||||
|
set address [lindex $argv 0]
|
||||||
|
|
||||||
|
spawn sudo bluetoothctl
|
||||||
|
expect -re $prompt
|
||||||
|
send "scan on\r"
|
||||||
|
send_user "\nStandby\r"
|
||||||
|
sleep 10
|
||||||
|
send_user "\nStill working\r"
|
||||||
|
send "scan off\r"
|
||||||
|
expect "Controller"
|
||||||
|
send "pair $address\r"
|
||||||
|
sleep 5
|
||||||
|
send "1234\r"
|
||||||
|
sleep 3
|
||||||
|
send_user "\nShould be paired now.\r"
|
||||||
|
send "quit\r"
|
||||||
|
expect eof
|
||||||
|
MYFILE
|
||||||
|
chmod +x /run/user/$UID/connect
|
||||||
|
|
||||||
|
#give user some feedback
|
||||||
|
echo;echo; clear
|
||||||
|
cat <<EOF
|
||||||
|
####################################################################
|
||||||
|
# Please stand by while the pairing is attempted. #
|
||||||
|
# This process takes approximately 60 seconds to complete. #
|
||||||
|
####################################################################
|
||||||
|
EOF
|
||||||
|
|
||||||
|
#get the TNC of the mobilinkd
|
||||||
|
echo "Discovering nearby Mobilinkd device....please wait"
|
||||||
|
hcitool scan > $TMP
|
||||||
|
echo "Discovery complete. TNC found.";echo
|
||||||
|
MAC=`grep -i TNC /run/user/$UID/mobi.txt | awk '{print $1}'`
|
||||||
|
#verify we have a MAC address to work with
|
||||||
|
if [ -z "$MAC" ]; then
|
||||||
|
echo "TNC not found. Can't continue!"
|
||||||
|
echo "Confirm that the TNC is on and has"
|
||||||
|
echo "a fast flashing blue light."
|
||||||
|
sleep 5
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "Starting the pairing process....please stand by"
|
||||||
|
#call the connect script
|
||||||
|
/run/user/$UID/connect $MAC >/dev/null 2>&1
|
||||||
|
echo;echo "The pairing was probably successful"
|
||||||
|
echo "Start the Mobilinkd modem again"
|
||||||
|
sleep 3
|
63
mobi-wired
Executable file
63
mobi-wired
Executable file
@ -0,0 +1,63 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
#This script will connect Mobilinkd TNC3 through a USB connection
|
||||||
|
#and make the TNC available with Pat through an ax25 connection.
|
||||||
|
#This script will NOT work with the Mobilinkd TNC2 as it did not
|
||||||
|
#support a USB connection.
|
||||||
|
#07MARCH2022 KM4ACK
|
||||||
|
|
||||||
|
MYPATH=$HOME/patmenu2
|
||||||
|
LOGO=$MYPATH/pmlogo.png
|
||||||
|
KISS=$(pidof kissattach)
|
||||||
|
DIRE=$(pidof direwolf)
|
||||||
|
ARDOP=$(pidof piardopc)
|
||||||
|
MOBIUSB=$(ls -l /dev/serial/by-id | grep Mobilinkd | awk '{print $NF}' | sed 's/.*tty/tty/')
|
||||||
|
|
||||||
|
#verify mobilinkd is plugged in and detected
|
||||||
|
if [ -z "$MOBIUSB" ]; then
|
||||||
|
yad --title="Not Detected" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
|
--center --form --text="\r\r\r\rThe Mobilinkd TNC wasn't detected. Please \
|
||||||
|
connect the Mobilinkd TNC to the Pi with a USB cable." \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
#verify other services that might interfere aren't running
|
||||||
|
if [ -n "$KISS" ] || [ -n "$DIRE" ] || [ -n "$ARDOP" ]; then
|
||||||
|
yad --title="Stop Modems" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
|
--center --form --text="\r\r\r\rIt appears that other modems are running. Please \
|
||||||
|
stop all modems and try again." \
|
||||||
|
--button=gtk-ok
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#create kissattach needed for winlink connections
|
||||||
|
sudo kissattach /dev/$MOBIUSB wl2k &
|
||||||
|
sleep 3
|
||||||
|
sudo kissparms -c 1 -p wl2k
|
||||||
|
|
||||||
|
#verify that kissattach is running
|
||||||
|
PIDPIC=$(pidof kissattach)
|
||||||
|
if [ -z "$PIDPIC" ]
|
||||||
|
then
|
||||||
|
yad --title="FAILED" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center \
|
||||||
|
--center --form --text="The Mobilinkd Modem FAILED to Start" \
|
||||||
|
--button=gtk-ok
|
||||||
|
else
|
||||||
|
yad --title="Mobilinkd 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 Mobilinkd Modem has Started" \
|
||||||
|
--button=gtk-ok &
|
||||||
|
fi
|
||||||
|
|
||||||
|
#restart pat so terminal window correctly reflects rig control
|
||||||
|
sudo systemctl restart pat@`whoami`
|
||||||
|
|
||||||
|
source $HOME/patmenu2/config
|
||||||
|
|
||||||
|
#open pat inbox in browser
|
||||||
|
export DISPLAY=:0 && xdg-open http://127.0.0.1:$PORT > /dev/null 2>&1 &
|
68
mobilink
68
mobilink
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
#script to connect mobilinkd TNC for ax25
|
#script to connect mobilinkd TNC for ax25
|
||||||
#20200602
|
#20200602
|
||||||
|
#20220304 last edit KM4ACK
|
||||||
################################################################
|
################################################################
|
||||||
# #
|
# #
|
||||||
# # # # # # # ##### # # #
|
# # # # # # # ##### # # #
|
||||||
@ -21,7 +22,41 @@ clear
|
|||||||
KISS=$(pidof kissattach)
|
KISS=$(pidof kissattach)
|
||||||
DIRE=$(pidof direwolf)
|
DIRE=$(pidof direwolf)
|
||||||
ARDOP=$(pidof piardopc)
|
ARDOP=$(pidof piardopc)
|
||||||
|
TMPFILE=/run/user/$UID/scan.txt
|
||||||
|
EXISTING=`bluetoothctl paired-devices | grep Mobilinkd`
|
||||||
|
|
||||||
|
#see if we already have a TNC paired
|
||||||
|
#if [ -z "$EXISTING" ]; then
|
||||||
|
#yad --title="Mobilinkd Error" --width=400 --height=100 \
|
||||||
|
#--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
|
#--center --form --text="\r\r\r\rNo Mobilinkd devices paired with this pi. \
|
||||||
|
#To pair, turn your Mobilinkd on, open a terminal window, and run\r <b>~/patmenu2/mobi-pair</b>\rand then start \
|
||||||
|
#the mobilinkd modem again." \
|
||||||
|
#--button=gtk-ok
|
||||||
|
#exit 1
|
||||||
|
#fi
|
||||||
|
|
||||||
|
#see if we already have a TNC paired
|
||||||
|
if [ -z "$EXISTING" ]; then
|
||||||
|
yad --title="Mobilinkd Error" --width=400 --height=100 \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
|
--center --form --text="\r\r\r\rNo Mobilinkd devices paired with this pi. \
|
||||||
|
Turn on your Mobilinkd before attempting to pair." \
|
||||||
|
--button="Pair Now:1" \
|
||||||
|
--button="Exit:2"
|
||||||
|
BUT=$?
|
||||||
|
|
||||||
|
if [ "$BUT" = '2' ] || [ "$BUT" = '252' ]; then
|
||||||
|
exit
|
||||||
|
elif [ "$BUT" = '1' ]; then
|
||||||
|
lxterminal -e $HOME/patmenu2/mobi-pair
|
||||||
|
exit
|
||||||
|
fi
|
||||||
|
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
#verify other services that might interfere aren't running
|
||||||
if [ -n "$KISS" ] || [ -n "$DIRE" ] || [ -n "$ARDOP" ]; then
|
if [ -n "$KISS" ] || [ -n "$DIRE" ] || [ -n "$ARDOP" ]; then
|
||||||
yad --title="Stop Modems" --width=400 --height=100 \
|
yad --title="Stop Modems" --width=400 --height=100 \
|
||||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
@ -30,6 +65,7 @@ stop all modems and try again." \
|
|||||||
--button=gtk-ok
|
--button=gtk-ok
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#give user some feedback
|
#give user some feedback
|
||||||
yad --center --timeout=10 --timeout-indicator=top --no-buttons --height=300 --width=300 \
|
yad --center --timeout=10 --timeout-indicator=top --no-buttons --height=300 --width=300 \
|
||||||
--title="Scanning" --image $LOGO --window-icon=$LOGO --image-on-top \
|
--title="Scanning" --image $LOGO --window-icon=$LOGO --image-on-top \
|
||||||
@ -37,31 +73,28 @@ yad --center --timeout=10 --timeout-indicator=top --no-buttons --height=300 --wi
|
|||||||
Another notice will appear once a connection to the device is established." &
|
Another notice will appear once a connection to the device is established." &
|
||||||
|
|
||||||
#scan for bluetooth device and write to file
|
#scan for bluetooth device and write to file
|
||||||
hcitool scan > $HOME/Desktop/scan.txt
|
hcitool scan > $TMPFILE
|
||||||
echo "Scan complete"
|
|
||||||
|
|
||||||
#Decide if its a TNC 2 or 3
|
#Decide if its a TNC 2 or 3
|
||||||
TNC2=$(cat $HOME/Desktop/scan.txt | grep -i TNC2)
|
TNC2=$(grep -i TNC2 $TMPFILE)
|
||||||
TNC3=$(cat $HOME/Desktop/scan.txt | grep -i TNC3)
|
TNC3=$(grep -i TNC3 $TMPFILE)
|
||||||
if [ -z "$TNC2" ]
|
if [ -z "$TNC2" ]
|
||||||
then
|
then
|
||||||
MAC=$(cat $HOME/Desktop/scan.txt | grep -i mobi | awk '{ print $1 }')
|
MAC=$(grep -i mobi $TMPFILE | awk '{ print $1 }')
|
||||||
TNC=3
|
TNC=3
|
||||||
elif [ -z "$TNC3" ]
|
elif [ -z "$TNC3" ]
|
||||||
then
|
then
|
||||||
MAC=$(cat $HOME/Desktop/scan.txt | grep -i mobi | awk '{ print $1 }')
|
MAC=$(grep -i mobi $TMPFILE | awk '{ print $1 }')
|
||||||
TNC=2
|
TNC=2
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#set correct connection commmand
|
#set correct connection commmand
|
||||||
if [ $TNC = "2" ]
|
if [ $TNC = "2" ]
|
||||||
then
|
then
|
||||||
#CONNECT="sudo rfcomm connect /dev/rfcomm0 $MAC"
|
|
||||||
CONNECT="sudo rfcomm bind /dev/rfcomm0 $MAC"
|
CONNECT="sudo rfcomm bind /dev/rfcomm0 $MAC"
|
||||||
elif [ $TNC = "3" ]
|
elif [ $TNC = "3" ]
|
||||||
then
|
then
|
||||||
CONNECT="sudo rfcomm bind /dev/rfcomm0 $MAC 6"
|
CONNECT="sudo rfcomm bind /dev/rfcomm0 $MAC 6"
|
||||||
#CONNECT="sudo rfcomm connect /dev/rfcomm0 $MAC 6"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#See if device was found and connect if found
|
#See if device was found and connect if found
|
||||||
@ -71,27 +104,27 @@ yad --title="Mobilinkd MODEM" --width=400 --height=100 \
|
|||||||
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
--image $LOGO --window-icon=$LOGO --image-on-top --text-align=center --on-top \
|
||||||
--center --form --text="\r\r\r\rMobilinkd NOT FOUND" \
|
--center --form --text="\r\r\r\rMobilinkd NOT FOUND" \
|
||||||
--button=gtk-ok
|
--button=gtk-ok
|
||||||
rm $HOME/Desktop/scan.txt
|
rm $TMPFILE
|
||||||
exit 1
|
exit 1
|
||||||
else
|
else
|
||||||
#stop things that might conflict
|
#stop things that might conflict
|
||||||
sudo killall js8call kissattach direwolf >> /dev/null 2>&1
|
sudo killall kissattach direwolf >> /dev/null 2>&1
|
||||||
yad --center --timeout=6 --timeout-indicator=top --no-buttons --height=300 --width=300 \
|
yad --center --timeout=6 --timeout-indicator=top --no-buttons --height=300 --width=300 \
|
||||||
--title="Detected" --image $LOGO --window-icon=$LOGO --image-on-top \
|
--title="Detected" --image $LOGO --window-icon=$LOGO --image-on-top \
|
||||||
--text="Mobilinkd TNC $TNC detected. Just a few more seconds." &
|
--text="Mobilinkd TNC $TNC detected. Just a few more seconds." &
|
||||||
rm $HOME/Desktop/scan.txt
|
rm $TMPFILE
|
||||||
#create bluetooth->serial connection
|
#create bluetooth->serial connection
|
||||||
$CONNECT &
|
$CONNECT &
|
||||||
sleep 5
|
sleep 5
|
||||||
|
|
||||||
echo "starting kissattach for winlink"
|
|
||||||
#create kissattach needed for winlink connections
|
#create kissattach needed for winlink connections
|
||||||
sudo kissattach /dev/rfcomm0 wl2k &
|
sudo kissattach /dev/rfcomm0 wl2k &
|
||||||
echo "sleeping 3 seconds"; sleep 3
|
sleep 3
|
||||||
sudo kissparms -c 1 -p wl2k
|
sudo kissparms -c 1 -p wl2k
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#verify that piardopc is running
|
#verify that kissattach is running
|
||||||
PIDPIC=$(pidof kissattach)
|
PIDPIC=$(pidof kissattach)
|
||||||
if [ -z "$PIDPIC" ]
|
if [ -z "$PIDPIC" ]
|
||||||
then
|
then
|
||||||
@ -106,6 +139,13 @@ yad --title="Mobilinkd MODEM" --width=400 --height=100 \
|
|||||||
--button=gtk-ok &
|
--button=gtk-ok &
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#restart pat so terminal window correctly reflects rig control
|
||||||
|
sudo systemctl restart pat@`whoami`
|
||||||
|
|
||||||
|
source $HOME/patmenu2/config
|
||||||
|
|
||||||
|
#open pat inbox in browser
|
||||||
|
export DISPLAY=:0 && xdg-open http://127.0.0.1:$PORT > /dev/null 2>&1 &
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
12
patmenu
12
patmenu
@ -24,6 +24,15 @@ yad --form --width=420 --text-align=center --center --title="Pat out of Date" --
|
|||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [ $WARN = 'yes' ] && [ ! -f /run/user/$UID/patwarn.txt ]; then
|
||||||
|
#give user warning message
|
||||||
|
yad --form --width=420 --text-align=center --center --title="WARNING!!" --text-align=center \
|
||||||
|
--image $LOGO --window-icon=$LOGO --image-on-top --separator="|" --item-separator="|" \
|
||||||
|
--text="<b>${WARNMSG}</b>" \
|
||||||
|
--button=gtk-ok
|
||||||
|
touch /run/user/$UID/patwarn.txt
|
||||||
|
fi
|
||||||
|
|
||||||
#verify call is set
|
#verify call is set
|
||||||
if [ "$MYCALLSIGN" = "N0CALL" ]; then
|
if [ "$MYCALLSIGN" = "N0CALL" ]; then
|
||||||
yad --title="N0CALL" --width=400 --height=100 \
|
yad --title="N0CALL" --width=400 --height=100 \
|
||||||
@ -37,7 +46,8 @@ yad --form --width=420 --text-align=center --center --title="Pat Menu" --text-al
|
|||||||
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
--text="<b>Pat Menu</b> by KM4ACK\rv$VERSION" \
|
||||||
--field="Start ARDOP Modem":fbtn 'bash -c "$MYPATH/start-pat-ardop"' \
|
--field="Start ARDOP Modem":fbtn 'bash -c "$MYPATH/start-pat-ardop"' \
|
||||||
--field="Start Packet Modem":fbtn 'bash -c "$MYPATH/start-pat2m"' \
|
--field="Start Packet Modem":fbtn 'bash -c "$MYPATH/start-pat2m"' \
|
||||||
--field="Start Mobilinkd Modem (BETA)":fbtn 'bash -c "$MYPATH/mobilink"' \
|
--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="Stop Modems":fbtn 'bash -c "$MYPATH/stop-modems"' \
|
||||||
--field="Find Winlink Gateways":fbtn 'bash -c "kill -USR1 $YAD_PID; $MYPATH/find2"' \
|
--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 Auto Connect":fbtn 'bash -c "kill -USR1 $YAD_PID; source $MYPATH/pat-functions; AUTOPAT"' \
|
||||||
|
Loading…
x
Reference in New Issue
Block a user