Skip to content

bat_all.py: hysteresis_discharge ist nicht persistent zwischen Durchläufen #3101

@andlem74

Description

@andlem74

Beim Debuggen, warum die Speicherhysterese nicht funktioniert, ist mir aufgefallen:

Das BatAll-Objekt wird in jedem Durchlauf neu erzeugt. Das Hysterese-Flag hysteresis_discharge muss deswegen zwischen den Durchläufen außerhalb des Objekts persistent gespeichert werden. Dies soll wohl über den zentralen MQTT-Broker geschehen.

Jedoch gibt helpermodules.setdata im Log bei jedem Schreiben, das der Code von bat_all.py durchführt, diese Fehlermeldung aus:

{helpermodules.setdata:354} - {WARNING:Setdata} - Keine ID mit gültiger Konfiguration für Topic openWB/set/bat/set/hysteresis_discharge mit Payload True gefunden.

Ein MQTT-Explorer zeigt auch, dass kein Topic für hysteresis_discharge existiert bzw. angelegt wird. Evtl. muss dieses Topic in der Datastore-Update-Prozedur neu angelegt werden?

Es zeigt sich, dass zu Beginn in jedem neuen Durchlauf der Wert von hysteresis_discharge wieder auf Default=False ist, egal, was das Ergebnis vom Durchlauf zuvor war.

Mir ist nicht wirklich klar, wo genau der Fehler liegt. Aber die Hysterese funktioniert deswegen nicht.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions