|
|
|
|
@ -107,7 +107,8 @@ function check_restart {
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
echo "CubeSatSim v2.1 configuration tool"
|
|
|
|
|
echo
|
|
|
|
|
echo "CubeSatSim v2.2 configuration tool"
|
|
|
|
|
echo
|
|
|
|
|
# echo $1
|
|
|
|
|
# echo $2
|
|
|
|
|
@ -115,12 +116,17 @@ echo
|
|
|
|
|
|
|
|
|
|
sudo modprobe snd-aloop
|
|
|
|
|
|
|
|
|
|
# if [ "$2" = "n" ] ; then
|
|
|
|
|
if [ -z "$2" ] ; then
|
|
|
|
|
noreboot=0
|
|
|
|
|
else
|
|
|
|
|
if [ "$2" = "n" ] ; then
|
|
|
|
|
#if [ -z "$2" ] ; then # need to swap else if change
|
|
|
|
|
noreboot=1
|
|
|
|
|
echo "Reboot disabled"
|
|
|
|
|
noreboot=1
|
|
|
|
|
else
|
|
|
|
|
noreboot=0
|
|
|
|
|
fail=$2
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# echo "No reboot"
|
|
|
|
|
@ -165,13 +171,83 @@ if [ "$1" = "" ]; then
|
|
|
|
|
set -- $value
|
|
|
|
|
|
|
|
|
|
if [ "$5" = "y" ] || [ "$5" = "yes" ] ; then
|
|
|
|
|
# sim="yes"
|
|
|
|
|
echo "Simulated Telemetry is ON"
|
|
|
|
|
else
|
|
|
|
|
# sim="no"
|
|
|
|
|
FILE=/home/pi/CubeSatSim/sim_mode_auto
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
echo "Simulated Telemetry is automatically turned ON"
|
|
|
|
|
# elif [[ $(timeout 2 i2cdetect -y 1 | grep -e "44" -e "45") ]]; then # check for battery board sensors
|
|
|
|
|
# # Check the exit code of the last command
|
|
|
|
|
# if [ $? -ne 0 ]; then
|
|
|
|
|
# echo "Simulated Telemetry is automatically turned ON"
|
|
|
|
|
# else
|
|
|
|
|
# echo "Simulated Telemetry is OFF"
|
|
|
|
|
# fi
|
|
|
|
|
else
|
|
|
|
|
echo "Simulated Telemetry is OFF"
|
|
|
|
|
fi
|
|
|
|
|
echo
|
|
|
|
|
fi
|
|
|
|
|
# echo
|
|
|
|
|
|
|
|
|
|
FILE=/home/pi/CubeSatSim/failure_mode.txt
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
if [[ $(grep "\-1" $FILE) ]]; then
|
|
|
|
|
echo "No simulated failure"
|
|
|
|
|
else
|
|
|
|
|
fail=$(<$FILE)
|
|
|
|
|
echo -n "Simulated "
|
|
|
|
|
# cat $FILE
|
|
|
|
|
|
|
|
|
|
case $fail in
|
|
|
|
|
|
|
|
|
|
1)
|
|
|
|
|
echo "+Y Solar Panel Unplugged (1)"
|
|
|
|
|
;;
|
|
|
|
|
2)
|
|
|
|
|
echo "+X Solar Panel Failure (2)"
|
|
|
|
|
;;
|
|
|
|
|
3)
|
|
|
|
|
echo "-X Solar Panel Degredation (3)"
|
|
|
|
|
;;
|
|
|
|
|
4)
|
|
|
|
|
echo "-Y Solar Panel Short Circuit (4)"
|
|
|
|
|
;;
|
|
|
|
|
5)
|
|
|
|
|
echo "Failed I2C Bus 1 (5)"
|
|
|
|
|
;;
|
|
|
|
|
6)
|
|
|
|
|
echo "Failed I2C Bus 3 (6)"
|
|
|
|
|
;;
|
|
|
|
|
7)
|
|
|
|
|
echo "Failed Camera (7)"
|
|
|
|
|
;;
|
|
|
|
|
8)
|
|
|
|
|
echo "Failed Payload (8)"
|
|
|
|
|
;;
|
|
|
|
|
9)
|
|
|
|
|
echo "Failed BME Sensor (9)"
|
|
|
|
|
;;
|
|
|
|
|
10)
|
|
|
|
|
echo "Failed MPU Sensor (10)"
|
|
|
|
|
;;
|
|
|
|
|
"11")
|
|
|
|
|
echo "Failed FM Audio (11)"
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
echo "Unknown Failure"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
# echo $fail
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "No simulated failure"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ "${12}" = "y" ] || [ "${12}" = "yes" ] ; then
|
|
|
|
|
echo "Random Failure Mode is ON with time period" ${13} "seconds"
|
|
|
|
|
else
|
|
|
|
|
echo "Random Failure Mode is OFF"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo -n "TX Frequency is: "
|
|
|
|
|
echo -n ${7}
|
|
|
|
|
@ -185,7 +261,7 @@ if [ "$1" = "" ]; then
|
|
|
|
|
echo "Balloon mode is OFF"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
# echo
|
|
|
|
|
echo -n "Current command count is: "
|
|
|
|
|
cat /home/pi/CubeSatSim/command_count.txt
|
|
|
|
|
echo
|
|
|
|
|
@ -196,7 +272,7 @@ if [ "$1" = "" ]; then
|
|
|
|
|
|
|
|
|
|
echo -n "Squelch level is: "
|
|
|
|
|
echo $6
|
|
|
|
|
echo
|
|
|
|
|
# echo
|
|
|
|
|
|
|
|
|
|
FILE=/home/pi/CubeSatSim/command_control
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
@ -215,14 +291,14 @@ if [ "$1" = "" ]; then
|
|
|
|
|
echo "Radio command and control is OFF"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
# echo
|
|
|
|
|
|
|
|
|
|
echo -n "RX PL code is: "
|
|
|
|
|
echo -n ${10}
|
|
|
|
|
# echo
|
|
|
|
|
echo -n " TX PL code is: "
|
|
|
|
|
echo ${11}
|
|
|
|
|
echo
|
|
|
|
|
# echo
|
|
|
|
|
|
|
|
|
|
FILE=/home/pi/CubeSatSim/battery_saver
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
@ -231,7 +307,7 @@ if [ "$1" = "" ]; then
|
|
|
|
|
echo "Battery saver mode is OFF"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
# echo
|
|
|
|
|
FILE=/home/pi/CubeSatSim/beacon_off
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
echo "Transmit beacon telemetry is OFF"
|
|
|
|
|
@ -243,7 +319,7 @@ if [ "$1" = "" ]; then
|
|
|
|
|
echo -e "Current sim.cfg configuration file:"
|
|
|
|
|
# echo
|
|
|
|
|
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
echo "To change, include an OPTION"
|
|
|
|
|
@ -357,14 +433,14 @@ elif [ "$1" = "-t" ]; then
|
|
|
|
|
set -- $value
|
|
|
|
|
|
|
|
|
|
if [ "$5" = "yes" ] || [ "$5" = "y" ]; then
|
|
|
|
|
echo "Simualted Telemetry is ON"
|
|
|
|
|
echo "Simulated Telemetry is ON"
|
|
|
|
|
else
|
|
|
|
|
echo "Simualted Telemetry is OFF"
|
|
|
|
|
echo "Simulated Telemetry is OFF"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}
|
|
|
|
|
# $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo "Do you want Simulated Telemetry ON (y/n) "
|
|
|
|
|
read sim
|
|
|
|
|
@ -376,13 +452,14 @@ elif [ "$1" = "-t" ]; then
|
|
|
|
|
else
|
|
|
|
|
sim="no"
|
|
|
|
|
echo "Simulated Telemetry is OFF"
|
|
|
|
|
echo "-1" > /home/pi/CubeSatSim/failure_mode.txt # make sure to turn off any simulated failures
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# echo
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
# echo
|
|
|
|
|
echo $1 $2 $3 $4 $sim $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
echo $1 $2 $3 $4 $sim $6 $7 $8 $9 ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $1 $2 $3 $4 $sim $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $1 $2 $3 $4 $sim $6 $7 $8 $9 ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo
|
|
|
|
|
## echo "Rebooting CubeSatSim with new configuration file"
|
|
|
|
|
## echo
|
|
|
|
|
@ -409,7 +486,7 @@ elif [ "$1" = "-c" ]; then
|
|
|
|
|
echo $1
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo "Enter callsign in all capitals: "
|
|
|
|
|
read callsign
|
|
|
|
|
@ -423,8 +500,8 @@ elif [ "$1" = "-c" ]; then
|
|
|
|
|
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
|
|
|
|
|
echo $callsign $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
echo $callsign $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $callsign $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $callsign $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ "$norestart" = "1" ]; then
|
|
|
|
|
@ -457,7 +534,7 @@ elif [ "$1" = "-r" ]; then
|
|
|
|
|
echo $2
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo -e "Enter Reset Count (integer): "
|
|
|
|
|
|
|
|
|
|
@ -477,8 +554,8 @@ elif [ "$1" = "-r" ]; then
|
|
|
|
|
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
|
|
|
|
|
echo $1 $resets $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
echo $1 $resets $3 $4 $5 $6 $7 $8 $9 ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $1 $resets $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $1 $resets $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ "$norestart" = "1" ]; then
|
|
|
|
|
@ -512,7 +589,7 @@ elif [ "$1" = "-l" ]; then
|
|
|
|
|
echo $3
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo -e "Enter latitude (decimal degrees, positive is north): "
|
|
|
|
|
|
|
|
|
|
@ -554,8 +631,8 @@ elif [ "$1" = "-l" ]; then
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
echo $1 $2 $lat $long $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
echo $1 $2 $lat $long $5 $6 $7 $8 $9 ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $1 $2 $lat $long $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $1 $2 $lat $long $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
|
|
|
|
|
if [ "$norestart" = "1" ]; then
|
|
|
|
|
echo
|
|
|
|
|
@ -865,7 +942,7 @@ elif [ "$1" = "-q" ]; then
|
|
|
|
|
echo $6
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo -e "Enter squelch (integer 1 - 8): "
|
|
|
|
|
|
|
|
|
|
@ -887,8 +964,8 @@ elif [ "$1" = "-q" ]; then
|
|
|
|
|
# echo
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
# echo
|
|
|
|
|
echo $1 $2 $3 $4 $5 $sq $7 $8 $9 ${10} ${11}
|
|
|
|
|
echo $1 $2 $3 $4 $4 $sq $7 $8 $9 ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $1 $2 $3 $4 $5 $sq $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $1 $2 $3 $4 $4 $sq $7 $8 $9 ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo
|
|
|
|
|
echo "Restarting CubeSatSim with new configuration file"
|
|
|
|
|
## echo
|
|
|
|
|
@ -924,7 +1001,7 @@ elif [ "$1" = "-P" ]; then
|
|
|
|
|
echo ${11}
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo -e "Enter RX PL value integer 0: None, 01-38: CTCSS (analog, 39-121:CDCSS (digital)"
|
|
|
|
|
|
|
|
|
|
@ -967,8 +1044,8 @@ elif [ "$1" = "-P" ]; then
|
|
|
|
|
# echo
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
# echo
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 $rxpl $txpl
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 $rxpl $txpl > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 $rxpl $txpl ${12} ${13}
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 $rxpl $txpl ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo
|
|
|
|
|
## echo "Rebooting CubeSatSim with new configuration file"
|
|
|
|
|
## echo
|
|
|
|
|
@ -998,7 +1075,7 @@ elif [ "$1" = "-F" ]; then
|
|
|
|
|
echo $8
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo "Enter tx frequency as 4XX.XXXX: "
|
|
|
|
|
read tx
|
|
|
|
|
@ -1017,23 +1094,24 @@ elif [ "$1" = "-F" ]; then
|
|
|
|
|
rx="$8"
|
|
|
|
|
echo "Keeping value of" $rx
|
|
|
|
|
fi
|
|
|
|
|
# else
|
|
|
|
|
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $tx $rx $9 ${10} ${11}
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $tx $rx $9 ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
# fi
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $tx $rx $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $tx $rx $9 ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
|
|
|
|
|
# if [ "$norestart" = "1" ]; then
|
|
|
|
|
# echo
|
|
|
|
|
# else
|
|
|
|
|
echo
|
|
|
|
|
echo "Restarting CubeSatSim with new configuration file"
|
|
|
|
|
## echo
|
|
|
|
|
# reboot=1
|
|
|
|
|
## sudo reboot now
|
|
|
|
|
|
|
|
|
|
# if [[ $(sudo systemctl is-active gpsd.socket | grep inactive) ]]; then
|
|
|
|
|
sudo systemctl restart transmit
|
|
|
|
|
# else
|
|
|
|
|
# echo
|
|
|
|
|
# echo "temporarily disabling gpsd and rebooting to program FM module"
|
|
|
|
|
# echo "this will take about 40 seconds"
|
|
|
|
|
# sudo systemctl stop gpsd.socket
|
|
|
|
|
sudo systemctl restart transmit
|
|
|
|
|
# sleep 10
|
|
|
|
|
# reboot=1
|
|
|
|
|
# fi
|
|
|
|
|
|
|
|
|
|
elif [ "$1" = "-o" ]; then
|
|
|
|
|
@ -1105,7 +1183,7 @@ elif [ "$1" = "-H" ]; then
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11}
|
|
|
|
|
# echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo "Do you want Balloon mode ON (y/n) "
|
|
|
|
|
read hab
|
|
|
|
|
@ -1122,8 +1200,8 @@ elif [ "$1" = "-H" ]; then
|
|
|
|
|
# echo
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
# echo
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $hab ${10} ${11}
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $hab ${10} ${11} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $hab ${10} ${11} ${12} ${13}
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $hab ${10} ${11} ${12} ${13} > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo
|
|
|
|
|
## echo "Rebooting CubeSatSim with new configuration file"
|
|
|
|
|
## echo
|
|
|
|
|
@ -1344,6 +1422,321 @@ elif [ "$1" = "-j" ]; then
|
|
|
|
|
restart=1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
elif [ "$1" = "-M" ]; then
|
|
|
|
|
|
|
|
|
|
if [ $fail ]; then
|
|
|
|
|
MODE=$fail
|
|
|
|
|
else
|
|
|
|
|
|
|
|
|
|
FILE=/home/pi/CubeSatSim/failure_mode.txt
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
if [[ $(grep "\-1" $FILE) ]]; then
|
|
|
|
|
echo "Currently, no simulated failure (0)"
|
|
|
|
|
else
|
|
|
|
|
fail=$(<$FILE)
|
|
|
|
|
echo -n "Currently, simulated "
|
|
|
|
|
case $fail in
|
|
|
|
|
|
|
|
|
|
1)
|
|
|
|
|
echo "+Y Solar Panel Unplugged (1)"
|
|
|
|
|
;;
|
|
|
|
|
2)
|
|
|
|
|
echo "+X Solar Panel Failure (2)"
|
|
|
|
|
;;
|
|
|
|
|
3)
|
|
|
|
|
echo "-X Solar Panel Degredation (3)"
|
|
|
|
|
;;
|
|
|
|
|
4)
|
|
|
|
|
echo "-Y Solar Panel Short Circuit (4)"
|
|
|
|
|
;;
|
|
|
|
|
5)
|
|
|
|
|
echo "Failed I2C Bus 1 (5)"
|
|
|
|
|
;;
|
|
|
|
|
6)
|
|
|
|
|
echo "Failed I2C Bus 3 (6)"
|
|
|
|
|
;;
|
|
|
|
|
7)
|
|
|
|
|
echo "Failed Camera (7)"
|
|
|
|
|
;;
|
|
|
|
|
8)
|
|
|
|
|
echo "Failed Payload (8)"
|
|
|
|
|
;;
|
|
|
|
|
9)
|
|
|
|
|
echo "Failed BME Sensor (9)"
|
|
|
|
|
;;
|
|
|
|
|
"10")
|
|
|
|
|
echo "Failed MPU Sensor (10)"
|
|
|
|
|
;;
|
|
|
|
|
"11")
|
|
|
|
|
echo "Failed FM Audio (11)"
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
echo "Unknown Failure"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "Currently, no simulated failure"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
echo "Set simulated failure mode (or Return to turn OFF)"
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
echo " 0 No Failure (turn OFF)"
|
|
|
|
|
echo " 1 +Y Solar Panel Unplugged"
|
|
|
|
|
echo " 2 +X Solar Panel Failure"
|
|
|
|
|
echo " 3 -X Solar Panel Degredation"
|
|
|
|
|
echo " 4 -Y Solar Panel Short Circuit"
|
|
|
|
|
echo " 5 Failed I2C Bus 1"
|
|
|
|
|
echo " 6 Failed I2C Bus 3"
|
|
|
|
|
echo " 7 Failed Camera"
|
|
|
|
|
echo " 8 Failed Payload"
|
|
|
|
|
echo " 9 Failed BME Sensor"
|
|
|
|
|
echo "10 Failed MPU Sensor"
|
|
|
|
|
echo "11 Failed FM Audio"
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
echo "Enter the failure number to set: 0 - 11"
|
|
|
|
|
read MODE
|
|
|
|
|
echo
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ "$MODE" = "0" ]; then
|
|
|
|
|
echo "Setting No Simulated Failure"
|
|
|
|
|
MODE=-1
|
|
|
|
|
# elif [ "$MODE" = "12" ]; then
|
|
|
|
|
|
|
|
|
|
# if [ "$norestart" = "1" ]; then
|
|
|
|
|
# echo
|
|
|
|
|
# else
|
|
|
|
|
# reboot=1
|
|
|
|
|
# fi
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
case $MODE in
|
|
|
|
|
1)
|
|
|
|
|
echo "+Y Solar Panel Unplugged"
|
|
|
|
|
;;
|
|
|
|
|
2)
|
|
|
|
|
echo "Setting Simulated +X Solar Panel Failure"
|
|
|
|
|
;;
|
|
|
|
|
3)
|
|
|
|
|
echo "Setting Simulated -X Solar Panel Degredation"
|
|
|
|
|
;;
|
|
|
|
|
4)
|
|
|
|
|
echo "Setting Simulated -Y Solar Panel Short Circuit"
|
|
|
|
|
;;
|
|
|
|
|
5)
|
|
|
|
|
echo "Setting Simulated Failed I2C Bus 1"
|
|
|
|
|
;;
|
|
|
|
|
6)
|
|
|
|
|
echo "Setting Simulated Failed I2C Bus 3"
|
|
|
|
|
;;
|
|
|
|
|
7)
|
|
|
|
|
echo "Setting Simulated Failed Camera"
|
|
|
|
|
;;
|
|
|
|
|
8)
|
|
|
|
|
echo "Setting Simulated Failed Payload"
|
|
|
|
|
;;
|
|
|
|
|
9)
|
|
|
|
|
echo "Setting Simulated Failed BME Sensor"
|
|
|
|
|
;;
|
|
|
|
|
"10")
|
|
|
|
|
echo "Setting Simulated Failed MPU Sensor"
|
|
|
|
|
;;
|
|
|
|
|
"11")
|
|
|
|
|
echo "Setting Failed FM Audio"
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
echo "Setting No Simulated Failure"
|
|
|
|
|
MODE=-1
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# echo $MODE
|
|
|
|
|
echo
|
|
|
|
|
echo $MODE > /home/pi/CubeSatSim/failure_mode.txt
|
|
|
|
|
|
|
|
|
|
echo "Changing simulated failure mode to $MODE" | wall
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
elif [ "$1" = "-N" ]; then
|
|
|
|
|
|
|
|
|
|
FILE=/home/pi/CubeSatSim/failure_mode.txt
|
|
|
|
|
if [ -f "$FILE" ]; then
|
|
|
|
|
if [[ $(grep "\-1" $FILE) ]]; then
|
|
|
|
|
echo "No simulated failure"
|
|
|
|
|
fail=0
|
|
|
|
|
else
|
|
|
|
|
echo "Simulated failure mode"
|
|
|
|
|
fail=$(<$FILE)
|
|
|
|
|
echo $fail
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "No simulated failure"
|
|
|
|
|
fail=0
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [ $fail == 0 ]; then
|
|
|
|
|
echo "Changing to next mode"
|
|
|
|
|
|
|
|
|
|
value=`cat /home/pi/CubeSatSim/.mode`
|
|
|
|
|
echo "$value" > /dev/null
|
|
|
|
|
set -- $value
|
|
|
|
|
|
|
|
|
|
if [ "$1" = "a" ]; then
|
|
|
|
|
echo "Current mode is APRS"
|
|
|
|
|
echo "Next mode is FSK"
|
|
|
|
|
/home/pi/CubeSatSim/config -f
|
|
|
|
|
elif [ "$1" = "m" ]; then
|
|
|
|
|
echo "Current mode is CW"
|
|
|
|
|
echo "Next mode is FunCube"
|
|
|
|
|
/home/pi/CubeSatSim/config -j
|
|
|
|
|
elif [ "$1" = "f" ]; then
|
|
|
|
|
echo "Current mode is FSK"
|
|
|
|
|
echo "Next mode is BPSK"
|
|
|
|
|
/home/pi/CubeSatSim/config -b
|
|
|
|
|
elif [ "$1" = "b" ]; then
|
|
|
|
|
echo "Current mode is BPSK"
|
|
|
|
|
echo "Next mode is SSTV"
|
|
|
|
|
/home/pi/CubeSatSim/config -s
|
|
|
|
|
elif [ "$1" = "s" ]; then
|
|
|
|
|
echo "Current mode is SSTV"
|
|
|
|
|
echo "Next mode is CW"
|
|
|
|
|
/home/pi/CubeSatSim/config -m
|
|
|
|
|
elif [ "$1" = "e" ]; then
|
|
|
|
|
echo "Current mode is Repeater"
|
|
|
|
|
echo "Next mode is APRS"
|
|
|
|
|
/home/pi/CubeSatSim/config -a
|
|
|
|
|
elif [ "$1" = "j" ]; then
|
|
|
|
|
echo "Current mode is FUNcube"
|
|
|
|
|
echo "Next mode is Repeater"
|
|
|
|
|
/home/pi/CubeSatSim/config -e
|
|
|
|
|
else
|
|
|
|
|
echo "Unknown mode"
|
|
|
|
|
fi
|
|
|
|
|
else
|
|
|
|
|
echo "Changing to next simulated failure mode"
|
|
|
|
|
fail=$((fail + 1))
|
|
|
|
|
# if [ $fail == 12 ]; then
|
|
|
|
|
if [ "$fail" -gt "11" ]; then
|
|
|
|
|
fail=1
|
|
|
|
|
fi
|
|
|
|
|
echo $fail
|
|
|
|
|
/home/pi/CubeSatSim/config -M $fail
|
|
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
elif [ "$1" = "-U" ]; then
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
echo "Changing the Random Simulated Failure setting in"
|
|
|
|
|
echo "the configuration file for CubeSatSim"
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
value=`cat /home/pi/CubeSatSim/sim.cfg`
|
|
|
|
|
echo "$value" > /dev/null
|
|
|
|
|
set -- $value
|
|
|
|
|
|
|
|
|
|
if [ "${12}" = "yes" ] || [ "${12}" = "y" ]; then
|
|
|
|
|
echo "Random Simulated Failure is ON"
|
|
|
|
|
else
|
|
|
|
|
echo "Random Simulated Failure is OFF"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
# $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${12} ${13}
|
|
|
|
|
|
|
|
|
|
echo "Do you want Random Simulated Failure ON (y/n) "
|
|
|
|
|
read sim
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
if [ "$sim" = "y" ] || [ "$sim" = "yes" ] ; then
|
|
|
|
|
sim="yes"
|
|
|
|
|
echo "Random Simulated Failure is ON"
|
|
|
|
|
echo
|
|
|
|
|
echo "A new random failure is selected every"
|
|
|
|
|
echo ${13} "seconds."
|
|
|
|
|
echo
|
|
|
|
|
echo "Enter a new value or Return keeps current value."
|
|
|
|
|
|
|
|
|
|
echo "Enter time in seconds (integer): "
|
|
|
|
|
|
|
|
|
|
read time
|
|
|
|
|
|
|
|
|
|
if [ -z $time ] ; then
|
|
|
|
|
time="${13}"
|
|
|
|
|
echo "Keeping value of " $time " seconds"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if ! [[ $time =~ ^[0-9]+$ ]] ; then
|
|
|
|
|
echo "Error: not an integer!"
|
|
|
|
|
time="${13}"
|
|
|
|
|
echo "Keeping value of" $time
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
sim="no"
|
|
|
|
|
echo "Random Simulated Failure is OFF"
|
|
|
|
|
time="${13}"
|
|
|
|
|
# echo "-1" > /home/pi/CubeSatSim/failure_mode.txt # make sure to turn off any simulated failures
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
# echo
|
|
|
|
|
echo -e "\nCubeSatSim configuration sim.cfg file updated to: \n"
|
|
|
|
|
# echo
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} $sim $time
|
|
|
|
|
echo $1 $2 $3 $4 $5 $6 $7 $8 $9 ${10} ${11} $sim $time > /home/pi/CubeSatSim/sim.cfg
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
if [ "${12}" != "$sim" ] || [ "${13}" != "$time" ] ; then
|
|
|
|
|
reboot=1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
elif [ "$1" = "-u" ]; then
|
|
|
|
|
|
|
|
|
|
echo
|
|
|
|
|
echo "Change gpsd state"
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
if [[ $(sudo systemctl is-active gpsd.socket | grep inactive) ]]; then
|
|
|
|
|
echo "gpsd is inactive"
|
|
|
|
|
echo
|
|
|
|
|
echo "Do you want to turn gpsd to ON (y/n) "
|
|
|
|
|
read reset
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
if [ "$reset" = "y" ] || [ "$reset" = "yes" ] ; then
|
|
|
|
|
echo "gpsd set to ON"
|
|
|
|
|
sudo systemctl enable gpsd
|
|
|
|
|
sudo systemctl enable gpsd.socket
|
|
|
|
|
echo
|
|
|
|
|
echo "Unless you configure gpsd otherwise, the is connected to serial0 on the Pi."
|
|
|
|
|
echo "To monitor your gps device, use the command gpsmon"
|
|
|
|
|
echo
|
|
|
|
|
reboot=1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
else
|
|
|
|
|
echo "gpsd is active"
|
|
|
|
|
echo
|
|
|
|
|
echo "Do you want to turn gpsd to OFF (y/n) "
|
|
|
|
|
read reset
|
|
|
|
|
echo
|
|
|
|
|
|
|
|
|
|
if [ "$reset" = "y" ] || [ "$reset" = "yes" ] ; then
|
|
|
|
|
echo "gpsd set to OFF"
|
|
|
|
|
sudo systemctl disable gpsd
|
|
|
|
|
sudo systemctl disable gpsd.socket
|
|
|
|
|
reboot=1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
elif [ "$1" = "-h" ]; then
|
|
|
|
|
|
|
|
|
|
echo "config OPTION"
|
|
|
|
|
@ -1382,7 +1775,10 @@ elif [ "$1" = "-h" ]; then
|
|
|
|
|
echo " -o Change telemetry beacon transmit state"
|
|
|
|
|
echo " -L Change microphone level for command and control"
|
|
|
|
|
echo " -g Reset configuration back to default settings"
|
|
|
|
|
|
|
|
|
|
echo " -M Set simulated failure mode"
|
|
|
|
|
echo " -U Change the random failure mode setting"
|
|
|
|
|
echo " -N Set next mode or failure"
|
|
|
|
|
echo " -u Change gpsd state"
|
|
|
|
|
echo
|
|
|
|
|
exit
|
|
|
|
|
|
|
|
|
|
|