From 36b37eb2a642e82a6f58075b74984dea9b69c3e5 Mon Sep 17 00:00:00 2001 From: Gunnar Skjold Date: Tue, 28 Jan 2020 21:18:48 +0100 Subject: [PATCH] Calculate max power when receiving json from reader --- src/AmsWebServer.cpp | 27 +++++++++++---------------- 1 file changed, 11 insertions(+), 16 deletions(-) diff --git a/src/AmsWebServer.cpp b/src/AmsWebServer.cpp index c5a94a0e..c03d75b3 100644 --- a/src/AmsWebServer.cpp +++ b/src/AmsWebServer.cpp @@ -65,6 +65,16 @@ void AmsWebServer::setJson(StaticJsonDocument<500> json) { i1 = json["data"]["I1"].as(); i2 = json["data"]["I2"].as(); i3 = json["data"]["I3"].as(); + + if(config->hasConfig() && u1 > 0) { + maxPwr = config->fuseSize * u1; + if(u2 > 0) { + maxPwr += config->fuseSize * u2; + if(u3 > 0) { + maxPwr += config->fuseSize * u3; + } + } + } } } } @@ -230,23 +240,8 @@ void AmsWebServer::dataJson() { if(!json.isNull()) { println(" json has data"); - int u1 = json["data"]["U1"].as(); - int u2 = json["data"]["U2"].as(); - int u3 = json["data"]["U3"].as(); - int pwr = json["data"]["P"].as(); - - if(config->hasConfig() && u1 > 0) { - maxPwr = config->fuseSize * u1; - if(u2 > 0) { - maxPwr += config->fuseSize * u2; - if(u3 > 0) { - maxPwr += config->fuseSize * u3; - } - } - } - json["maxPower"] = maxPwr; - json["pct"] = min(pwr*100/maxPwr, 100); + json["pct"] = min(p*100/maxPwr, 100); json["meterType"] = config->meterType; json["currentMillis"] = millis();