Skip to content

Commit

Permalink
V2.20.0
Browse files Browse the repository at this point in the history
~ fix Wolkenbasis (keine Werte falls Taupunkt negativ) / Issue #46 (viper4iob)
~ fix Wetterwarnung (Reif) / Issue #47 (viper4iob)
~ fix OpenSenseMap für Stationen die 10-Minutendurchschnittswerte bereits liefern / Issue #48 (viper4iob)
  • Loading branch information
SBorg2014 committed Dec 20, 2022
1 parent 7bf55ff commit 73ee24a
Show file tree
Hide file tree
Showing 5 changed files with 90 additions and 57 deletions.
2 changes: 1 addition & 1 deletion wetterstation.conf
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
### Settings V2.19.0 -----------------------------------------------------------
### Settings V2.20.0 -----------------------------------------------------------
#Debuging einschalten [true/false] / default: false / Ausgabe der Messwerte
debug=false

Expand Down
11 changes: 7 additions & 4 deletions wetterstation.sh
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,16 @@
: <<'Versionsinfo'
V2.19.0 - 12.08.2022 (c) 2019-2022 SBorg
V2.20.0 - 12.12.2022 (c) 2019-2022 SBorg
wertet ein Datenpaket einer WLAN-Wetterstation im Wunderground-/Ecowitt-Format aus, konvertiert dieses und überträgt
die Daten an den ioBroker (alternativ auch an OpenSenseMap, Windy und wetter.com)
benötigt den 'Simple RESTful API'-Adapter im ioBroker, 'jq', 'bc' und 'dc' unter Linux
V2.20.0 / 12.12.2022 ~ fix Wolkenbasis (keine Werte falls Taupunkt negativ) / Issue #46 (viper4iob)
~ fix Wetterwarnung (Reif) / Issue #47 (viper4iob)
~ fix OpenSenseMap für Stationen die 10-Minutendurchschnittswerte bereits liefern / Issue #48 (viper4iob)
V2.19.0 / 12.08.2022 + Wetterwarnungen Schwüle, Tau/Nebel und Reif
~ URL-Encoding für Umlaute
+ Unterstützung für WS90 "Wittboy"
Expand Down Expand Up @@ -129,9 +132,9 @@ Versionsinfo
### Ende Infoblock

#Versionierung
SH_VER="V2.19.0"
CONF_V="V2.19.0"
SUBVER="V2.19.0"
SH_VER="V2.20.0"
CONF_V="V2.20.0"
SUBVER="V2.20.0"


#Installationsverzeichnis feststellen
Expand Down
68 changes: 34 additions & 34 deletions wetterstation.sub
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#!/bin/bash
### Subroutinen V2.19.0 --------------------------------------------------------
### Subroutinen V2.20.0 --------------------------------------------------------


