Wiren BoardDokumentation
Dokumentation · Deutsch

Bekannte Probleme – WB-MRM2-mini

Revision 97180

ERRMODBUS001: Gerät antwortet auf Adresse 0xFD

Betroffene Geräte

WB-MR* mit Firmware vor 1.21.1.

Beschreibung

Fast-Modbus-Geräte können Geräte anderer Hersteller am selben Bus stören, wenn diese spezielle Befehle verwenden, die mit 0xFD beginnen.

Ursache und Einzelheiten

Fast Modbus reserviert 0xFD für spezielle Broadcast-Befehle. Beginnt eine Anfrage eines Drittanbieters mit 0xFD, verwendet aber einen Befehl außerhalb von Fast Modbus, antworten betroffene Wiren Board-Geräte mit MODBUS_ERR_ILLEGAL_FUNCTION und stören den anderen Datenaustausch. Der Bustreiber behandelt das Paket fälschlich als gewöhnlichen Modbus-Verkehr.

Übergangslösung

Betreiben Sie betroffene Wiren Board-Geräte und Fremdgeräte nicht gemeinsam an einem Bus.

Behebung

In Firmware 1.21.1 behoben.


ERRMODBUS002: Fehlerhafte Antwort auf Suchbefehl 0x46

Betroffene Geräte

WB-MR* mit Firmware vor 1.20.4.

Beschreibung

Fast Modbus verwendete ursprünglich Funktion 0x60. Diese wurde später auf 0x46 geändert, da 0x60 in einem reservierten Bereich lag. Aus Gründen der Abwärtskompatibilität wurden beide Anfragecodes beibehalten, das Gerät antwortete jedoch stets mit 0x60. Nach der Korrektur enthält die Antwort dieselbe Funktion wie die Anfrage: 0x46 oder 0x60.

Abhilfe

Aktualisieren Sie auf Firmware 1.20.4.

Behebung

In Firmware 1.20.4 behoben.


ERRMODBUS003: Unerwartetes Verhalten beim Schreiben ungültiger Werte in einige Register

Betroffene Geräte

WB-MR* mit Firmware vor 1.21.6.

Beschreibung

Wenn Werte im Bereich [256 ... 65535] in bestimmte Register geschrieben werden, werden die oberen 8 Bits verworfen und die Firmware erhält den Wert modulo 256. Beispielsweise wirkt das Schreiben von 257 genauso wie das Schreiben von 1.

Das Geräteadressregister (128) ist eines der betroffenen Register.

Alle Register arbeiten innerhalb ihrer dokumentierten Wertebereiche wie vorgesehen. Das Problem tritt beim Schreiben ungültiger Werte über 255 auf.

Abhilfe

Aktualisieren Sie auf Firmware 1.21.6.

Behebung

In Firmware 1.21.6 behoben.


ERRMODBUS004: Fehlerhafte Bitfeldantworten

Betroffene Geräte

WB-MR* mit Firmware vor 1.20.4.

Beschreibung

Antworten mit Bitfeldern, darunter Coil-/Diskreteingangs-Lesezugriffe und Ereignisverwaltung, konnten fehlerhafte höherwertige Bits enthalten.

Abhilfe

Aktualisieren Sie auf Firmware 1.20.4.

Behebung

In Firmware 1.20.4 behoben.


ERRMODBUS006: Antworten auf Anfragen mit falscher Parität

Betroffene Geräte

WB-MR* mit Firmware vor 1.21.4.

Beschreibung

Das Gerät beantwortete Anfragen mit falscher Parität, statt sie zu ignorieren.

Abhilfe

Aktualisieren Sie auf Firmware 1.21.4.

Behebung

In Firmware 1.21.4 behoben.


ERRMODBUS007: Ereignisverlust bei gleichzeitiger Übertragung zweier Geräte an einem Bus

Betroffene Geräte

WB-MR* mit Firmware vor 1.26.4.

Beschreibung

Wenn bei zwei Geräten am selben Bus gleichzeitig Ereignisse anstehen, kann eines ein unvollständiges Ereignispaket senden.

Ursache und Einzelheiten

Bei Fast Modbus fordert der Master Ereignisse an. Alle Geräte mit anstehenden Ereignissen nehmen an der Arbitrierung teil; der Gewinner antwortet, die anderen warten auf die nächste Anfrage.

