diff --git a/core/loadpoint_api.go b/core/loadpoint_api.go index 2d789d285..766992569 100644 --- a/core/loadpoint_api.go +++ b/core/loadpoint_api.go @@ -31,7 +31,7 @@ func (lp *LoadPoint) SetMode(mode api.ChargeMode) { defer lp.Unlock() if _, err := api.ChargeModeString(mode.String()); err != nil { - lp.log.WARN.Printf("invalid charge mode: %s", string(mode)) + lp.log.ERROR.Printf("invalid charge mode: %s", string(mode)) return } diff --git a/server/mqtt.go b/server/mqtt.go index 0f0870890..7319c4f9d 100644 --- a/server/mqtt.go +++ b/server/mqtt.go @@ -116,9 +116,12 @@ func (m *MQTT) listenSetters(topic string, site site.API, lp loadpoint.API) { }) m.Handler.ListenSetter(topic+"/vehicle/set", func(payload string) { if vehicle, err := strconv.Atoi(payload); err == nil { - vehicles := site.GetVehicles() - if vehicle < len(vehicles) { - lp.SetVehicle(vehicles[vehicle]) + if vehicle >= 0 { + if vehicles := site.GetVehicles(); vehicle < len(vehicles) { + lp.SetVehicle(vehicles[vehicle]) + } + } else { + lp.SetVehicle(nil) } } })