lumapu / ahoy

Various tools, examples, and documentation for communicating with Hoymiles microinverters
https://ahoydtu.de
Other
954 stars 224 forks source link

[Bug] MQTT sendet kein P_AC wenn Inverter im Status 1 #987

Closed knickohr closed 1 year ago

knickohr commented 1 year ago

Platform

ESP32

Assembly

I did the assebly by myself

nRF24L01+ Module

nRF24L01+ plus

Antenna

circuit board

Power Stabilization

Elko (~100uF)

Connection picture

Version

0.7.3

Github Hash

bdf43fd

Build & Flash Method

ESP Tools (flash)

Setup

MQTT, Nighttime, Display enabled.

Debug Serial Log output

No response

Error description

Wir haben uns mit dem Fixen von Issue #980 bzw. #927 offenbar ein neues Problem eingefangen :

MQTT sendet über total/P_AC keine Werte mehr wenn ein Inverter in den Status /available = 1 wechselt.

Auf der WebGuI und im Display werden weiterhin die Werte ausgegeben, aber über MQTT bleibt der letzte Wert hängen als noch alle Inverter available = 2 waren.

(Siehe Fotos)

IMG_0913

IMG_0912

IMG_0911

teletapi commented 1 year ago

Das ist mir tatsächlich heute Abend ebenfalls aufgefallen. Ich war aber am überlegen das bis morgen abend noch zu beobachten

knickohr commented 1 year ago

Passiert Morgens auch. Nur fällts da weniger auf 😉

IMG_0914

knickohr commented 1 year ago

Nachtrag : total/YieldTotal und total/YieldDay werden ebenfalls nicht mehr gesendet 😵

Ich schätze mal, es wird überhaupt kein Wert aus dem Topic total mehr gesendet wenn ein Inverter in den Status available = 1 geht, egal wieviele noch online sind.

Obwohl sich die Werte hier noch fleißig ändern, wird nichts mehr davon über MQTT gesendet 😪

IMG_0915

knickohr commented 1 year ago

Siehe dazu auch Issue #929 , ähnliches Phänomen 😲

MiniOh commented 1 year ago

Ja, kann ich ebenfalls bestätigen.

@lumapu Was hat sich denn von der 0.6.10 HMS zur 0.7.3 bzgl. der Total AC und Yield Day Werte, welche per MQTT übermittelt werden, verändert? Vorher war es so, dass auch noch Werte übermittelt werden, wenn alle Inverter erreichbar waren, aber z.B. einer bereits nicht mehr produziert.

Mit der 0.7.3 werden, wenn nicht alle Inverter produzieren, auch keine Daten mehr übermittelt. Ist das gewollt, bzw. kannst du das nachvollzielen?

grafik

knickohr commented 1 year ago

Bis 0.6.15 war es noch OK. Ich würde sagen sogar bis 0.7.0.

Development Changes

0.7.3 - 2023-06-09

fix hidden SSID scan #983 improved NRF24 missing message on home screen #981 fix MqTT publishing only updated values #982 0.7.2 - 2023-06-08

fix HMS-800 and HMS-1000 assignments #981 make nrf enabled all the time for ESP8266 fix menu item active highlight for 'API' and 'Doku' fix MqTT totals issue #927, #980 reduce maximum number of inverters to 4 for ESP8266, increase to 16 for ESP32 0.7.1 - 2023-06-05

enabled power limit control for HMS / HMT devices changed NRF24 lib version back to 1.4.5 because of compile problems for EPS8266 0.7.0 - 2023-06-04

HMS / HMT support for ESP32 devices

lumapu commented 1 year ago

ich glaube der Fehler liegt einfach an der Abfrage, neu ist der Teil mit mSendTotals = false. Die Abfrage dafür müsste lauten isAvail()

https://github.com/lumapu/ahoy/blob/development03/src/publisher/pubMqttIvData.h#L122-L126

knickohr commented 1 year ago

Ahhh, verstehe 😲 Dann ist das erst durch Issue #982 aufgekommen. Klar, bis dahin wurden ja alle Daten raus gedonnert bis auch der letzte WR offline war.

Schnell fixen 😉

lumapu commented 1 year ago

oh da stand 'schnell fixen' - bin jetzt dran

knickohr commented 1 year ago

Noch nicht fertig ? 🤪

15 Minuten früher und ich hätte es noch gleich testen können 🙉🙈🙊

knickohr commented 1 year ago

Teilweise gefixed 😉 YieldDay bleibt immer noch hängen und ich schätze YieldTotal auch. Wahrscheinlich das gleiche Problem.

Ahhh, Stop, langsam 😲

Die Werte gehen sogar auf Null, ich denke wir haben das gefixed ? 🤔

IMG_0924

Die Inverter sind noch im Status 1 und auf dem Display erscheinen noch die Werte. Nein, ich habe keinen der 3 Optionen ausgewählt.

IMG_0925

knickohr commented 1 year ago

Jepp, jetzt kommt auch das YieldDay und YieldTotal wieder rüber 👍

Nur leider rechnet er die Summe noch falsch zusammen ☹️ Siehe Issue #929 . Er summiert nur die der noch online Inverter. Komischerweise macht es das WebGUI aber richtig 🫣

edit : Nein, Stop, alles zurück. Er sendet jetzt schon wieder eine Null bei YieldDay 😢

IMG_0934

Es ging, solange ein Inverter noch online war. Jetzt wo sie alle im Status 1 sind, geht der Wert wieder auf Null.

knickohr commented 1 year ago

Ich glaube wir machen hier zu, der P_AC funktioniert ja, alles weitere in den anderen Issues 😉