Weiterer Modbus Fehler?

Hallo, ich habe meine erste Modbusschnitstelle eingerichtet Modbus TCP auf einen Sungrow Wechselrichter. Zeitweise funktionierte das einwandfrei. im Moment kommen keine Daten mehr rein, der Debug auf der Splitterinstanz bleibt leer. Wenn ich den Clientsocket deaktiviere und mit einem Modbus-Tool die Adresse abfrage, erhalte ich Daten. Das Interface auf dem Wechselrichter hatte ich schon neu gestartet.
Wenn ich versuche z.B. den Interval zu verändern, erhalte ich folgenden Fehler. Ich hatte auch schon alles gelöscht inkl. dem Client Socket und wieder neu erstellt, ohne Erfolg. Ich bin auf dem aktuellen Kernel vom 24.11. 2be4de3bbefe.


Wäre noch zu erwähnen, dass mir Symcon dauernd abstürzt seit diese Probleme auftreten :frowning:

Dort ist aktuell nur bekannt, dass Streams in der neuen Visualisierung abstürze provozieren können.

Kannst du mir kurz erklären was ich einrichten, um den Fehler nachzustellen?

paresy

Hallo parsey, ist das aus dem Screenshot nicht alles ersichtlich? Ich versuche per Modbus-TCP mit einem Modbus-Device die beiden Adressen 5015 und 5600 alle 5s abzufragen. Das funktioniert eine Zeit lang, dann aktualisieren sich die Variablen plötzlich nicht mehr und vielleicht eine halbe Stunde später schmiert Symcon ab. Das waren gestern z.B. die letzten Einträge:

26.11.2023 19:42:44 | 19681 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Bildschirmschoner] = false
26.11.2023 19:42:44 | 13081 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Kioskmodus gesichert] = false
26.11.2023 19:42:44 | 10104 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Befindet sich im Standby-modus] = false
26.11.2023 19:42:44 | 14987 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Wartungsmodus] = false
26.11.2023 19:42:44 | 29883 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Kioskmodus] = false
26.11.2023 19:42:44 | 25956 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Start URL] = http://192.168.0.200:3777/#55145
26.11.2023 19:42:44 | 38429 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Aktueller Tab] = 0
26.11.2023 19:42:44 | 30410 | DEBUG | VariableManager | [EG\Gang EG\FullyKioskBrowser\Aktuelle Webseite] = http://192.168.0.200:3777/#55145
26.11.2023 19:42:44 | 49277 | DEBUG | ScriptEngine | Ausgeführt von PHP-Modul ~ Aktion: Timer: FKB_Update ~ Dauer: 56 ms
26.11.2023 19:42:44 | 55478 | DEBUG | ScriptEngine | Ausführung von PHP-Modul ~ Aktion: ReceiveData
26.11.2023 19:42:44 | 33138 | MESSAGE | VariableManager | [Aussen\Pool\Uni Pool\ADC] = 0.0800000000
26.11.2023 19:42:44 | 55478 | DEBUG | ScriptEngine | Ausgeführt von PHP-Modul ~ Aktion: ReceiveData ~ Dauer: 0 ms
mem: mem_deref: magic check failed 0x00000030 (0x7f58dc8f4710)
26.11.2023 19:42:45 | 57682 | DEBUG | ScriptEngine | Ausführung von PHP-Modul ~ Aktion: Timer: PHUE_UpdateState

Ich habe das „tote“ Modbus-Device gelöscht und neu angelegt mit identischen zwei Einträgen und nun erhalte ich wieder Daten.

1 „Gefällt mir“

Falls du herausfindest, wie man diese Fehlermeldung in Zukunft doch noch provoziert gibt uns gerne Bescheid! :slight_smile:

paresy

Hallo parsey, komischerweise ist es bis heute fehlerfrei gelaufen. Heute war der Elektriker da und ich musste den Wechselrichter ausschalten und Symcon runterfahren, da kurzfristig kein Strom. Nach dem Hochfahren erhalte ich nun wieder keine Werte mehr rein. Mit einem Modbustool funktioniert der Zugriff aber.
Der Client socket ist aktiv aber der debug im Modbus Gateway bleibt leer. Wenn ich nun wieder versuche im Modbusdevice z.B. den Interval von 5000 auf 5001 zu erhöhen, erhalte ich beim speichern wieder diesen Fehler:
image

