Browse Source

0.7.18 - 2023-07-26

* next attempt to fix yield day for multiple inverters #1016
pull/1048/head
lumapu 1 year ago
parent
commit
58f19f88d0
  1. 3
      src/CHANGES.md
  2. 2
      src/defines.h
  3. 9
      src/hm/hmInverter.h

3
src/CHANGES.md

@ -1,5 +1,8 @@
# Development Changes # Development Changes
## 0.7.18 - 2023-07-26
* next attempt to fix yield day for multiple inverters #1016
## 0.7.17 - 2023-07-25 ## 0.7.17 - 2023-07-25
* next attempt to fix yield day for multiple inverters #1016 * next attempt to fix yield day for multiple inverters #1016
* added two more states for the inverter status (also docu) * added two more states for the inverter status (also docu)

2
src/defines.h

@ -13,7 +13,7 @@
//------------------------------------- //-------------------------------------
#define VERSION_MAJOR 0 #define VERSION_MAJOR 0
#define VERSION_MINOR 7 #define VERSION_MINOR 7
#define VERSION_PATCH 17 #define VERSION_PATCH 18
//------------------------------------- //-------------------------------------
typedef struct { typedef struct {

9
src/hm/hmInverter.h

@ -403,11 +403,11 @@ class Inverter {
if(avail) { if(avail) {
if(status < InverterStatus::PRODUCING) if(status < InverterStatus::PRODUCING)
status = InverterStatus::STARTING; status = InverterStatus::STARTING;
else
status = InverterStatus::WAS_ON;
} else { } else {
if((*timestamp - recordMeas.ts) < INVERTER_OFF_THRES_SEC) if((*timestamp - recordMeas.ts) > INVERTER_OFF_THRES_SEC)
status = InverterStatus::OFF; status = InverterStatus::OFF;
else
status = InverterStatus::WAS_ON;
} }
return avail; return avail;
@ -417,8 +417,7 @@ class Inverter {
bool producing = false; bool producing = false;
DPRINTLN(DBG_VERBOSE, F("hmInverter.h:isProducing")); DPRINTLN(DBG_VERBOSE, F("hmInverter.h:isProducing"));
if(isAvailable()) { if(isAvailable()) {
uint8_t pos = getPosByChFld(CH0, FLD_PAC, &recordMeas); producing = (getChannelFieldValue(CH0, FLD_PAC, &recordMeas) > INACT_PWR_THRESH);
producing = (getValue(pos, &recordMeas) > INACT_PWR_THRESH);
if(producing) if(producing)
status = InverterStatus::PRODUCING; status = InverterStatus::PRODUCING;

Loading…
Cancel
Save