Ein erzeugtes Ereignis wartet auf die Übertragung. Nachdem das Gerät seinen Frame auf den Bus gesendet hat, wird das Ereignis als gesendet markiert. Die nächste Bestätigung des Masters für dieses Gerät entfernt die gesendeten Ereignisse aus dessen Warteschlange. Dies ist der normale Bestätigungsmechanismus.

Der Fehler markierte Ereignisse zu früh als gesendet: bereits beim Empfang der Ereignisanfrage und vor Abschluss der Arbitrierung. Gewann das Gerät die Arbitrierung, funktionierte alles normal. Verlor es, wurde kein Paket gesendet, seine Ereignisse waren jedoch bereits als gesendet markiert. Eine spätere Bestätigung für dieses Gerät bestätigte auch diese ungesendeten Ereignisse und entfernte sie aus der Warteschlange, bevor sie den Master erreicht hatten.

Der Wert in der Weboberfläche wird nicht aktualisiert und es wird keine MQTT-Meldung veröffentlicht, obwohl die Geräteregister korrekt bleiben. Die Änderungsbenachrichtigung geht verloren.

Schließen beispielsweise Eingänge zweier Relaismodule am selben Bus gleichzeitig, kann ein Modul in der Weboberfläche korrekt aktualisiert werden, während das andere einige Ereignisse verliert und trotz tatsächlichem Schalten weiterhin im vorherigen Zustand erscheint.

Übergangslösung

Deaktivieren Sie vorübergehend den ereignisbasierten Betrieb für betroffene Register, indem Sie sporadic in der Gerätevorlage auf false setzen. Die Register werden dann im konfigurierten Intervall abgefragt.

Behebung

In Firmware 1.26.4 behoben.


ERRMODBUS008: Unerwartetes Verhalten bei langen Anfrageframes

Betroffene Geräte

WB-MR* mit Firmware vor 1.26.5.

Beschreibung

Der Empfang eines Frames mit mehr als 265 Byte, der maximalen Fast-Modbus-Framelänge, kann das Gerät blockieren und neu starten; in einigen Fällen können auch Einstellungen verloren gehen.

Ursache und Einzelheiten

Der Empfangsalgorithmus verarbeitete übergroße ungültige Anfragen nicht korrekt, wodurch ein Pufferüberlauf und die Beschädigung benachbarter Speicherbereiche entstanden. Das Gerät blockiert und wird vom Watchdog neu gestartet. Sehr große Frames über etwa 500 Byte können außerdem Einstellungen beschädigen, sodass das Gerät mit Standard-Kommunikationsparametern neu startet: 9600 8N2, Adresse 1.

Übergangslösung

  • Senden Sie keine Anfragen, die die Grenzen von Modbus RTU oder Fast Modbus überschreiten (265 Byte bei Fast Modbus).
  • Schließen Sie das Gerät nicht an einen Bus an, der Nicht-Modbus-Verkehr oder Meldungen mit mehr als 265 Byte führt.

Behebung

In Firmware 1.26.5 behoben.


ERRMODBUS009: Unerwartetes Verhalten beim Lesen nahe Adresse 0xFFFF im Modus für fortlaufendes Lesen

Betroffene Geräte

WB-MR* mit Firmware vor 1.26.5.

Beschreibung

Bei aktiviertem fortlaufendem Lesen kann ein Lesebereich, der Adresse 0xFFFF erreicht oder überschreitet, das Gerät blockieren und neu starten.

Ursache und Einzelheiten

Der Algorithmus zum fortlaufenden Lesen behandelte den Überlauf des 16-Bit-Registeradresszählers nicht korrekt. Das Lesen von 0xFFFF ließ den Zähler überlaufen und verursachte eine Endlosschleife mit anschließendem Watchdog-Reset.

Übergangslösung

Lesen Sie bei aktiviertem fortlaufendem Lesen keinen Bereich einschließlich 0xFFFF. Wiren Board-Geräte besitzen an dieser Adresse kein implementiertes Register.

Behebung

In Firmware 1.26.5 behoben.


ERRMODBUS010: Fehlerhafte Prüfung und Verarbeitung ungültiger Anfragen

Betroffene Geräte

WB-MR* mit Firmware vor 1.26.5.

