Closed Waldo56 closed 1 year ago
Du hast einen HM-600 oder einen HM-800, Deine Angaben im Template widersprechen den Screenshots ? Hast Du das PowerLimit mit 100% permanent mal auf den Default gesetzt ?
Ich kann mich erinnern dass es ggf. bei auf 70% gedrosselten HM-300 sehr seltsame Zahlen herauskommen, da diese über das GridProfile entsprechend bereits auf 70% gedrosselt sind, d.h. bei 100% kommen irgendwelche Kommazahlen raus.
Aber das bei Dir sieht anders aus, kannst Du das Verhalten reproduzieren und ggf die Ausgabe der USB Serial Console beisteuern ? Dazu bitte ggf. die Option [x] Serial Debug unter System Config im Setup ankreuzen, speichern und neu booten.
Es interessieren vor allem das ActivePowerLimit 0x0B
und das SystemConfigPara 0x05
Kommando
Werde versuchen es zu reproduzieren. Wir haben 2xHM800. Der 2. HM800 (der diesen Wert zeigt) ist aber ca. 50m weit weg.
I have the same issue with my HM-1500s. And interesting enough: I get the same wrong value 202.1%, so something seems to be special about it. I get the wrong value only sometimes, with no clear pattern when. I did not set a production limit.
Gleiches Verhalten bei mir (die 202.1% bei einem HM-800). SW Version 0.5.28
It is probably a wrong attribution of responses from the inverter on some of our commands. We ask for A and later for B and only then receive the response for A (or the other way round), which is eventually yielding the wrong value. We need some more evidence based on log files where the above commands are logged in. Make sure you enable [x] Serial Debug under Setup > System Config. Thanks!
Will do.
@Waldo56, these are the three common 0x15 DeviceInfo
Sub Commands that we execute in row after each other:
I: (#1) enqueuedCmd: 11 <-- SubCommand 0x0b RealTimeRunData_Debug
I: (#1) enqueuedCmd: 1 <-- SubCommand 0x01 InverterDevInform_All
I: (#1) enqueuedCmd: 5 <-- SubCommand 0x05 SystemConfigPara
@lumapu could we add the above SubCommand comments / explanation to the enqueuedCmd
Informational message in order to make it more readable ?
They all use the sendTimePacket Method to send the command to the inverter together with the current timestamp.
I: TX 27B Ch40 |>15<75 21 23 45 87 65 43 21 80>0B<00 63 7F 71 26 00 00 00 00 00 00 00 00 14 5E EF
...
I: TX 27B Ch61 |>15<75 21 23 45 87 65 43 21 80>01<00 63 7F 71 4A 00 00 00 00 00 00 00 00 1C A9 76
...
I: TX 27B Ch75 |>15<75 21 23 45 87 65 43 21 80>05<00 63 7F 71 68 00 00 00 00 00 00 00 00 79 2C B0
We cannot see from an individual response for which of the SubCommands the response by the inverter was actually meant for.
We only see that it is a response to one of the 0x15
DeviceInfo Commands (REQ_ARW_DAT_ALL
) we sent,
as they all contain the answer code 0x95
which is the complement of the original query DeviceInfo command (REQ_ARW_DAT_ALL | 0x80
). E.g.:
I: TX 27B Ch23 |>15<75 21 23 45 87 65 43 21 80>05<00 63 7F 71 68 00 00 00 00 00 00 00 00 79 2C B0
I: RX 27B Ch61 |>95<75 21 23 45 75 21 23 45 81 00 01 03 E8 00 00 03 E8 FF FF FF FF 01 68 7D F8 F9
I: procPyld: cmd: 5
I: procPyld: txid: 0x95
I: Payload (14): 00 01 03 E8 00 00 03 E8 FF FF FF FF 01 68
Hallo, ich hab bei mir ebenfalls den Effekt das nach dem Updates eines meiner Ahoy's von 0.5.17 auf 0.5.41 das InverterLimit mit 202,1 % angzeigt wird. Ich hab da selbst noch nie irgendeinen Wert selbst eingegeben. Der andere Ahoy noch mit der FW Version 0.5.17 zeigt 100% richtig an. Ich hab einen HM600 in Betrieb, die beiden Ahoy sind ESP8266 / D1 Wemos Mini. Ich les hier mal mit um zu sehen wie das ggf gelöst wird. VG Michael
@mroenne2022 habt ihr da zwei DTUs parallel laufen, das verstärkt ggf. die Problematik dass die DTU nicht weiß auf welches Kommando der WR gerade antwortet.
Hallo stefan123t, nein nein .... immer nur EINE DTU zur Zeit in Betrieb, NIE zur gleichen Zeit. Ich hab mir lediglich mehrere gebaut , z.T. mit verschiedener HW (ESP32 WROOM und ESP8266 D1 Mini). Einmal weil ich Lust hatte dazu, um mal zu testen oder auch um Ersatz zu haben falls mal etwas nach Update nicht mehr läuft ! Heute hab ich die mit der 0.5.41er FW am laufen und hab das Limit über Serial Console einfach mal auf 100% gesetzt, nun ist die Anzeige im Ahoy auch in Ordnung und zeigt die 100% richtig an. Ich hatte den Pkt gestern erst vermisst, dann aber gelesen das er ab 0.5.28 zur Serial Console gewandert ist :-) Im übrigen ist das eine tolle Sache die ihr hier bei diesem Projekt leistet, Vielen Dank dafür ! Gruß Michael R.
Ich habe nur eine DTU.
Ich habe auch nur eine DTU. Was ich aber nicht ausschliessen kann, ist, dass ich eine Web Session via Rechner und eine Web Session via Phone Richtung Ahoy offen hatte. Kann es sein, dass die Refreshs der Beiden (Phone & Rechner) irgendwie eine Race condition innerhalb Ahoy erzeugen?
@Waldo56 und @mroenne2022 Das aktuelle Power Limit wird m.W. über das Kommando 0x05 SystemConfigPara abgefragt (siehe > Traces). Das wird aber nur beim Starten des ESP einmal oder nach dem Setzen des Power Limits enqueued und abgefragt.
Um Eure Problem näher zu einzugrenzen bräuchten wir die Antworten auf das SystemConfigPara Kommando:
11:25:37.358 > TX Channel: 61 --> >15< <71 60 35 46> <78 56 34 12> 80 >05< 00 63 30 1E 8B 00 00 00 00 00 00 00 00 16 A7 8D
11:25:37.416 > RX >95< <71 60 35 46> <71 60 35 46> >81< 00 01 03 D4 00 00 <03 E8> FF FF FF FF 01 68 2D 38 55
Hier wird das MainCmd 0x15
mit SubCmd 0x05
an den WR <71 60 35 46>
von der DTU <78 56 34 12>
per TX gesendet.
Dann kommt die Antwort vom WR an die DTU per RX als 0x95
MainCmd mit einem Single Frame bzw. dem letzten Antwort Paket Nummer 0x81
.
Hier steht das aktuelle Power Limit in Prozent 0x03 E8
= 1000 das bedeutet als Zahl mit einer fixen Nachkommastelle: 100.0
%
Hallo Stefan, ich muss mal sehen ob der Effekt morgen überhaupt noch existiert. Ich hatte es ja nur nach dem Update auf 0.5.41 (von 0.5.17) bei der einen DTU zufällig gesehen, heute hab ich den Wert dann einfach im Menue Serial Console auf 100% gesetzt, seit dem wird er auch richtig angezeigt. Morgen am Tage werd ich sehen wie es aussieht, tritt das wieder auf werde ich versuchen die Outputs der Kommandos zu bekommen.
Moin @stefan123t , der Effekt mit der Limit Anzeige über 200% tritt nun nicht mehr auf. Kam nur direkt nach dem FW Update, seit ich den Wert dann in der Serial Console 1mal auf 100 gesetzt hab ist alles OK , auch heute morgen nachdem der WR wieder erwacht ist alles OK. Für mich ist das in Ordnung , läuft alles prima !! VG Michael
Hatte es heute wieder bei dem HM800, der zirka 40m weit von der DTU entfernt ist. Diesmal auch mit last alarm = unknown. Der HW Watchdog der DTU spricht etwa einmal pro Tag an. Werde jetzt mal den HM800 auf 100% konfigurieren und versuchen vom log einen Screenshot zu machen. Da es immer der gleiche Wert ist habe ich schon an ein Muster gedacht -> 2021 -> 07E5h.
Oh shit 🤔 40m ist tatsächlich ne Menge. Bei mir ist der WR gerade mal 4-5m von der DTU entfernt, eine Ü-Ton Steinmauer dazwischen, aber die Verbindung klappt sehr gut. Läuft auch jetzt seit gestern problemlos mit der richtigen Limit-Anzeige.
Bei mir war zwischen den falschen Anzeigen zirka eine Woche mit richtigen Werten. Nicht zu früh freuen.😀
Ok 😃 Ich werde es sowieso weiterhin beobachten, ggf melde ich mich hier wieder wenn es tatsächlich nochmal auftritt. Wie schon gesagt - nach dem Update auf 0.5.41 trat es dauerhaft auf, seit dem ich den Wert dann unter Serial Console einmal auf 100% gesetzt hab ist es in Ordnung. Das ganze ist aber erst wenige Tage her alles.
Bei mir kommt auch immer wieder nach einiger Zeit die 202.1%. Firmwareversion ist egal. Bin derzeit auf der 0.5.41 und habe es gerade wieder. Neusetzen hilft, aber wer weiß für wie lange...
Ich hab das mit der 0.5.17 nie gehabt, nur einmal nach Update auf 0.5.41 . Danach einmal neu gesetzt und bisher nicht wieder aufgetreten, ich beobachte es weiter ob es wieder auftritt.
We need some more evidence based on log files where the above 0x05 SystemConfigPara commands are logged in.
Make sure you enable [x] Serial Debug under Setup > System Config. Thanks!
@stefan123t : Sobald der Fall mit den 201% bei mir tasächlich nochmal auftritt werd ich versuchen die Outputs zu bekommen, oder ist das auch jetzt noch aussagekräftig wenn die Anzeige richtig 100% anzeigt. Falls JA , werd ich morgen mal Debug einschalten und gucken was kommt.
ich sehe das auch an und zu, konnte aber noch keine Payload/ Debug print dazu einfangen. Bei mir sind es dann 202%
Ich kann mir vorstellen, dass es daran liegt, dass wir zwei Kommandos mit gleich langer Payload bekommen (FW Version und das Power-Limit). Als Abhilfe können wir die Reihenfolge der enqueue commands ändern, sodass zwischendrin eine längere Payload erwartet wird.
Platform
ESP8266
Model name
No response
nRF24L01+ Module
No response
Antenna
circuit board
Power Stabilization
~100uF Elko
Connection diagram
Connection diagram I used:
Note: [*] GND Pin 1 has a square mark on the nRF24L01+ module
Connection picture
Version
0.5.41
Github Hash
dec333f
Build & Flash Method
ESP Tools (flash)
Desktop
Windows
Setup
Device Host Name
WiFi
Inverter
Inverter 0
General
NTP Server
MQTT
System Config
Pinout (Wemos)
Radio (NRF24L01+)
Serial Console
Debug Serial Log output
No response
Error description
Manchmal wird beim eingestellten Inverter Limit mehr wie 100% angezeigt. Ich vermute es passiert durch Übertragungsfehler bei der Kommunikation. Sind die empfangenen Daten nicht auch mit CRC geschützt? Vielleicht wäre ein Wertebereichscheck hilfreich. Sollte der Wert größer als 100% sein dann vielleicht n/a anzeigen.