diff --git a/core/loadpoint.go b/core/loadpoint.go index 4c85755c8..3c7499634 100644 --- a/core/loadpoint.go +++ b/core/loadpoint.go @@ -693,6 +693,14 @@ func (lp *Loadpoint) setLimit(chargeCurrent float64, force bool) error { lp.elapseGuard() if err := lp.charger.Enable(enabled); err != nil { + v := lp.GetVehicle() + if vv, ok := v.(api.Resurrector); enabled && ok && errors.Is(err, api.ErrAsleep) { + // https://github.com/evcc-io/evcc/issues/8254 + // wakeup vehicle + lp.log.DEBUG.Printf("charger %s: waking up vehicle", status[enabled]) + return vv.WakeUp() + } + return fmt.Errorf("charger %s: %w", status[enabled], err) }