Hi!

Könntest du mir deine settings.json an die support@symcon.de senden? Dann schaue ich mir an was schief läuft?

paresy

Hi parsey, sehr gerne, ist unterwegs. Vielen Dank fürs Anschauen!

Hi parsey, darf ich hier mal nachfragen, habt ihr etwas herausgefunden?

Das Problem ist übrigens zum nächsten Update korrigiert.

paresy

1 „Gefällt mir“

Hallo zusammen.

@paresy
Ich habe den gleichen Fehler nun bei meiner Deye WR Modbus Instanz.

Fehler beim Übernehmen der Änderungen
Ident darf nicht leer sein (Code: -32603)

Kurz zum Aufbau:
Waveshare RS485 to Ethernet → 2 Geräte auf dem BUS → ID2=SDM630 → ID1=Deye WR

Seit heute Nacht kommt vom Deye WR nichts mehr. Er wird auch gar nicht mehr abgefragt.
Der SDM630 auf dem gleichen BUS mit ID2 wird weiterhin abgefragt.

Wie kann ich diesen BUG denn manuell beheben? Denn ich habe geloggte Variablen und auch Ablaufpläne auf die Variablen und Funktionen des WR laufen. Daher wäre ein löschen der Modbus Instanz sehr ärgerlich und aufwendig für mich.

Gibt es einen Workaround?

Viele Grüße
Steve

Das passiert wenn du eigene Variablen unterhalb der Instanz erstellst.
Das wird aktuell noch nicht unterstützt.

paresy

@paresy
Danke für die schnelle Antwort.

Aber kann ich das auch irgendwie rückgängig machen?
Ich habe zum Beispiel 2 Ablaufpläne innerhalb der Instanz.

Kann ich die Variablen / Ablaufpläne aus der Instanz einfach rausschieben und es funktoniert dann wieder?

Grüße

OK, ich habe die „eigenen“ Sachen aus der Instanz raus geschoben.

Danach waren die Fehler weg und die Instanz wird auch wieder per Modbus abgefragt.
Es ist immer schön wenn es eine Lösung gibt. :slight_smile:

Vielen Dank

Gibt es bereits zum nächsten Update :slight_smile:

paresy

1 „Gefällt mir“

Hallo und ein frohes Fest,
ich habe seit 23.12. das gleiche Problem mit meinem Modbus Gerät. Hier frage ich die Daten meiner Dimplex Wärmepumpe ab und habe hierzu ein Gerät erstellt. Seit 23.12 werden die Daten aber nicht mehr aktualisiert. Vorher ging das problemlos. Eine Einzelabfrage der Werte funktioniert aber weiterhin. Nur das Modbusgerät leider nicht mehr. Das ist natürlich suboptimal…

Wenn ich versuche, das Abfrageintervall zu ändern kommt außerdem dann folgende Fehlermeldung:

Kennt jemand diese Fehlermeldung?

Schöne Grüße
Daniel

Ja, habe deinen Post passend dazu verschoben und die Lösung ist auch seit 3 Tagen online :slight_smile:
Fortsetzung der Diskussion von IP-Symcon 7.0.x (Beta):

Michael

Hallo Michael,
das ging ja schnell. Hatte tatsächlich ein Diagramm innerhalb der Instanz, jetzt verschoben, alles geht wieder…

Danke und noch ein paar besinnliche Weihnachtstage.

Grüße
Daniel

Bei mir ist nichts zusätzliches unterhalb der Instanz.

Auf symcon Beta gewechselt: (7.0-440) über (7.0-430), das Problem mit den Datenblöcken existiert weiterhin.

Wenn ich bei der ID 37237 einen Abfrageintervall > 0 MS eintrage, kommen Werte.
Bei 0 Milisekunden = über die Datenblöcke, erscheint nur 0.

Lief über viele Monate problemlos.

Weiteres bei V.7 Modbus Problem mit Datenblock Abfrage - #9 von juergen852

Problem erkannt! Es passiert bei einer Blockabfrage, wenn der Typ „Little Endian“ ist und somit die Bytes vertauscht werden.

Wir arbeiten an einem Fix!

paresy