Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FritzDect static mode to provide B (disabled) & C (enabled) status by switch state #2414

Merged
merged 10 commits into from
Jan 31, 2022

Conversation

thierolm
Copy link
Contributor

@thierolm thierolm commented Jan 27, 2022

First implementation of powerless parameter for FritzDect charger in order to support simple heat pump control use cases without metering the power and charged energy.

Other switches (shelly, tasmota,tp-link) will follow, as soon as parameter and behaviour are finally aligned/approved by evcc team.

Fix #2408

Markus Thierolf added 2 commits January 27, 2022 10:18
@thierolm thierolm changed the title FritzDect powerless paramter FritzDect powerless parameter Jan 27, 2022
@andig
Copy link
Member

andig commented Jan 27, 2022

Wir sind ja ein nicht steuerbarer Charger. Da brauchts irgendwie ein Feedback zur konsumierten Leistung- evcc muss bei PV ja wissen wann ein/auszuschalten ist, wenigstens als Annahme. Wäre eine Idee statt powerless vllt. Indirectpower oder switchedpower als Paramter zu nehmen? Falls gesetzt ist der Wert die Leistungsannahme und das Verhalten ändert sich. Glücklich macht mich der Name aber auch nicht.

@andig andig added the enhancement New feature or request label Jan 27, 2022
@thierolm
Copy link
Contributor Author

thierolm commented Jan 27, 2022

Ich fände switchedpower da sprechender.
@hrpv : Wieviel Watt zieht denn deine Wärmepumpe, wenn du sie anschaltest?

@hrpv
Copy link
Contributor

hrpv commented Jan 28, 2022

Ich fände switchedpower da sprechender. @hrpv : Wieviel Watt zieht denn deine Wärmepumpe, wenn du sie anschaltest?

Die Wärmepumpe zieht zwischen 1kw und 6kw (Leistungsgesteuerter Inverter) und ca. 50W bei Kompressor aus. Die WP hat einen eigenen Zähler der im Loadpoint WP eingebunden ist (via vzlogger / push Interface) und dank evcc auch im SMA Portal als Verbraucher sichtbar ist. Wobei Anschalten über den Funkschalter lässt sie sich nicht wirklich: Der Funkschalter ist eine "Empfehlung" erhöhe die Brauchwassertemperatur bei PV Überschuss.
Ich wollte gerade mal die Änderung ausprobieren aber offensichtlich ist die noch nicht in der aktuellen nightly (0.81.1643337195)?

[main ] FATAL 2022/01/28 08:56:35 cannot create charger 'wpcharger': cannot create charger 'fritzdect': 1 error(s) decoding:

  • '' has invalid keys: powerless
    @andig
    Zu meinem Verständnis: Ihr diskutiert darüber ob man einfach eine fest definierte Leistung switchedpower zurückliefert, für den Fall dass der Schalter selber entweder nicht messen kann (gemessene power = 0) oder der Spezialfall switchedpower: xxx definiert und damit State B/C unabhängig von der tatsächlich vom Schalter gemessenen Power gesetzt wird? D.h. statt dem Parameter powerless definiert man besser eine switchedpower : > 0 und kann damit auch eine grobe Schätzung abgeben wieviel Leistung abgerufen wird, das finde ich sehr gut.
    In meinem Fall hat der Loadpoint WP ja ein eigenes WP meter, dann wird immer dessen Leistung genommen unabhängig von dem was der Schalter rückliefert, denke das bleibt auch so, oder?

@thierolm
Copy link
Contributor Author

Nach der #2426 Lösung und der Info, dass die Wärmepumpe eine variable Leistung abruft, finde ich Idee zur 'simple Switch mit statischem Power' Erweiterung der Steckdosen Charger nicht mehr ganz so prickelnd. Wir sollten sie bei ihrer Kernfunktionalität belassen.

Was meint ihr?

@hrpv
Copy link
Contributor

hrpv commented Jan 29, 2022

Nach der #2426 Lösung und der Info, dass die Wärmepumpe eine variable Leistung abruft, finde ich Idee zur 'simple Switch mit statischem Power' Erweiterung der Steckdosen Charger nicht mehr ganz so prickelnd. Wir sollten sie bei ihrer Kernfunktionalität belassen.

Was meint ihr?

Ich würde es trotzdem gut finden wenn man eine statische Power definieren könnte. So hatte ich es vor dem Einsatz von evcc (als semp Device) im SMA Portal machen müssen: Eintragung der Wärmepumpe als feste schaltbare Last, das war besser als nichts.
Wenn man im Loadpoint kein eigenes chargemeter hat, kann man immerhin eine ungefähre Last eintragen, das ist auf jeden Fall besser als immer 0 zurückliefern.

@andig andig added the needs decision Unsure if we should really do this label Jan 30, 2022
@andig
Copy link
Member

andig commented Jan 30, 2022

Ich würde es trotzdem gut finden wenn man eine statische Power definieren könnte. So hatte ich es vor dem Einsatz von evcc (als semp Device) im SMA Portal machen müssen: Eintragung der Wärmepumpe als feste schaltbare Last, das war besser als nichts.

