diff --git a/lib/ClassicUi/html/meter.html b/lib/ClassicUi/html/meter.html index 719cb4a4..5659c543 100644 --- a/lib/ClassicUi/html/meter.html +++ b/lib/ClassicUi/html/meter.html @@ -35,6 +35,7 @@ Baud rate + 300 2400 4800 9600 diff --git a/lib/ClassicUi/src/AmsWebServer.cpp b/lib/ClassicUi/src/AmsWebServer.cpp index 6093312f..6e0de991 100644 --- a/lib/ClassicUi/src/AmsWebServer.cpp +++ b/lib/ClassicUi/src/AmsWebServer.cpp @@ -347,6 +347,7 @@ void AmsWebServer::configMeterHtml() { html.replace(F("{mod}"), meterState->getMeterModel()); html.replace(F("{mid}"), meterState->getMeterId()); html.replace(F("{b}"), String(meterConfig->baud)); + html.replace(F("{b300}"), meterConfig->baud == 300 ? F("selected") : F("")); html.replace(F("{b2400}"), meterConfig->baud == 2400 ? F("selected") : F("")); html.replace(F("{b4800}"), meterConfig->baud == 4800 ? F("selected") : F("")); html.replace(F("{b9600}"), meterConfig->baud == 9600 ? F("selected") : F("")); diff --git a/lib/EnergyAccounting/src/EnergyAccounting.cpp b/lib/EnergyAccounting/src/EnergyAccounting.cpp index 6e718213..501fa490 100644 --- a/lib/EnergyAccounting/src/EnergyAccounting.cpp +++ b/lib/EnergyAccounting/src/EnergyAccounting.cpp @@ -168,7 +168,6 @@ void EnergyAccounting::calcDayCost() { float price = eapi->getValueForHour(i - local.Hour); if(price == ENTSOE_NO_VALUE) break; breakTime(now - ((local.Hour - i) * 3600), utc); - int16_t wh = ds->getHourImport(utc.Hour); costDay += price * (wh / 1000.0); diff --git a/src/IEC6205675.cpp b/src/IEC6205675.cpp index b3f32c22..ccad1be7 100644 --- a/src/IEC6205675.cpp +++ b/src/IEC6205675.cpp @@ -98,8 +98,10 @@ IEC6205675::IEC6205675(const char* d, uint8_t useMeterType, MeterConfig* meterCo } if(listType >= 2 && memcmp(meterModel.c_str(), "MA304T3", 7) == 0) { - l2current = (((activeImportPower - activeExportPower) * sqrt(3)) - (l1voltage * l1current) - (l3voltage * l3current)) / l2voltage; l2voltage = sqrt(pow(l1voltage - l3voltage * cos(60 * (PI/180)), 2) + pow(l3voltage * sin(60 * (PI/180)),2)); + if(l2voltage > 0) { + l2current = (((activeImportPower - activeExportPower) * sqrt(3)) - (l1voltage * l1current) - (l3voltage * l3current)) / l2voltage; + } } if(listType == 3) {