Beschreibung

Das Gerät kann syntaktisch ungültige Anfragen akzeptieren oder falsch verarbeiten, einen falschen Ausnahmecode zurückgeben oder eine falsche Registeranzahlgrenze anwenden.

Ursache und Einzelheiten

Der Prüfalgorithmus behandelt folgende Fälle fehlerhaft:

1) Anfragen zum Lesen von null Registern werden mit einer Antwort ohne Nutzdaten akzeptiert, die nur Header und CRC enthält. Modbus verlangt Ausnahme 0x03 (ILLEGAL_DATA_VALUE).

2) Für alle Lese-/Schreibfunktionen gilt ein einheitlicher Grenzwert von 125 Registern; bei Überschreitung wird 0x02 (ILLEGAL_DATA_ADDRESS) zurückgegeben. Modbus sieht dagegen 2000 Bits für Bit-Lesezugriffe, 125 Register für Eingangs-/Holding-Lesezugriffe, 1968 Coils für Mehrfach-Coil-Schreibzugriffe und 123 Holding-Register für Mehrfachregister-Schreibzugriffe vor. Bei Überschreitung des jeweils geltenden Grenzwerts müsste 0x03 (ILLEGAL_DATA_VALUE) zurückgegeben werden.

3) Byte Count wird bei Mehrfach-Schreibzugriffen (0x0F und 0x10) nicht geprüft. Stimmen Byte Count und Registeranzahl nicht überein, müsste 0x03 (ILLEGAL_DATA_VALUE) zurückgegeben werden.

4) Einzel-Coil-Schreibzugriffe prüfen den Wert nicht und verwenden dessen höchstwertiges Bit. Modbus erlaubt nur 0x0000 und 0xFF00; bei allen anderen Werten müsste 0x03 (ILLEGAL_DATA_VALUE) zurückgegeben werden.

5) Strukturell ungültige Anfragen mit gültiger CRC, etwa überlange Anfragen, werden normal verarbeitet. Solche fehlerhaft aufgebauten Anfragen müssten stattdessen ignoriert werden.

6) Strukturell gültige, aber übergroße Frames mit 257–265 Byte werden verarbeitet. Standard-Modbus-Frames mit mehr als 256 Byte sind ungültig und müssten ignoriert werden.


Übergangslösung

Senden Sie nur strukturell korrekte Anfragen gemäß der Modbus-Spezifikation.

Behebung

In Firmware 1.26.5 behoben.


ERRMODBUS011: Fehlerhafte Verarbeitung ungültiger Anfragen zur Konfiguration von Fast-Modbus-Ereignissen

Betroffene Geräte

WB-MR* mit Firmware vor 1.26.5.

Beschreibung

Ein Ereigniskonfigurationsbefehl (EVENT_CTRL, cmd=0x46, sub_cmd=0x18) mit ungültigen Längenfeldern kann Ereignisbenachrichtigungen fehlerhaft konfigurieren und eine Antwort unvorhersehbarer Länge erzeugen.

Ursache und Einzelheiten

Der Handler zur Konfiguration von Fast-Modbus-Ereignissen prüfte die Größen- und internen Datenblocklängenfelder nicht. Ungültige Längen können dazu führen, dass Daten außerhalb des empfangenen Frames verarbeitet werden. Mögliche Folgen:

1) Fehlerhafte Ereignisbenachrichtigungseinstellungen, einschließlich unbeabsichtigter Änderungen von Ereignisprioritäten oder Masken.

2) Eine Ereigniskonfigurationsantwort mit unvorhersehbarer Länge.

Übergangslösung

Senden Sie nur gültige Fast-Modbus-Befehle gemäß dessen Spezifikation.

Behebung

In Firmware 1.26.5 behoben.


ERRMODBUS012: Gerät sendet keine Fast-Modbus-Ereignisse mehr

Betroffene Geräte

WB-MR* mit Firmware vor 1.27.0.

Beschreibung

Das Gerät sendet keine Fast-Modbus-Ereignisse mehr und meldet auf Ereignisanfragen (cmd=0x46, sub_cmd=0x10) dauerhaft, dass keine Ereignisse vorliegen (sub_cmd=0x12). Die Controls der Weboberfläche bleiben unverändert, während sich die Geräteregister weiterhin ändern.

