From 93405442be9754ea49af34d36260b9fff2aec893 Mon Sep 17 00:00:00 2001 From: andig Date: Mon, 18 Jul 2022 15:53:57 +0200 Subject: [PATCH] Fix loadpoint default phases overriding auto phase config for switchable chargers (#3888) --- core/loadpoint.go | 9 +++++---- core/loadpoint_test.go | 2 +- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/core/loadpoint.go b/core/loadpoint.go index 2230a8c55..243a20bc7 100644 --- a/core/loadpoint.go +++ b/core/loadpoint.go @@ -234,12 +234,14 @@ func NewLoadPointFromConfig(log *util.Logger, cp configProvider, other map[strin lp.configureChargerType(lp.charger) // setup fixed phases: - // - simple charger starts with phases config if specified + // - simple charger starts with phases config if specified or 3p // - switchable charger starts at 0p since we don't know the current setting if _, ok := lp.charger.(api.ChargePhases); !ok { - if lp.DefaultPhases != 0 { - lp.phases = lp.DefaultPhases + if lp.DefaultPhases == 0 { + lp.DefaultPhases = 3 + lp.log.WARN.Println("phases not configured, assuming 3p") } + lp.phases = lp.DefaultPhases } else if lp.DefaultPhases != 0 { lp.log.WARN.Printf("locking phase config to %dp for switchable charger", lp.DefaultPhases) } @@ -264,7 +266,6 @@ func NewLoadPoint(log *util.Logger) *LoadPoint { clock: clock, // mockable time bus: bus, // event bus Mode: api.ModeOff, - phases: 3, status: api.StatusNone, MinCurrent: 6, // A MaxCurrent: 16, // A diff --git a/core/loadpoint_test.go b/core/loadpoint_test.go index e72a86cb3..0277bfbdd 100644 --- a/core/loadpoint_test.go +++ b/core/loadpoint_test.go @@ -82,7 +82,7 @@ func attachListeners(t *testing.T, lp *LoadPoint) { func TestNew(t *testing.T) { lp := NewLoadPoint(util.NewLogger("foo")) - if lp.phases != 3 { + if lp.phases != 0 { t.Errorf("Phases %v", lp.phases) } if lp.MinCurrent != minA {