Ich denke jetzt mal laut. Das charge meter können wir ja immer separat konfigurieren, egal ob der Charger (=die Fritzdect) eins hat. Das kann auch ein Fake meter (=js) sein, dass einfach einen Wert zurück gibt, diesen über MQTT holt oder was auch immer. Die einzige Frage hier ist doch, woher wir den Status bekommen B vs C.

@thierolm wie wärs denn wenn wir standbypower <= 0 als "statisch" interpretieren, also in dem Fall immer einfach den Einschaltzustand zurück geben? Leistung könnte die gemessene sein. Wer andere Werte will kann diese über zusätzlichen Ladezähler realisieren.

Nach der #2426 Lösung und der Info, dass die Wärmepumpe eine variable Leistung abruft, finde ich Idee zur 'simple Switch mit statischem Power' Erweiterung der Steckdosen Charger nicht mehr ganz so prickelnd. Wir sollten sie bei ihrer Kernfunktionalität belassen.

/cc @premultiply

@thierolm thierolm changed the title FritzDect powerless parameter FritzDect static mode to provide B (disabled) & C (enabled) status by switch state Jan 30, 2022
@thierolm
Copy link
Contributor Author

Hab' jetzt standbypower < 0 als Indikation für den StaticMode eingebaut. CurrentPower und ChargedEnergy werden im StaticMode so weitergegeben, wie sie die Steckdose misst.

charger/fritzdect.go Outdated Show resolved Hide resolved
charger/fritzdect.go Outdated Show resolved Hide resolved
charger/fritzdect.go Outdated Show resolved Hide resolved
@thierolm
Copy link
Contributor Author

Hab' mit verschiedenen Config-Parametern erfolgreich getestet.

@thierolm
Copy link
Contributor Author

Wenn die Logik so passt, würde ich shelly, tasmota und tp-link entsprechend anpassen.

@hrpv
Copy link
Contributor

hrpv commented Jan 30, 2022

d.h. final kein neuer Parameter
standbypower >=0 : Verhalten wie bisher
standbypower < 0 : Schalter on -> State C, Schalter off -> State B
charge meter auswahl:
wenn im loadpoint kein chargemeter definiert ist -> power vom funkschalter
oder echtes meter (bevorzugt) oder ein dummy meter über mqtt so z.B.
#2426, ganz am Ende

....
response=$(mosquitto_sub -t "evcc/loadpoints/1/enabled" -C 1)
...

@andig
Copy link
Member

andig commented Jan 31, 2022

@thierolm ich habs mal vereinfach. Bleibt noch die Frage, warum wir die Standbypower egtl. verstecken, das bei anderen Chargern aber nicht machen. Als Merker für uns, das zu ändern wäre ein anderes Thema.

LGTM, ich warte auf "go" von @premultiply

@andig andig merged commit d75e52c into evcc-io:master Jan 31, 2022
@thierolm
Copy link
Contributor Author

thierolm commented Feb 1, 2022

Dann passe ich mal die anderen switch charger am kommenden WE entsprechend an.

Eine Frage habe ich noch auf Basis der Testung von @hrpv ( siehe #2463 ):
Sollte für CurrentPower und ChargedEnergy im Falle des static modes nil zurückgegeben werden, damit evcc intern dafür die Werte über ein zusätzliches Meter sucht?

@hrpv
Copy link
Contributor

hrpv commented Feb 1, 2022

Sollte der externe Zähler eigentlich nicht immer Vorrang haben, sowohl für Leistung und Energie, sobald er definiert ist,
ganz unabhängig davon ob der Charger selber Power und Energie liefert?
Ich werde mal versuchen meinem Zaehler auch die Energie entlocken, dann dürfte das Problem weg sein, oder?

@andig
Copy link
Member

andig commented Feb 1, 2022

Eine Frage habe ich noch auf Basis der Testung von @hrpv ( siehe #2463 ): Sollte für CurrentPower und ChargedEnergy im Falle des static modes nil zurückgegeben werden, damit evcc intern dafür die Werte über ein zusätzliches Meter sucht?

Das tut evcc immer. Falls nein ist es ein Fehler. Also kein Anpassungsbedarf.

@hrpv
Copy link
Contributor

hrpv commented Feb 2, 2022

Eine Frage habe ich noch auf Basis der Testung von @hrpv ( siehe #2463 ): Sollte für CurrentPower und ChargedEnergy im Falle des static modes nil zurückgegeben werden, damit evcc intern dafür die Werte über ein zusätzliches Meter sucht?

Das tut evcc immer. Falls nein ist es ein Fehler. Also kein Anpassungsbedarf.

#2463 Also nochmal ausführlich getestet und akualisiert: Tut leider nicht wie erwartet, es wird beim Laden die Energie vom fritzdect Funkschalter genommen und nicht von dem definierten Charge-Meter wpmeter

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request needs decision Unsure if we should really do this
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Statusabfrage B, C bei Funkschaltern optional unabhängig von der Power
3 participants