diff --git a/defaults.inc b/defaults.inc index 61c5e599..1535f18f 100755 --- a/defaults.inc +++ b/defaults.inc @@ -1,6 +1,6 @@ #!/usr/bin/env bash -VERS='2.5.276-02062024' +VERS='2.5.277-02062024' noheader=' update service dailytemp confsync -r -report ' diff --git a/inc/power.inc.sh b/inc/power.inc.sh index ed7d0ec9..d33c0096 100644 --- a/inc/power.inc.sh +++ b/inc/power.inc.sh @@ -402,8 +402,21 @@ CHECKPOWER_SERVICE(){ if [ "${INVSTATSINFO}" != "" ] || [ ${TESTMODE} -eq 1 ]; then [ "${TEST_INPUTACV}" != "" ] && INPUTACV=${TEST_INPUTACV} || INPUTACV=$(echo ${INVSTATSINFO} | jq '.inputs .inV') - [ "${TEST_BATTVOLT}" != "" ] && BATTVOLT=${TEST_BATTVOLT} || BATTVOLT=$(echo ${INVSTATSINFO} | jq '.inputs .battV') - + [ "${TEST_BATTVOLT}" != "" ] && BATTVOLT=${TEST_BATTVOLT} || BATTVOLT=$(echo ${INVSTATSINFO} | jq '.inputs .battV') + BATTA=`echo ${INVSTATSINFO} | jq '.inputs .xfA'` + BATTLIFE=`echo "scale=2; (${BATTV}*100)/${BATT_FULL}" | bc` + if (( $(bc <<<"${BATTV} >= ${FLOAT_CHARGE}") )); then + if (( $(bc <<<"${BATTV} >= ${BULK_CHARGE}") )); then + BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Bulk Charging" + else + BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Float Charging" + fi + elif [ "${BATTA}" = "-0.1" ] || [ "${BATTA}" = "-0.2" ] || [ "${BATTA}" = "-0.3" ]; then + BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Standby" + else + BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Discharging" + fi + if [ ${TESTMODE} -eq 1 ] && [ ! -f ${PW_TMPFOLDER}/power.testmode.enabled ]; then touch ${PW_TMPFOLDER}/power.testmode.enabled SENDNOTICE "TEST MODE" "***TEST MODE*** ENABLED!" @@ -423,28 +436,17 @@ CHECKPOWER_SERVICE(){ if [ -f ${PW_TMPFOLDER}/power.ac.low ]; then echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Back to Normal Voltage" >> ${PW_LOGPOWER} SENDNOTICE "POWER NOMINAL AGAIN" "Normal voltage detected -VOLTAGE: ${INPUTACV}'volts" +GRID VOLTAGE: ${INPUTACV}'volts +BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`% @ ${BATT_FULL}'V) +BATT AMPS: ${BATTA_disp}" else [ $(expr `date +%s` - $(stat -c %Y ${PW_LOGPOWER})) -ge $(echo "scale=0; ${PW_LOG_INTERVAL_NORMAL}*60" | bc) ] && echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts - Normal Voltage" >> ${PW_LOGPOWER} if [ -f ${PW_TMPFOLDER}/power.ac.start ]; then - BATTA=`echo ${INVSTATSINFO} | jq '.inputs .xfA'` - BATTLIFE=`echo "scale=2; (${BATTV}*100)/${BATT_FULL}" | bc` - if (( $(bc <<<"${BATTV} >= ${FLOAT_CHARGE}") )); then - if (( $(bc <<<"${BATTV} >= ${BULK_CHARGE}") )); then - BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Bulk Charging" - else - BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Float Charging" - fi - elif [ "${BATTA}" = "-0.1" ] || [ "${BATTA}" = "-0.2" ] || [ "${BATTA}" = "-0.3" ]; then - BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Standby" - else - BATTA_disp="`IDS_NUMBER_FORMAT ${BATTA}`'amps - Discharging" - fi SENDNOTICE "POWER Startup - Nominal" "Service Startup Normal voltage detected -GRID VOLTAGE: ${INPUTACV}'volts -BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`% @ ${BATT_FULL}'V) -BATT AMPS: ${BATTA_disp}" +GRID VOLTAGE: ${INPUTACV}'volts +BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`% @ ${BATT_FULL}'V) +BATT AMPS: ${BATTA_disp}" echo "($(date +'%Y-%m-%d %H:%M:%S')) - 'Check Power' Service Startup - Normal voltage detected - Input: ${INPUTACV}'volts" >> ${PW_LOGPOWER} rm -f ${PW_TMPFOLDER}/power.ac.start @@ -475,8 +477,9 @@ BATT AMPS: ${BATTA_disp}" if [ -f ${PW_TMPFOLDER}/power.ac.start ]; then SENDNOTICE "POWER Startup - POWER OFF/LOW!!" "Service Startup Power off or low voltage detected -VOLTAGE: ${INPUTACV}'volts -BATT VOLTAGE: ${BATTVOLT}'volts" 1 +GRID VOLTAGE: ${INPUTACV}'volts +BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`% @ ${BATT_FULL}'V) +BATT AMPS: ${BATTA_disp}" 1 echo "($(date +'%Y-%m-%d %H:%M:%S')) - 'Check Power' Service Startup - Normal voltage detected - Input: ${INPUTACV}'volts" >> ${PW_LOGPOWER} rm -f ${PW_TMPFOLDER}/power.ac.start rm -f ${PW_TMPFOLDER}/power.ac.good @@ -485,8 +488,9 @@ BATT VOLTAGE: ${BATTVOLT}'volts" 1 elif [ -f ${PW_TMPFOLDER}/power.ac.good ]; then echo "($(date +'%Y-%m-%d %H:%M:%S')) - ${INPUTACV}'volts / ${BATTVOLT}'volts - Power OFF or LOW voltage detected" >> ${PW_LOGPOWER} SENDNOTICE "POWER ALERT - POWER OFF/LOW!!" "Power off or low voltage detected -VOLTAGE: ${INPUTACV}'volts -BATT VOLTAGE: ${BATTVOLT}'volts" 1 +GRID VOLTAGE: ${INPUTACV}'volts +BATT VOLTAGE: `IDS_NUMBER_FORMAT ${BATTVOLT}`'volts ~ (`IDS_NUMBER_FORMAT ${BATTLIFE}`% @ ${BATT_FULL}'V) +BATT AMPS: ${BATTA_disp}" 1 rm -f ${PW_TMPFOLDER}/power.ac.good touch ${PW_TMPFOLDER}/power.ac.low