Je häufiger sich ein ereignisfähiger Wert ändert, desto früher tritt das Problem auf. Bei Tests mit 1 ms Entprellung endete die Ereignisübertragung bei 200 Eingangsimpulsen pro Sekunde nach 23 Minuten und bei 100 Impulsen pro Sekunde nach mehreren Stunden. Auch bei seltenen Änderungen kann dies auftreten, ist aber deutlich unwahrscheinlicher. Der Treiber protokolliert keinen Fehler, da das Gerät gültig meldet, dass keine Ereignisse anstehen.

Lesen Sie zur Diagnose das Register direkt ohne Ereignisse, beispielsweise den Eingangsimpulszähler:

modbus_client_rpc -mrtu -pnone -s2 /dev/ttyRS485-1 -b115200 -a1 -r32 -t0x03

Steigt der Registerwert, während das Control in der Weboberfläche unverändert bleibt, liegt dieses Problem vor.

Ursache und Einzelheiten

Der Zähler ungesendeter Ereignisse wird von einem Interrupt-Handler und der Hauptschleife ohne korrekte Synchronisierung gemeinsam verwendet. Ein Interrupt während eines Lese-Änderungs-Schreibvorgangs in der Hauptschleife kann eine Zählererhöhung verlieren lassen. Diese lässt sich nicht wiederherstellen, da sie nur beim erstmaligen Einreihen eines Ereignisses erfolgt. Das Gerät glaubt dann, nichts senden zu müssen, obwohl Ereignisse in der Warteschlange liegen.

Der Zustand bleibt bis zum Neustart des Geräts bestehen. Ein weiteres Ereignis kann die angesammelte Warteschlange vorübergehend leeren und das Control einmal aktualisieren; die Abweichung tritt jedoch sofort wieder auf. Eine Installation ohne weitere Änderungen erscheint daher eingefroren.

Die Wahrscheinlichkeit steigt mit Ereignishäufigkeit und Buslast, da gleichzeitige Zugriffe wahrscheinlicher werden.

Übergangslösung

Ein Neustart des Geräts stellt die Ereignisübertragung bis zum erneuten Auftreten des Fehlers wieder her. Ein Neustart des Controllers oder von wb-mqtt-serial hilft nicht: Der Zustand befindet sich im Gerät und wird durch eine erneute Ereigniskonfiguration nicht zurückgesetzt.

Verringern Sie die Wahrscheinlichkeit, indem Sie die Eingangsentprellzeit erhöhen oder Ereignisse für häufig wechselnde Register deaktivieren. Lesen Sie bis zur Firmware-Aktualisierung die Werte direkt aus den Registern.

Behebung

In Firmware 1.27.0 behoben.


ERRMR01: Digitaleingangsregister enthalten nach dem Start 0 statt des tatsächlichen Zustands

Betroffene Geräte

WB-MR (außer WB-MRPS6) und WB-MWAC mit Firmware 1.9.x oder 1.10.x

Beschreibung

Beim Start werden Eingänge nicht gelesen; die Digitaleingangsregister enthalten auch für aktive Eingänge 0. Nach dem ersten Eingangswechsel sind sie korrekt.

Behebung

In 1.11.1 behoben.

Nach der Korrektur werden die Eingangszustände beim Start in die Register geschrieben. Ausgänge reagieren nicht: Sie bleiben aus oder stellen ihren gespeicherten Zustand wieder her, wenn Register 6 die Wiederherstellung aktiviert. Die Zuordnungsmatrix wird beim Start nicht verarbeitet, außer im Eingangsmodus 5 (Leckagesensoren mit 20-Minuten-Wiederholung). Andere Aktionen erfolgen bei späteren Eingangsänderungen.

ERRMR02: Safety Mode schaltet Relais unabhängig von der Modbus-Kommunikation aus

Betroffene Geräte

Alle WB-MR mit Firmware 1.15.0 oder 1.15.1

Beschreibung

Das Schreiben eines Werts ungleich null in Register 8 startet einen Timer, der nach Ablauf alle Relais ausschaltet. Empfangene Modbus-Pakete starten den Timer nicht neu.

Behebung

In 1.15.2 behoben.

Der Timer startet nun nach jedem empfangenen Modbus-Paket neu.

