Merge pull request #63 from thetechprepper/feature/et-predict-app

Merge feature/et-predict-app to release/r5
This commit is contained in:
thetechprepper
2025-11-12 16:58:14 -07:00
committed by GitHub
7 changed files with 76 additions and 31 deletions
@@ -2,7 +2,7 @@
# #
# Author : Gaston Gonzalez # Author : Gaston Gonzalez
# Date : 23 May 2023 # Date : 23 May 2023
# Updated : 27 August 2025 # Updated : 12 November 2025
# Purpose : Offline HF prediction using voacapl # Purpose : Offline HF prediction using voacapl
set -e set -e
set -o pipefail set -o pipefail
@@ -143,8 +143,8 @@ usage() {
echo "ETC GPS unit or fallback to the grid square configured by 'et-user'." echo "ETC GPS unit or fallback to the grid square configured by 'et-user'."
echo echo
echo "Other options (required):" echo "Other options (required):"
echo " -p POWER Output power [5|20|100|500|1500]" echo " -p POWER Output power [5|10|20|50|100|500|1500]"
echo " -m MODE Mode [am|cw|js8|ssb]" echo " -m MODE Mode [am|ardop|cw|js8|ssb]"
echo echo
exit 1 exit 1
@@ -198,6 +198,9 @@ case "${MODE,,}" in
js8-fast) js8-fast)
MD="19.0" MD="19.0"
;; ;;
ardop)
MD="20.0"
;;
js8-turbo) js8-turbo)
MD="24.0" MD="24.0"
;; ;;
@@ -285,15 +288,22 @@ RK1=$( awk -v n1=$RK -v n2=180 -v n3=-180 'BEGIN {if (n1<n3 || n1>n2) printf ("%
RLO=$( awk -v n1=$RK1 -v n2=0 'BEGIN {if (n1<n2) { n1=substr(n1,2); printf ("%7sW", n1); } else printf ("%7sE", n1);}' ) RLO=$( awk -v n1=$RK1 -v n2=0 'BEGIN {if (n1<n2) { n1=substr(n1,2); printf ("%7sW", n1); } else printf ("%7sE", n1);}' )
# Power settings # Power settings
# Use 80% of user-defined power and express in killiwatts # Use 80% of user-defined power and express it in killiwatts since VOACAP's
# TODO: Make calculation dynamic. # power setting is the power at the feedpoint not the transmitter.
#
# PW=(PWR×0.8)/1000
#
PWR=$power PWR=$power
PW="0.0800" PW="0.0800"
echo "TX Power: ${PWR} watts" echo "TX Power: ${PWR} watts"
if [ "$PWR" = "5" ]; then if [ "$PWR" = "5" ]; then
PW="0.0040" PW="0.0040"
elif [ "$PWR" = "10" ]; then
PW="0.0080"
elif [ "$PWR" = "20" ]; then elif [ "$PWR" = "20" ]; then
PW="0.0160" PW="0.0160"
elif [ "$PWR" = "50" ]; then
PW="0.0400"
elif [ "$PWR" = "100" ]; then elif [ "$PWR" = "100" ]; then
PW="0.0800" PW="0.0800"
elif [ "$PWR" = "500" ]; then elif [ "$PWR" = "500" ]; then
@@ -306,6 +316,14 @@ else
exit 1 exit 1
fi fi
# TODO: Add as an argument to R6
# Man-made Noise
# 140. industrial
# 144. residential
# 150. rural
# 163. remote
MMN="144."
# Format for 117 # Format for 117
# NOTE: The card requires <SSN>. (117.) # NOTE: The card requires <SSN>. (117.)
ssn=`grep "$YEAR $MONTH" ${ET_SSN} | awk '{print $5}' | cut -d"." -f1` ssn=`grep "$YEAR $MONTH" ${ET_SSN} | awk '{print $5}' | cut -d"." -f1`
@@ -324,7 +342,7 @@ MONTH $YEAR $MONTH_FMT
SUNSPOT $ssn. SUNSPOT $ssn.
LABEL $TX$RX LABEL $TX$RX
CIRCUIT $TLA $TLO $RLA $RLO S 0 CIRCUIT $TLA $TLO $RLA $RLO S 0
SYSTEM 1. 155. 3.00 90. $MD 3.00 0.10 SYSTEM 1. $MMN 3.00 90. $MD 3.00 0.10
FPROB 1.00 1.00 1.00 0.00 FPROB 1.00 1.00 1.00 0.00
ANTENNA 1 1 2 30 0.000[samples/sample.00 ] 0.0 $PW ANTENNA 1 1 2 30 0.000[samples/sample.00 ] 0.0 $PW
ANTENNA 2 2 2 30 0.000[samples/sample.00 ] 0.0 0.0000 ANTENNA 2 2 2 30 0.000[samples/sample.00 ] 0.0 0.0000
@@ -1,18 +1,18 @@
2025 02 2025.122 : 145.4 5.0 2025 05 2025.371 : 131.5 7.6
2025 03 2025.204 : 145.5 10.2 2025 06 2025.453 : 129.4 13.2
2025 04 2025.286 : 145.0 15.5 2025 07 2025.538 : 125.9 16.5
2025 05 2025.371 : 143.1 20.7 2025 08 2025.623 : 121.7 17.4
2025 06 2025.453 : 140.9 24.6 2025 09 2025.705 : 118.0 17.7
2025 07 2025.538 : 137.3 26.5 2025 10 2025.790 : 115.1 20.1
2025 08 2025.623 : 133.1 27.0 2025 11 2025.873 : 112.7 21.6
2025 09 2025.705 : 129.4 27.3 2025 12 2025.958 : 111.0 22.0
2025 10 2025.790 : 126.1 29.0 2026 01 2026.042 : 109.1 22.4
2025 11 2025.873 : 123.2 30.0 2026 02 2026.122 : 106.3 22.5
2025 12 2025.958 : 120.8 29.3 2026 03 2026.204 : 102.7 22.0
2026 01 2026.042 : 118.0 28.2 2026 04 2026.286 : 98.7 21.3
2026 02 2026.122 : 114.6 27.4 2026 05 2026.371 : 94.9 20.3
2026 03 2026.204 : 110.4 25.8 2026 06 2026.453 : 90.9 20.2
2026 04 2026.286 : 106.1 24.6 2026 07 2026.538 : 87.5 21.6
2026 05 2026.371 : 102.1 23.8 2026 08 2026.623 : 85.1 23.7
2026 06 2026.453 : 97.8 23.9 2026 09 2026.705 : 82.9 25.1
2026 07 2026.538 : 94.0 25.1 2026 10 2026.790 : 80.3 25.8
@@ -12,7 +12,7 @@ show-desktop-icons = false
picture-uri = 'file:///usr/share/backgrounds/emcomm-tools-wallpaper.png' picture-uri = 'file:///usr/share/backgrounds/emcomm-tools-wallpaper.png'
[org.gnome.shell] [org.gnome.shell]
favorite-apps = ['emcomm-tools.desktop', 'js8call.desktop', 'fldigi.desktop', 'et-aircraft.desktop', 'org.gnome.Terminal.desktop', 'navit.desktop', 'min.desktop', 'org.gnome.Nautilus.desktop'] favorite-apps = ['emcomm-tools.desktop', 'js8call.desktop', 'fldigi.desktop', 'et-predict-app.desktop', 'et-aircraft.desktop', 'org.gnome.Terminal.desktop', 'navit.desktop', 'min.desktop', 'org.gnome.Nautilus.desktop']
last-selected-power-profile = 'performance' last-selected-power-profile = 'performance'
[org.gnome.system.location] [org.gnome.system.location]
+2 -2
View File
@@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
# Author : Gaston Gonzalez # Author : Gaston Gonzalez
# Date : 9 July 2025 # Date : 9 July 2025
# Updated : 1 September 2025 # Updated : 12 November 2025
# Purpose : Install et-aircraft-app # Purpose : Install et-aircraft-app
set -e set -e
trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG
@@ -18,7 +18,7 @@ et-log "Installing ${APP} ${VERSION}..."
if [[ ! -e ${ET_DIST_DIR}/${DOWNLOAD_FILE} ]]; then if [[ ! -e ${ET_DIST_DIR}/${DOWNLOAD_FILE} ]]; then
URL="https://github.com/thetechprepper/et-aircraft-app/releases/download/${VERSION}/${DOWNLOAD_FILE}" URL="https://github.com/thetechprepper/${APP}/releases/download/${VERSION}/${DOWNLOAD_FILE}"
download_with_retries ${URL} ${DOWNLOAD_FILE} download_with_retries ${URL} ${DOWNLOAD_FILE}
mv ${DOWNLOAD_FILE} ${ET_DIST_DIR} mv ${DOWNLOAD_FILE} ${ET_DIST_DIR}
+3 -3
View File
@@ -1,7 +1,7 @@
#!/bin/bash #!/bin/bash
# Author : Gaston Gonzalez # Author : Gaston Gonzalez
# Date : 13 August 2025 # Date : 13 August 2025
# Updated : 20 August 2025 # Updated : 12 November 2025
# Purpose : Install EmComm Tools API # Purpose : Install EmComm Tools API
set -e set -e
trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG
@@ -11,8 +11,8 @@ trap 'et-log "\"${last_command}\" command failed with exit code $?."' ERR
. ../overlay/opt/emcomm-tools/bin/et-common . ../overlay/opt/emcomm-tools/bin/et-common
APP=et-api APP=et-api
VERSION=1.0.0 VERSION=1.1.0
ET_API_JAR="emcomm-tools-api-${VERSION}-SNAPSHOT.jar" ET_API_JAR="emcomm-tools-api-${VERSION}.jar"
BASE_URL="https://github.com/thetechprepper/et-api-java/releases/download/${VERSION}" BASE_URL="https://github.com/thetechprepper/et-api-java/releases/download/${VERSION}"
INSTALL_DIR="/opt/emcomm-tools-api" INSTALL_DIR="/opt/emcomm-tools-api"
+26
View File
@@ -0,0 +1,26 @@
#!/bin/bash
# Author : Gaston Gonzalez
# Date : 12 November 2025
# Purpose : Install et-predict-app
set -e
trap 'last_command=$current_command; current_command=$BASH_COMMAND' DEBUG
trap 'et-log "\"${last_command}\" command failed with exit code $?."' ERR
. ./env.sh
. ../overlay/opt/emcomm-tools/bin/et-common
APP=et-predict-app
VERSION=1.1.0
DOWNLOAD_FILE="${APP}_${VERSION}_amd64.deb"
et-log "Installing ${APP} ${VERSION}..."
if [[ ! -e ${ET_DIST_DIR}/${DOWNLOAD_FILE} ]]; then
URL="https://github.com/thetechprepper/${APP}/releases/download/${VERSION}/${DOWNLOAD_FILE}"
download_with_retries ${URL} ${DOWNLOAD_FILE}
mv ${DOWNLOAD_FILE} ${ET_DIST_DIR}
fi
DEBIAN_FRONTEND=noninteractive dpkg -i "${ET_DIST_DIR}/${DOWNLOAD_FILE}"
+2 -1
View File
@@ -2,7 +2,7 @@
# #
# Author : Gaston Gonzalez # Author : Gaston Gonzalez
# Date : 16 March 2024 # Date : 16 March 2024
# Updated : 2 October 2025 # Updated : 12 November 2025
# Purpose : Main installer for EmComm Tools Community (ETC) # Purpose : Main installer for EmComm Tools Community (ETC)
. ./env.sh . ./env.sh
@@ -80,6 +80,7 @@ exitIfNotRoot
# Install ETC applications # Install ETC applications
./install-et-api.sh ./install-et-api.sh
./install-et-aircraft.sh ./install-et-aircraft.sh
./install-et-predict.sh
# Install documentation tools # Install documentation tools
./install-dictionary.sh ./install-dictionary.sh