diff --git a/core/loadpoint.go b/core/loadpoint.go index 0db6ca419..b3ce3e4a0 100644 --- a/core/loadpoint.go +++ b/core/loadpoint.go @@ -1559,10 +1559,6 @@ func (lp *Loadpoint) phasesFromChargeCurrents() { // updateChargeVoltages uses PhaseVoltages interface to count phases with nominal grid voltage func (lp *Loadpoint) updateChargeVoltages() { - if lp.hasPhaseSwitching() { - return // we don't need the voltages - } - phaseMeter, ok := lp.chargeMeter.(api.PhaseVoltages) if !ok { return // don't guess @@ -1578,6 +1574,10 @@ func (lp *Loadpoint) updateChargeVoltages() { lp.log.DEBUG.Printf("charge voltages: %.3gV", chargeVoltages) lp.publish(keys.ChargeVoltages, chargeVoltages) + if lp.hasPhaseSwitching() { + return // we don't need the voltages + } + a1, a2, a3 := u1 >= minActiveVoltage, u2 >= minActiveVoltage, u3 >= minActiveVoltage // Quine-McCluskey for (¬L1∧L2∧¬L3) ∨ (L1∧L2∧¬L3) ∨ (¬L1∧¬L2∧L3) ∨ (L1∧¬L2∧L3) ∨ (¬L1∧L2∧L3) -> ¬L1 ∧ L3 ∨ L2 ∧ ¬L3 ∨ ¬L2 ∧ L3