diff --git a/powerwall.sh b/powerwall.sh index 683246cb..68a975b8 100755 --- a/powerwall.sh +++ b/powerwall.sh @@ -519,6 +519,10 @@ AVERAGEPOWER(){ } CHECKPOWER(){ + FLOAT_CHARGE=55 + BULK_CHARGE=56.5 + BATT_FULL=52 #54.6 + start=`date +%s` rm -f ${PW_TMPFOLDER}/*.hostpower* while [ $# -gt 0 ]; do @@ -549,14 +553,14 @@ CHECKPOWER(){ OUTPUTW=`echo ${INVSTATSINFO} | jq '.outputs .outW'` BATTV=`echo ${INVSTATSINFO} | jq '.inputs .battV'` BATTA=`echo ${INVSTATSINFO} | jq '.inputs .xfA'` - BATTLIFE=`echo "scale=2; (${BATTV}*100)/54.6" | bc` - if (( $(bc <<<"${BATTV} > 54.8") )); then - if (( $(bc <<<"${BATTV} > 58") )); then + BATTLIFE=`echo "scale=2; (${BATTV}*100)/${BATT_FULL}" | bc` + if (( $(bc <<<"${BATTV} > ${FLOAT_CHARGE}") )); then + if (( $(bc <<<"${BATTV} > ${BULK_CHARGE}") )); then BATTA_disp="${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Bulk Charging" else BATTA_disp="${idsCL[Green]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Float Charging" fi - elif [ "${BATTA}" == "-0.1" ]; then + elif [ "${BATTA}" == "-0.1" ] || [ "${BATTA}" == "-0.2" ] || [ "${BATTA}" == "-0.3" ]; then BATTA_disp="${idsCL[LightCyan]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Standby" else BATTA_disp="${idsCL[LightRed]}`IDS_NUMBER_FORMAT ${BATTA}`'amps ${idsCL[LightCyan]}- Discharging"