#Bezeichnung der Datenpunkte
Expand Down Expand Up @@ -917,40 +917,40 @@ version() {


opensensemap() {
let ii=0
unset OSeM_DATA
for i in "${SENSEBOX_IDSENSOR[@]}"
do

#Windgeschwindigkeit aktuell oder per 10 Minuten-Durchschnitt
if [ ${USE_AVG_WIND} == "true" ] && [ ${i} == 7 ]; then
if [ ! -z ${WIND_AVGSPEED_10M} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${WIND_AVGSPEED_10M}\"}"
elif [ ! -z ${MESSWERTE[27]} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[27]}\"}"
let ii=0
unset OSeM_DATA
for i in "${SENSEBOX_IDSENSOR[@]}"
do

#Windgeschwindigkeit aktuell oder per 10 Minuten-Durchschnitt
if [ ${USE_AVG_WIND} == "true" ]; then
if [ ${ii} == 7 ]; then
if [ ! -z ${WIND_AVGSPEED_10M} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${WIND_AVGSPEED_10M}\"}"
elif [ ! -z ${MESSWERTE[27]} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[27]}\"}"
else
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi

#Windrichtung aktuell oder per 10 Minuten-Durchschnitt
elif [ ${ii} == 8 ]; then
if [ ! -z ${WIND_AVGANGEL_10M} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${WIND_AVGANGEL_10M}\"}"
elif [ ! -z ${MESSWERTE[26]} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[26]}\"}"
else
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi
else
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi
else
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi

#Windrichtung aktuell oder per 10 Minuten-Durchschnitt
if [ ${USE_AVG_WIND} == "true" ] && [ ${i} == 8 ]; then
if [ ! -z ${WIND_AVGANGEL_10M} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${WIND_AVGANGEL_10M}\"}"
elif [ ! -z ${MESSWERTE[26]} ]; then
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[26]}\"}"
else
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi
else
OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi

OSeM_DATA="${OSeM_DATA}{\"sensor\":\"${i}\", \"value\":\"${MESSWERTE[${SENSEBOX_IDMESSWERT[ii]}]}\"}"
fi

let ii++
done
let ii++
done

OSeM_DATA=$(echo $OSeM_DATA | sed "s/}{/},{/g" )
if [ $debug == "true" ]; then
Expand Down Expand Up @@ -1877,7 +1877,7 @@ do_trend_aussentemp(){

do_wolkenbasis(){
#Höhe der Wolkenbasis berechnen
local WOLKENBASIS=$(echo "scale=2;(${MESSWERTE[1]}-${MESSWERTE[2]})*125"| bc -l)
local WOLKENBASIS=$(echo "scale=2;(${MESSWERTE[1]}-(${MESSWERTE[2]}))*125"| bc -l)
WOLKENBASIS=$(round ${WOLKENBASIS} 0)
SAPI "Single" "set/${DP_WOLKENBASIS}?value=${WOLKENBASIS}&ack=true"
}
Expand All @@ -1890,7 +1890,7 @@ do_Wetterwarnung(){
if (( $(bc -l <<< "${MESSWERTE[2]} > 16") )); then WARNUNG="Schw%C3%BCle"; fi

#Tau/Nebel und Reif
if [ 1 -eq "$(echo "${MESSWERTE[2]} < ${MESSWERTE[1]}" | bc -l)" ]; then
if [ 1 -eq "$(echo "${MESSWERTE[1]} < ${MESSWERTE[2]}" | bc -l)" ]; then
if (( $(bc -l <<< "${MESSWERTE[5]} >= 99") )); then WARNUNG="Tau/Nebel"; fi
if (( $(bc -l <<< "${MESSWERTE[1]} <= 0.5") )); then WARNUNG="Reif"; fi
fi
Expand Down
33 changes: 24 additions & 9 deletions ws_updater.beta
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash

UPDATE_VER=V2.19.0
UPDATE_VER=V2.20.0

### Farbdefinition
GR='\e[1;32m'
Expand All @@ -9,11 +9,17 @@ UPDATE_VER=V2.19.0
BL='\e[1;36m'
RE='\e[1;31m'

echo -e "\n\n\n${GE} ┌────────────────────────┐"
echo -e " │ │"
echo -e "${BL} WS-Updater ${UPDATE_VER}${GE}\t │"
echo -e " │ │"
echo -e " └────────────────────────┘${WE}\n"

echo -e "\n\n${BL}"
echo -e '
_ _______ __ __ __ __
| | / / ___/ / / / /___ ____/ /___ _/ /____ _____
| | /| / /\__ \______/ / / / __ \/ __ / __ `/ __/ _ \/ ___/
| |/ |/ /___/ /_____/ /_/ / /_/ / /_/ / /_/ / /_/ __/ /
|__/|__//____/ \____/ .___/\__,_/\__,_/\__/\___/_/' ${GE}${UPDATE_VER}${BL}
echo -en ' /_/'
echo -e "${WE}\n"


#Nicht als root...
if [ $(whoami) = "root" ]; then echo -e "$RE Ausführung als \"root\" nicht möglich...!\n"; exit 1; fi
Expand Down Expand Up @@ -135,8 +141,9 @@ patcher() {
V2.15.0) PATCH2160 ;;
V2.16.0) PATCH2170 ;;
V2.17.0) PATCH2180 ;;
V2.18.0) PATCH2190 && exit 0;;
V2.19.0) echo -e "$GE Version ist bereits aktuell...\n" && exit 0;;
V2.18.0) PATCH2190 ;;
V2.19.0) PATCH2200 && exit 0;;
V2.20.0) echo -e "$GE Version ist bereits aktuell...\n" && exit 0;;
*) FEHLER
esac

Expand Down Expand Up @@ -449,6 +456,14 @@ PATCH2190() {
}


PATCH2200(){
backup
echo -e "${WE}\n Patche wetterstation.conf auf V2.20.0 ..."
sed -i 's/### Settings V2.19.0/### Settings V2.20.0/' ./wetterstation.conf
echo -e "\n${WE} Fertig...\n"
}


patch_260() {
cat <<EoD >patch
--- wetterstation.conf_250 2021-05-13 13:45:06.297750501 +0200
Expand Down Expand Up @@ -646,7 +661,7 @@ menu() {
echo -e "\t [${BL}3${WE}] Konfigurationsdatei patchen\n"
echo -e "\t [${BL}4${WE}] Update ausführen\n\n"
echo -e "\t [${BL}E${WE}] Exit\n\n\n"
echo -en "\t Ihre Auswahl: [${GR}1-4${WE}]"
echo -en "\t Ihre Auswahl: [${GR}1-4,E${WE}]"

read -n 1 -p ": " MENU_AUSWAHL
echo -e "\n"
Expand Down
33 changes: 24 additions & 9 deletions ws_updater.sh
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/bash

UPDATE_VER=V2.19.0
UPDATE_VER=V2.20.0

### Farbdefinition
GR='\e[1;32m'
Expand All @@ -9,11 +9,17 @@ UPDATE_VER=V2.19.0
BL='\e[1;36m'
RE='\e[1;31m'

echo -e "\n\n\n${GE} ┌────────────────────────┐"
echo -e " │ │"
echo -e "${BL} WS-Updater ${UPDATE_VER}${GE}\t │"
echo -e " │ │"
echo -e " └────────────────────────┘${WE}\n"

echo -e "\n\n${BL}"
echo -e '
_ _______ __ __ __ __
| | / / ___/ / / / /___ ____/ /___ _/ /____ _____
| | /| / /\__ \______/ / / / __ \/ __ / __ `/ __/ _ \/ ___/
| |/ |/ /___/ /_____/ /_/ / /_/ / /_/ / /_/ / /_/ __/ /
|__/|__//____/ \____/ .___/\__,_/\__,_/\__/\___/_/' ${GE}${UPDATE_VER}${BL}
echo -en ' /_/'
echo -e "${WE}\n"


#Nicht als root...
if [ $(whoami) = "root" ]; then echo -e "$RE Ausführung als \"root\" nicht möglich...!\n"; exit 1; fi
Expand Down Expand Up @@ -135,8 +141,9 @@ patcher() {
V2.15.0) PATCH2160 ;;
V2.16.0) PATCH2170 ;;
V2.17.0) PATCH2180 ;;
V2.18.0) PATCH2190 && exit 0;;
V2.19.0) echo -e "$GE Version ist bereits aktuell...\n" && exit 0;;
V2.18.0) PATCH2190 ;;
V2.19.0) PATCH2200 && exit 0;;
V2.20.0) echo -e "$GE Version ist bereits aktuell...\n" && exit 0;;
*) FEHLER
esac

Expand Down Expand Up @@ -449,6 +456,14 @@ PATCH2190() {
}


PATCH2200(){
backup
echo -e "${WE}\n Patche wetterstation.conf auf V2.20.0 ..."
sed -i 's/### Settings V2.19.0/### Settings V2.20.0/' ./wetterstation.conf
echo -e "\n${WE} Fertig...\n"
}


patch_260() {
cat <<EoD >patch
--- wetterstation.conf_250 2021-05-13 13:45:06.297750501 +0200
Expand Down Expand Up @@ -646,7 +661,7 @@ menu() {
echo -e "\t [${BL}3${WE}] Konfigurationsdatei patchen\n"
echo -e "\t [${BL}4${WE}] Update ausführen\n\n"
echo -e "\t [${BL}E${WE}] Exit\n\n\n"
echo -en "\t Ihre Auswahl: [${GR}1-4${WE}]"
echo -en "\t Ihre Auswahl: [${GR}1-4,E${WE}]"

read -n 1 -p ": " MENU_AUSWAHL
echo -e "\n"
Expand Down

0 comments on commit 73ee24a

Please sign in to comment.