chore: simplify

This commit is contained in:
andig 2024-04-15 09:26:48 +02:00
parent f2572fb5dc
commit 31f59c9eaf
2 changed files with 11 additions and 22 deletions

View file

@ -1282,28 +1282,21 @@ func (lp *Loadpoint) UpdateChargePower() {
bo := backoff.NewExponentialBackOff()
bo.MaxElapsedTime = time.Second
if err := backoff.Retry(func() error {
value, err := lp.chargeMeter.CurrentPower()
if err != nil {
return err
}
if power, err := backoff.RetryWithData(lp.chargeMeter.CurrentPower, bo); err == nil {
lp.Lock()
lp.chargePower = value // update value if no error
lp.chargePower = power // update value if no error
lp.Unlock()
lp.log.DEBUG.Printf("charge power: %.0fW", value)
lp.publish(keys.ChargePower, value)
lp.log.DEBUG.Printf("charge power: %.0fW", power)
lp.publish(keys.ChargePower, power)
// https://github.com/evcc-io/evcc/issues/2153
// https://github.com/evcc-io/evcc/issues/6986
// https://github.com/evcc-io/evcc/issues/13378
if lp.chargePower < -100 && lp.shouldBeConsistent() {
lp.log.WARN.Printf("charge power must not be negative: %.0f", lp.chargePower)
if power < -100 && lp.shouldBeConsistent() {
lp.log.WARN.Printf("charge power must not be negative: %.0f", power)
}
return nil
}, bo); err != nil {
} else {
lp.log.ERROR.Printf("charge meter: %v", err)
}
}

View file

@ -542,8 +542,7 @@ func (site *Site) updateGridMeter() error {
return nil
}
res, err := backoff.RetryWithData(site.gridMeter.CurrentPower, bo())
if err == nil {
if res, err := backoff.RetryWithData(site.gridMeter.CurrentPower, bo()); err == nil {
site.gridPower = res
site.log.DEBUG.Printf("grid meter: %.0fW", res)
site.publish(keys.GridPower, res)
@ -554,8 +553,7 @@ func (site *Site) updateGridMeter() error {
// grid phase powers
var p1, p2, p3 float64
if phaseMeter, ok := site.gridMeter.(api.PhasePowers); ok {
p1, p2, p3, err = phaseMeter.Powers()
if err == nil {
if p1, p2, p3, err := phaseMeter.Powers(); err == nil {
phases := []float64{p1, p2, p3}
site.log.DEBUG.Printf("grid powers: %.0fW", phases)
site.publish(keys.GridPowers, phases)
@ -566,8 +564,7 @@ func (site *Site) updateGridMeter() error {
// grid phase currents (signed)
if phaseMeter, ok := site.gridMeter.(api.PhaseCurrents); ok {
i1, i2, i3, err := phaseMeter.Currents()
if err == nil {
if i1, i2, i3, err := phaseMeter.Currents(); err == nil {
phases := []float64{util.SignFromPower(i1, p1), util.SignFromPower(i2, p2), util.SignFromPower(i3, p3)}
site.log.DEBUG.Printf("grid currents: %.3gA", phases)
site.publish(keys.GridCurrents, phases)
@ -578,8 +575,7 @@ func (site *Site) updateGridMeter() error {
// grid energy (import)
if energyMeter, ok := site.gridMeter.(api.MeterEnergy); ok {
f, err := energyMeter.TotalEnergy()
if err == nil {
if f, err := energyMeter.TotalEnergy(); err == nil {
site.publish(keys.GridEnergy, f)
} else {
site.log.ERROR.Printf("grid energy: %v", err)