From 22ccfc43591a892ed472c2a605002895d68fdbd0 Mon Sep 17 00:00:00 2001 From: David Schroeder Date: Mon, 6 Nov 2023 09:48:15 -0600 Subject: [PATCH] Update powerwall.sh --- powerwall.sh | 98 ++++++++++++++++++++++++++-------------------------- 1 file changed, 49 insertions(+), 49 deletions(-) diff --git a/powerwall.sh b/powerwall.sh index eafe53b1..c1edfebc 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -519,17 +519,17 @@ CHECKPOWER(){ [[ "${OUTPUTW}" == *"."* ]] && [[ "${OUTPUTW}" != *".0"* ]] && OUTPUTW=`printf "%'.2f\n" ${OUTPUTW}` || OUTPUTW=`printf "%'.0f\n" ${OUTPUTW}` BATTV=`echo ${INVSTATSINFO} | jq '.inputs .battV'` BATTA=`echo ${INVSTATSINFO} | jq '.inputs .xfA'` - [[ "${BATTA}" == *"-"* ]] && BATTA_disp="${idsCL[Green]}${BATTA}'Amps - Charging" || BATTA_disp="${idsCL[LightRed]}${BATTA}'Amps - Discharging" + [[ "${BATTA}" == *"-"* ]] && BATTA_disp="${idsCL[Green]}${BATTA}'amps - Charging" || BATTA_disp="${idsCL[LightRed]}${BATTA}'amps - Discharging" fi - echo -e "${idsCL[LightCyan]}Inverter Input Volts ${idsCL[Default]}: ${idsCL[Green]}${INPUTV}'Volts" - echo -e "${idsCL[LightCyan]}Inverter Input Amps ${idsCL[Default]}: ${idsCL[Green]}${INPUTA}'Amps" + echo -e "${idsCL[LightCyan]}Inverter Input Volts ${idsCL[Default]}: ${idsCL[Green]}${INPUTV}'volts" + echo -e "${idsCL[LightCyan]}Inverter Input Amps ${idsCL[Default]}: ${idsCL[Green]}${INPUTA}'amps" echo - echo -e "${idsCL[LightCyan]}Inverter Output Volts ${idsCL[Default]}: ${idsCL[Green]}${OUTPUTV}'Volts / ${OUTPUTV2}'Volts" - echo -e "${idsCL[LightCyan]}Inverter Output Amps ${idsCL[Default]}: ${idsCL[Green]}${OUTPUTA}'Amps / ${OUTPUTA2}'Amps" - echo -e "${idsCL[LightCyan]}Inverter Output Watts ${idsCL[Default]}: ${idsCL[Green]}${OUTPUTW}'Watts" + echo -e "${idsCL[LightCyan]}Inverter Output Volts ${idsCL[Default]}: ${idsCL[Green]}${OUTPUTV}'volts / ${OUTPUTV2}'volts" + echo -e "${idsCL[LightCyan]}Inverter Output Amps ${idsCL[Default]}: ${idsCL[Green]}${OUTPUTA}'amps / ${OUTPUTA2}'amps" + echo -e "${idsCL[LightCyan]}Inverter Output Watts ${idsCL[Default]}: ${idsCL[Green]}${OUTPUTW}'watts" echo - echo -e "${idsCL[LightCyan]}Battery Voltage ${idsCL[Default]}: ${idsCL[Green]}${BATTV}'Volts${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Battery Voltage ${idsCL[Default]}: ${idsCL[Green]}${BATTV}'volts${idsCL[Default]}" echo -e "${idsCL[LightCyan]}Battery Amps Chg/DChg ${idsCL[Default]}: ${BATTA_disp}${idsCL[Default]}" echo @@ -551,8 +551,8 @@ CHECKPOWER(){ [[ "${APCPDU_WATT}" == *"."* ]] && [[ "${APCPDU_WATT}" != *".0"* ]] && APCPDU_WATT_disp=`printf "%'.2f\n" ${APCPDU_WATT}` || APCPDU_WATT_disp=`printf "%'.0f\n" ${APCPDU_WATT}` # fi - echo -e "${idsCL[LightCyan]}ServerRack Amps ${idsCL[Default]}: ${idsCL[Green]}${APCPDU_AMP}'Amps${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}ServerRack Wattage ${idsCL[Default]}: ${idsCL[Green]}${APCPDU_WATT_disp}'Watts ~ estimate${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}ServerRack Amps ${idsCL[Default]}: ${idsCL[Green]}${APCPDU_AMP}'amps${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}ServerRack Wattage ${idsCL[Default]}: ${idsCL[Green]}${APCPDU_WATT_disp}'watts ~ estimate${idsCL[Default]}" echo if [ "${SVRRM_VOLT}" != "" ]; then @@ -564,14 +564,14 @@ CHECKPOWER(){ VOLT_DROP=`echo "scale=1; ${OUTPUTV2}-${SVRRM_VOLT}" | bc` fi - echo -e "${idsCL[LightCyan]}NetworkRack Amps ${idsCL[Default]}: ${idsCL[Green]}${NETRK_AMP}'Amps ~ estimate${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}NetworkRack Wattage ${idsCL[Default]}: ${idsCL[Green]}${NETRK_WATT}'Watts ~ estimate${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}NetworkRack Amps ${idsCL[Default]}: ${idsCL[Green]}${NETRK_AMP}'amps ~ estimate${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}NetworkRack Wattage ${idsCL[Default]}: ${idsCL[Green]}${NETRK_WATT}'watts ~ estimate${idsCL[Default]}" echo - echo -e "${idsCL[LightCyan]}Voltage ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLT}'Volts${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}Voltage Drop ${idsCL[Default]}: ${idsCL[LightRed]}${VOLT_DROP}'Volts${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_AMP}'Amps${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_WATT_disp}'Watts${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Voltage ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_VOLT}'volts${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Voltage Drop ${idsCL[Default]}: ${idsCL[LightRed]}${VOLT_DROP}'volts${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_AMP}'amps${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}${SVRRM_WATT_disp}'watts${idsCL[Default]}" echo ######## @@ -605,11 +605,11 @@ CHECKPOWER(){ fi - echo -e "${idsCL[LightCyan]}UPS Voltage In ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_VOLTIN}'Volts${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}UPS Voltage Out ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_VOLTOUT}'Volts${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}UPS Voltage In ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_VOLTIN}'volts${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}UPS Voltage Out ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_VOLTOUT}'volts${idsCL[Default]}" echo - echo -e "${idsCL[LightCyan]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_AMPS}'Amps ~ estimate${idsCL[Default]}" - echo -e "${idsCL[LightCyan]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_WATTS}'Watts ~ estimate${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Total Amps ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_AMPS}'amps ~ estimate${idsCL[Default]}" + echo -e "${idsCL[LightCyan]}Total Wattage ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_WATTS}'watts ~ estimate${idsCL[Default]}" echo echo -e "${idsCL[LightCyan]}Battery Capacity ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_BATT_CAP}%${idsCL[Default]}" echo -e "${idsCL[LightCyan]}Battery Runtime ${idsCL[Default]}: ${idsCL[Green]}${OFFSITE_BATT_RUNTIME%.*}'Mins${idsCL[Default]}" @@ -670,31 +670,31 @@ CHECKPOWER_SERVICE(){ if (( $(bc <<<"${INPUTACV} >= ${min_acvolt}") )); then if [ ${voltstatus} -eq 3 ]; then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'Volts - Back to Normal Voltage" >> ${PW_LOGPOWER} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - Back to Normal Voltage" >> ${PW_LOGPOWER} SENDNOTICE "POWER NOMINAL AGAIN" "Normal voltage detected -VOLTAGE: ${INPUTACV}'Volts" - echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'Volts - POWER NOMINAL AGAIN" >> ${PW_LOGFILE} +VOLTAGE: ${INPUTACV}'volts" + echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - POWER NOMINAL AGAIN" >> ${PW_LOGFILE} battstatus=0 else - [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge 3600 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'Volts - Normal Voltage" >> ${PW_LOGPOWER} + [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge 3600 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - Normal Voltage" >> ${PW_LOGPOWER} if [ ${voltstatus} -eq 0 ]; then SENDNOTICE "Power Nominal" "Service Startup Normal voltage detected -VOLTAGE: ${INPUTACV}'Volts -BATT VOLTAGE: ${BATTVOLT}'Volts" - echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'Volts - Service Startup - Normal voltage detected" >> ${PW_LOGPOWER} - echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'Volts / ${BATTVOLT}'Volts - Service Startup - Normal Voltage" >> ${PW_LOGFILE} +VOLTAGE: ${INPUTACV}'volts +BATT VOLTAGE: ${BATTVOLT}'volts" + echo "($(date +'%Y-%m-%d %H:%M:%S')) - Input: ${INPUTACV}'volts - Service Startup - Normal voltage detected" >> ${PW_LOGPOWER} + echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Service Startup - Normal Voltage" >> ${PW_LOGFILE} fi fi voltstatus=1 rm -f ${PW_TMPFOLDER}/power.ac.* else - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'Volts - POWER OFF/LOW POWER" >> ${PW_LOGPOWER} - echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'Volts - POWER OFF/LOW POWER" >> ${PW_LOGFILE} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - POWER OFF/LOW POWER" >> ${PW_LOGPOWER} + echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - POWER OFF/LOW POWER" >> ${PW_LOGFILE} if [ ${voltstatus} -lt 3 ]; then SENDNOTICE "POWER ALERT - POWER OFF/LOW POWER!!" "Power off or low voltage detected -VOLTAGE: ${INPUTACV}'Volts -BATT VOLTAGE: ${BATTVOLT}'Volts" 1 +VOLTAGE: ${INPUTACV}'volts +BATT VOLTAGE: ${BATTVOLT}'volts" 1 last_battvolt=${BATTVOLT} voltstatus=3 touch ${PW_TMPFOLDER}/power.ac.low @@ -707,24 +707,24 @@ BATT VOLTAGE: ${BATTVOLT}'Volts" 1 fi if (( $(bc <<<"${BATTVOLT} < ${min_battvolt} && ${BATTVOLT} > ${min_battvolt_sys}") )); then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - LOW BATTERY Voltage" >> ${PW_LOGPOWER} - echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - LOW BATTERY VOLTAGE" >> ${PW_LOGFILE} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - LOW BATTERY Voltage" >> ${PW_LOGPOWER} + echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - LOW BATTERY VOLTAGE" >> ${PW_LOGFILE} touch ${PW_TMPFOLDER}/power.dc.low if (( $(bc <<<"${battstatus} < 2 && ${INPUTACV} < ${min_acvolt}") )); then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - Shutting down main servers..." >> ${PW_LOGPOWER} - SENDNOTICE "BATT-VOLT LOW: SHUTDOWN MAIN SERVERS" "Battery Voltage LOW: ${BATTVOLT}'Volts + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down main servers..." >> ${PW_LOGPOWER} + SENDNOTICE "BATT-VOLT LOW: SHUTDOWN MAIN SERVERS" "Battery Voltage LOW: ${BATTVOLT}'volts Shutting down main servers" 1 SHUTDOWN_MAIN POWER & battstatus=2 fi elif (( $(bc <<<"${BATTVOLT} <= ${min_battvolt_sys}") )); then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - LOW BATTERY Voltage" >> ${PW_LOGPOWER} - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - LOW BATTERY VOLTAGE" >> ${PW_LOGFILE} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - LOW BATTERY Voltage" >> ${PW_LOGPOWER} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - LOW BATTERY VOLTAGE" >> ${PW_LOGFILE} touch ${PW_TMPFOLDER}/power.dc.low if (( $(bc <<<"${battstatus} < 3 && ${INPUTACV} < ${min_acvolt}") )); then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - Shutting down all remaining servers..." >> ${PW_LOGPOWER} - SENDNOTICE "BATT-VOLT REALLY LOW: SHUTDOWN SYS SERVERS" "Battery Voltage REALLY LOW: ${BATTVOLT}'Volts + echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Shutting down all remaining servers..." >> ${PW_LOGPOWER} + SENDNOTICE "BATT-VOLT REALLY LOW: SHUTDOWN SYS SERVERS" "Battery Voltage REALLY LOW: ${BATTVOLT}'volts Shutting down all servers" 1 SHUTDOWN_SYS POWER & @@ -733,9 +733,9 @@ Shutting down all servers" 1 fi else - [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge 3600 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - Battery Voltage" >> ${PW_LOGPOWER} + [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge 3600 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Battery Voltage" >> ${PW_LOGPOWER} if [ ${battstatus} -eq 0 ]; then - echo "($(date +'%Y-%m-%d %H:%M:%S')) - Battery: ${BATTVOLT}'Volts - Service Startup - Normal voltage detected" >> ${PW_LOGPOWER} + echo "($(date +'%Y-%m-%d %H:%M:%S')) - Battery: ${BATTVOLT}'volts - Service Startup - Normal voltage detected" >> ${PW_LOGPOWER} fi battstatus=1 @@ -744,8 +744,8 @@ Shutting down all servers" 1 volt_diff=`echo "scale=1; ${last_battvolt}-${BATTVOLT}" | bc` (( $(bc <<<"${volt_diff} < 0") )) && temp_diff=`echo "scale=1; ${volt_diff} * -1" | bc` if (( $(bc <<<"${volt_diff} > 0.5") )); then - SENDNOTICE "BATTERY VOLTAGE CHANGE" "Battery Voltage: ${BATTVOLT}'Volts" - echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'Volts - Battery Voltage Change" >> ${PW_LOGPOWER} + SENDNOTICE "BATTERY VOLTAGE CHANGE" "Battery Voltage: ${BATTVOLT}'volts" + echo -e "($(date +'%Y-%m-%d %H:%M:%S')) - ${BATTVOLT}'volts - Battery Voltage Change" >> ${PW_LOGPOWER} last_battvolt=${BATTVOLT} fi else @@ -763,10 +763,10 @@ Shutting down all servers" 1 # # if (( $(bc <<<"${OFFSITE_VOLTIN} >= ${min_acvolt}") )); then # if [ -f ${PW_TMPFOLDER}/power.offsite.ac.low ]; then -# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - Offsite Back to Normal Voltage" >> ${PW_LOGPOWER} -# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - OFFSITE POWER NOMINAL AGAIN" >> ${PW_LOGFILE} +# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - Offsite Back to Normal Voltage" >> ${PW_LOGPOWER} +# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - OFFSITE POWER NOMINAL AGAIN" >> ${PW_LOGFILE} # SENDNOTICE "OFFSITE POWER NOMINAL AGAIN" "Normal voltage detected -# VOLTAGE: ${OFFSITE_VOLTIN}'Volts" +# VOLTAGE: ${OFFSITE_VOLTIN}'volts" # rm -f ${PW_TMPFOLDER}/power.offsite.ac.* # fi # if [ -f ${PW_TMPFOLDER}/power.offsite.off ]; then @@ -782,11 +782,11 @@ Shutting down all servers" 1 # fi # # else -# [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -le 300 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - Offsite Normal Voltage" >> ${PW_LOGPOWER} +# [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -le 300 ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - Offsite Normal Voltage" >> ${PW_LOGPOWER} # fi # else -# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGPOWER} -# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'Volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGFILE} +# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGPOWER} +# echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${OFFSITE_VOLTIN}'volts - OFFSITE POWER OFF/LOW POWER" >> ${PW_LOGFILE} # # if [ ! -f ${PW_TMPFOLDER}/power.offsite.ac.low ] || [ $(expr `date +%s` - $(stat -c %Y ${PW_TMPFOLDER}/power.offsite.ac.low)) -ge 240 ]; then # SENDNOTICE "OFFSITE POWER ALERT - POWER OFF/LOW!!" "Power off or low voltage detected