ERRMR03: Gerät blockiert nach etwa sechs Wochen Dauerbetrieb

Betroffene Geräte

Alle WB-MR mit Firmware 1.15.0, 1.15.1 oder 1.15.2

Beschreibung

Nach etwa sechs Wochen führt das Gerät keine Befehle mehr aus und aktualisiert keine Registerwerte mehr, antwortet jedoch weiterhin über Modbus.

Behebung

Behoben in 1.15.3

ERRMR04: Fehlerhafte Mikrocontroller-Temperatur- und Versorgungsspannungsmesswerte

Betroffene Geräte

GD32-basierte WB-MR-Hardware mit Firmware 1.16.0

Behebung

Behoben in 1.16.1

ERRMR05: Fehlerhafte Überwachung der Versorgungsspannung

Betroffene Geräte

Alle WB-MR mit Firmware 1.16.0

Beschreibung

Der ADC erfasst die Versorgungsspannung alle 100 ms. Ändert sich ein Relaiszustand unmittelbar vor einem Spannungsausfall, können sich die Kondensatoren entladen, bevor die nächste Abtastung den Ausfall erkennt. Der neue Zustand wird dann nicht gespeichert.

Behebung

Die Versorgungsspannung wird nun kontinuierlich gemessen.

Behoben in 1.16.1

ERRMR06: Frequenzmesswerte fallen zeitweise auf null

Betroffene Geräte

Alle WB-MR mit Firmware 1.15.0 bis einschließlich 1.16.2

Beschreibung

Im Frequenzmessmodus fallen Messwerte gelegentlich auf null, wenn die Eingangsfrequenz um 1 kHz liegt.

Behebung

Behoben in 1.16.3

ERRMR07: Instabile Modbus-Abfrage

Betroffene Geräte

Alle WB-MR mit Firmware bis einschließlich 1.16.2

Beschreibung

Das Gerät antwortet zeitweise nicht mehr auf Modbus-Befehle. Dies wurde bei 115200 Baud beobachtet.

Behebung

Behoben in 1.16.3

ERRMR08: Angezogene Relais fallen bei sinkender Modulversorgung unerwartet ab

Betroffene Geräte

Alle WB-MR und WB-MWAC mit Firmware bis einschließlich 1.17.1

Beschreibung

Beobachtete Fehler:

  1. Bei sinkender Versorgungsspannung, etwa beim Wechsel von einer 24-V-Hauptversorgung auf 12-V-Notversorgung, können angezogene Relais unerwartet abfallen.
  2. Bei Versorgung über Vout des Controllers und aktivierter Zustandswiederherstellung (Register 6 = 1) kann das Modul aufgrund eines Spannungseinbruchs neu starten.

Übergangslösung

  1. Verwenden Sie Haupt- und Notstromversorgung mit derselben Spannung.
  2. Verwenden Sie eine separate Versorgung mit ausreichender Leistung.

Behebung

Behoben in 1.17.2.

ERRMR09: Spitzen in Eingangsfrequenzmesswerten

Betroffene Geräte

Alle WB-MR und WB-MRWM2 mit Firmware bis einschließlich 1.17.4

Beschreibung

Fällt eine hohe Eingangsfrequenz unter 1 Hz, können Messwerte kurzzeitig wieder auf einen hohen Wert springen. Bei vollständig ausbleibenden Impulsen tritt dies nicht auf. Da WB-MRWM2 zur Leistungsmessung einen Spannungs-Frequenz-Wandler verwendet, kann das Trennen einer Last ähnlich kurzzeitige Leistungsmessspitzen auf den vorherigen Wert verursachen.

Behebung

Behoben in 1.17.5.

ERRMR10: WB-MRWM2 zählt keine Energie

Betroffene Geräte

Betrifft nur WB-MRWM2 mit Firmware 1.19.0 bis einschließlich 1.20.1; Einzelheiten: ERRMRWM0001

ERRMR11: Antworten auf alle erweiterten Anfragen an Adresse 0xFD

Betroffene Geräte

WB-MRWL3, WB-MR3LV/K(I), WB-MR6LV/K(I), WB-MR3LV/S, WB-MR6LV/S, WB-MRPS6, WB-MR6C v.2, WB-MR6C v.3, WB-MR6CU v.2 und WB-MRM2-mini mit Firmware vor 1.21.1.

