Die Version 0.7.1 ist im Download-Bereich. Änderungen zur v0.5.5:
Für alle, die eine Auflösung zum Fall von chris_s erwarten: Es war eine Race-Condition, die wir uns aber nur halb erklären können, da die ScaleFactors sich zur Laufzeit nicht mehr ändern. Diese wurden nur mit dem gleichen Wert aktualisiert. Trotzdem liegt scheinbar beim Schreiben des Wertes kurzfristig der konfigurierte Wert am Baustein an und wird gezogen. (Sprich er schriebt wieder 0.01, aber während des Updates liesst der Baustein die konfigurierte 1 statt die vorher und nachher geschriebene 0.01). Ich vermute hier ein HS-Internes Thema. Keine Ahnung, wie man das meldet / mit einem Entwickler bespricht.
Abhilfe: Wenn ihr die Multiplikatoren vom Baustein verwendet und aus einem anderen Register vorher diesen lest: Fügt eine Warte-Sekunde ein oder mit Sleep500ms. Sonst wird das nix.
- Sleep500ms zusätzlich zum alten Sleep100ms
- Es wird bei ReconnectAfterEachRead mit einem Sleep erst die Verbindung geschlossen und dann gewartet
- Debug-Switch: Nur der Baustein mit Debug=1 wird im Debug angezeigt. (Profis setzen bei mehreren Bausteinen eine 1!)
- Debug zeigt die RAW-Werte vom Modbus, am Baustein liegen die nach Multiplikator an (und bei Strings werden NULL-bytes entfernt)
- Default-Intervall auf 10s erhöht (war 5s)
- Bugfix: Coil-Register können gelesen werden. Die sind in der Regel um 1bit-Werte boolisch abzulegen. Es gibt wohl auch Implementierungen mit 16bit pro Register (Flag-Register), es wird aber aktuell nur 1bit-coils unterstützt.
Für alle, die eine Auflösung zum Fall von chris_s erwarten: Es war eine Race-Condition, die wir uns aber nur halb erklären können, da die ScaleFactors sich zur Laufzeit nicht mehr ändern. Diese wurden nur mit dem gleichen Wert aktualisiert. Trotzdem liegt scheinbar beim Schreiben des Wertes kurzfristig der konfigurierte Wert am Baustein an und wird gezogen. (Sprich er schriebt wieder 0.01, aber während des Updates liesst der Baustein die konfigurierte 1 statt die vorher und nachher geschriebene 0.01). Ich vermute hier ein HS-Internes Thema. Keine Ahnung, wie man das meldet / mit einem Entwickler bespricht.
Abhilfe: Wenn ihr die Multiplikatoren vom Baustein verwendet und aus einem anderen Register vorher diesen lest: Fügt eine Warte-Sekunde ein oder mit Sleep500ms. Sonst wird das nix.
Kommentar