Beschreibung

Adresse 0xFD wird für Fast-Modbus-Befehle mit Datenantwort sowie für andere Broadcast-Anfragen verwendet. Betroffene Geräte antworteten auf jedes Paket an 0xFD, auch auf Pakete ohne Fast-Modbus-Befehle.

Abhilfe

Aktualisieren Sie auf Firmware 1.21.1.

Behebung

In Firmware 1.21.1 behoben.


ERRMR12: Gerät blockiert, alle Anzeigen erlöschen

Beschreibung

Das Schalten mancher Schütze kann das Modul blockieren und alle Anzeigen erlöschen lassen. Aus- und Wiedereinschalten stellt die Funktion wieder her.

Betroffene Geräte

  • WB-MR3LV/S Charge v4.3A
  • WB-MR3LV/I Chargen v4.0I–v4.2A
  • WB-MR6LV/S Chargen v4.3B–v4.5C
  • WB-MR6LV/I Chargen v4.0M–v4.2C
  • WB-MR6C v.2 Chargen v3.6M–v3.7C
  • WB-MR6C v.3 Chargen v4.3H–v4.4C, außer v4.3H/1
  • WB-MR6CU v.2 Chargen v1.4A–v1.6A
  • WB-MRPS6/S Chargen v1.3B–v1.4A
  • WB-MRWL3 Chargen v1.4F–v1.5B

Ursache und Einzelheiten

Ein Latch-up im EEPROM zieht die Mikrocontroller-Versorgungsspannung herunter. Aus- und Wiedereinschalten der Platine beseitigt ihn. Die Wahrscheinlichkeit ist gering und hängt von mehreren Faktoren ab.

Übergangslösung

Betroffene Geräte mit diesem Fehler werden im Rahmen der Garantie ausgetauscht.

Korrektur

Spätere Chargen verwenden bzw. bestücken kein EEPROM mehr.

ERRMR13: Sicherungswiderstand der Hochspannungsversorgung des WB-MR6C v.3 fällt aus

Beschreibung

Sehr selten fällt der Sicherungswiderstand beim Betrieb mit der eingebauten 220-V-Versorgung aus.

Betroffene Geräte

Alle WB-MR6C v.3 vor Charge v4.4H.

Ursache und Einzelheiten

Ein Start der Versorgung nahe dem Scheitelpunkt der Netzsinusspannung kann in seltenen Fällen den Sicherungswiderstand beim Laden der internen Kapazität überlasten. Schwankungen der Spitzenleistungstoleranz können den Widerstand unterbrechen und damit die interne Versorgung trennen. Der Betrieb an einer externen Versorgung mit 9–28 V bleibt unbeeinträchtigt.

Übergangslösung

Das Relaismodul wird im Rahmen der Garantie ausgetauscht.

Behebung

Ab Charge v4.4H behoben.

ERRMR14: Versorgungsspannungsmesswert des WB-MR6C v.3 etwa 0.3 V zu niedrig

Beschreibung Die gemeldete Versorgungsspannung liegt etwa 0.3 V unter dem tatsächlichen Wert.

Betroffene Geräte

WB-MR6C v.3, Charge v4.4J/2.

Liste der Seriennummern

Ursache und Einzelheiten

Bei einigen Geräten wurde eine ungenutzte Schutzdiode der Versorgungsschaltung bei der Montage nicht überbrückt.

Übergangslösung

Das Relaismodul wird im Rahmen der Garantie ausgetauscht.

Behebung

Innerhalb der Charge v4.4J/2 behoben.

ERRMRM2_NC001: WB-MRM2-mini/NC erreicht die angegebene Kontaktisolationsspannung nicht

Beschreibung Beim WB-MRM2-mini/NC liegt der ungenutzte NO-Relaiskontakt sehr nahe an der NC-Leiterbahn und ist durch Lötstoppmaske mit 500 V Durchschlagspannung isoliert, unterhalb der angegebenen 1000 VAC.

Betroffene Geräte

Alle Geräte der Versionen 2.3–2.4K.

Ursache und Einzelheiten

Bei der Geräteentwicklung übersehen.

Übergangslösung

Das Relaismodul wird im Rahmen der Garantie ausgetauscht.

Behebung

In Chargen nach 2.4K behoben.