Modbus RTU Failure

Hi, I´m using a RS485 -> USB Donlge ( DSD TECH SH-U11F) since 12/2021 with 4x Eastron SDM meter.
Until last month I used 3x SDM72v2 & 1xSDM230 with 9600 baud.

last month I replaced SDM230 to SDM630v2.

With SDM630v2 I get sometimes every minute, sometimes after 10 minutes Modbus failures:
mod

I tried 19200 and 9600 Baud - same problem.

Any ideas what´s the problem ?

The SDM230 and now SDM630v2 is the last meter on the modbus, but it is adress #3.
could this be the problem ? the order of the id doesn't matter to the physical order in bus?

I also tried connection delay 0,1,5ms; different queue delays.

the error always comes from the SDM630:

manual:

Modbus flow:

[
    {
        "id": "fe9c25b2603b8f3f",
        "type": "inject",
        "z": "112d382639b7cc28",
        "name": "alle 2s",
        "props": [
            {
                "p": "payload"
            }
        ],
        "repeat": "2",
        "crontab": "",
        "once": false,
        "onceDelay": "10",
        "topic": "",
        "payload": "true",
        "payloadType": "bool",
        "x": 180,
        "y": 60,
        "wires": [
            [
                "8a5957b7b2f7ec03"
            ]
        ]
    },
    {
        "id": "8a5957b7b2f7ec03",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0006 - 0035",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "1",
        "dataType": "InputRegister",
        "adr": "0006",
        "quantity": "30",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 100,
        "wires": [
            [
                "f20df6cb188e76a4"
            ],
            [
                "b267ca8a8b7f6dcb"
            ]
        ]
    },
    {
        "id": "b267ca8a8b7f6dcb",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0052 - 0053",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "1",
        "dataType": "InputRegister",
        "adr": "0052",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 160,
        "wires": [
            [
                "e58032fe783749bd"
            ],
            [
                "268716dd0510b280"
            ]
        ]
    },
    {
        "id": "268716dd0510b280",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0060 - 0063",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "1",
        "dataType": "InputRegister",
        "adr": "0060",
        "quantity": "4",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 220,
        "wires": [
            [
                "a4cf714520032bd0"
            ],
            [
                "c7d78de48b6972f0"
            ]
        ]
    },
    {
        "id": "c7d78de48b6972f0",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0070 - 0075",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "1",
        "dataType": "InputRegister",
        "adr": "0070",
        "quantity": "6",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 280,
        "wires": [
            [
                "2ae4692b297de57f"
            ],
            [
                "3a7729b29e4a9e67"
            ]
        ]
    },
    {
        "id": "3a7729b29e4a9e67",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0224 - 0225",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "1",
        "dataType": "InputRegister",
        "adr": "0224",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 340,
        "wires": [
            [
                "19f9bcad6ccfb90d"
            ],
            [
                "44049c9369ec07d6"
            ]
        ]
    },
    {
        "id": "b9a429ba348a3d94",
        "type": "comment",
        "z": "112d382639b7cc28",
        "name": "ID2 PV-Erzeugung",
        "info": "",
        "x": 210,
        "y": 520,
        "wires": []
    },
    {
        "id": "219a2f38e1290dc1",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0052 - 0053",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "0052",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 620,
        "wires": [
            [
                "b0d2e266bd07228e"
            ],
            [
                "bb8ffd892da9597a"
            ]
        ]
    },
    {
        "id": "bb8ffd892da9597a",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0060 - 0063",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "0060",
        "quantity": "4",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 680,
        "wires": [
            [
                "cddffc4f7547293c"
            ],
            [
                "ef109eceec75d7b3"
            ]
        ]
    },
    {
        "id": "44049c9369ec07d6",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0006 - 0035",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "0006",
        "quantity": "30",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 560,
        "wires": [
            [
                "74a43fce665f37f7"
            ],
            [
                "219a2f38e1290dc1"
            ]
        ]
    },
    {
        "id": "ef109eceec75d7b3",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0070 - 0075",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "0070",
        "quantity": "6",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 740,
        "wires": [
            [
                "dd2c48ebe743a6db"
            ],
            [
                "4de1cd7200f7a98d"
            ]
        ]
    },
    {
        "id": "4de1cd7200f7a98d",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0224 - 0225",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "0224",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 800,
        "wires": [
            [
                "faa4e44ff116b3b3"
            ],
            [
                "f8dd7823b25fa4ca"
            ]
        ]
    },
    {
        "id": "f8dd7823b25fa4ca",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0396 - 0397",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "0396",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 860,
        "wires": [
            [
                "f978b71e6bc35213"
            ],
            [
                "76ba54f6f0231b28"
            ]
        ]
    },
    {
        "id": "76ba54f6f0231b28",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "1280 - 1283",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "2",
        "dataType": "InputRegister",
        "adr": "1280",
        "quantity": "4",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 920,
        "wires": [
            [
                "dbec47e366616491"
            ],
            [
                "79b2e1e0a77fa7ed"
            ]
        ]
    },
    {
        "id": "79b2e1e0a77fa7ed",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0000 - 0035",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0000",
        "quantity": "36",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1160,
        "wires": [
            [
                "7cef9c2ca3205b9a"
            ],
            [
                "3132c8d4c29db3a8"
            ]
        ]
    },
    {
        "id": "3132c8d4c29db3a8",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0052 - 0053",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0052",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1220,
        "wires": [
            [
                "505753fe829e972c"
            ],
            [
                "53cef9e918cc1143"
            ]
        ]
    },
    {
        "id": "53cef9e918cc1143",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0060 - 0063",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0060",
        "quantity": "4",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1280,
        "wires": [
            [
                "7797ae9f85a1fb73"
            ],
            [
                "e7798e5bcc295ca1"
            ]
        ]
    },
    {
        "id": "e7798e5bcc295ca1",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0066 - 0067",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0066",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1340,
        "wires": [
            [
                "78559fb9acfabea7"
            ],
            [
                "2f888de6f12d3302"
            ]
        ]
    },
    {
        "id": "2f888de6f12d3302",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0070 - 0075",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0070",
        "quantity": "6",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1400,
        "wires": [
            [
                "6bc647f3eed0237d"
            ],
            [
                "96d78a453c1be222"
            ]
        ]
    },
    {
        "id": "96d78a453c1be222",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0200 - 0205",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0200",
        "quantity": "6",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1460,
        "wires": [
            [
                "3dcd3d822dcb0791"
            ],
            [
                "61864da55a579e34"
            ]
        ]
    },
    {
        "id": "61864da55a579e34",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0224 - 0225",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0224",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1520,
        "wires": [
            [
                "98d85cb9885c1629"
            ],
            [
                "a754c17f5e94cbc5"
            ]
        ]
    },
    {
        "id": "a754c17f5e94cbc5",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0234 - 0245",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0234",
        "quantity": "12",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1580,
        "wires": [
            [
                "e36e1371e8754686"
            ],
            [
                "3a602ae73dba50b9"
            ]
        ]
    },
    {
        "id": "3a602ae73dba50b9",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0342 - 0363",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "3",
        "dataType": "InputRegister",
        "adr": "0342",
        "quantity": "22",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1640,
        "wires": [
            [
                "bfe47de4f4b0124d"
            ],
            [
                "2844c4c58b7e4729"
            ]
        ]
    },
    {
        "id": "2844c4c58b7e4729",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0006 - 0035",
        "showStatusActivities": false,
        "showErrors": true,
        "showWarnings": true,
        "logIOActivities": false,
        "unitid": "4",
        "dataType": "InputRegister",
        "adr": "0006",
        "quantity": "30",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "delayOnStart": false,
        "startDelayTime": "",
        "x": 190,
        "y": 1820,
        "wires": [
            [
                "ac1cea62248307c0"
            ],
            [
                "15b9f2ce6c23e859"
            ]
        ]
    },
    {
        "id": "15b9f2ce6c23e859",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0052 - 0053",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "4",
        "dataType": "InputRegister",
        "adr": "0052",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 1880,
        "wires": [
            [
                "547a95a8fa761ce4"
            ],
            [
                "385f6eb8bf7fc2fb"
            ]
        ]
    },
    {
        "id": "c2e327bbc7e4e03d",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0224 - 0225",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "4",
        "dataType": "InputRegister",
        "adr": "0224",
        "quantity": "2",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 2060,
        "wires": [
            [
                "cf19175fce13241f"
            ],
            [
                "de1058be122d0f68"
            ]
        ]
    },
    {
        "id": "385f6eb8bf7fc2fb",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0060 - 0063",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "4",
        "dataType": "InputRegister",
        "adr": "0060",
        "quantity": "4",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 1940,
        "wires": [
            [
                "2f25dd3b2d0c1467"
            ],
            [
                "b37015d4bf776d74"
            ]
        ]
    },
    {
        "id": "b37015d4bf776d74",
        "type": "modbus-getter",
        "z": "112d382639b7cc28",
        "name": "0070 - 0075",
        "showStatusActivities": false,
        "showErrors": true,
        "logIOActivities": false,
        "unitid": "4",
        "dataType": "InputRegister",
        "adr": "0070",
        "quantity": "6",
        "server": "bb0f2e018eb97236",
        "useIOFile": false,
        "ioFile": "",
        "useIOForPayload": false,
        "emptyMsgOnFail": false,
        "keepMsgProperties": false,
        "x": 190,
        "y": 2000,
        "wires": [
            [
                "45c1c62ce6779015"
            ],
            [
                "c2e327bbc7e4e03d"
            ]
        ]
    },
    {
        "id": "bb0f2e018eb97236",
        "type": "modbus-client",
        "name": "SDM",
        "clienttype": "serial",
        "bufferCommands": true,
        "stateLogEnabled": false,
        "queueLogEnabled": false,
        "failureLogEnabled": false,
        "tcpHost": "127.0.0.1",
        "tcpPort": "502",
        "tcpType": "DEFAULT",
        "serialPort": "/dev/ttyUSB0",
        "serialType": "RTU-BUFFERD",
        "serialBaudrate": "9600",
        "serialDatabits": "8",
        "serialStopbits": "1",
        "serialParity": "none",
        "serialConnectionDelay": "5",
        "serialAsciiResponseStartDelimiter": "0x3A",
        "unit_id": 1,
        "commandDelay": 5,
        "clientTimeout": 3000,
        "reconnectOnTimeout": true,
        "reconnectTimeout": 5000,
        "parallelUnitIdsAllowed": false
    }
]

I don´t use resistors (120ohm) - the length is only 1-1,5m.
should I use ?

greetings

Hello Becker .. Hows it going ?
I read in section 3.3 (page 40) from the manual

In the Eastron 1000 and 2000, a silent interval of 60msec minimum is required in order to guarantee successful reception of the next request.

you mentioned that you tried connection delay 0,1,5ms; different queue delays.

Have you tried anything higher than 60ms as mentioned in the manual ?

1 Like

thank you, I actually didn't read that :roll_eyes:

with 60ms it´s very slow - for all meters I need 3s, but without errors.

I think I have to buy a 2nd RS485-USB, just for the SDM630v2.

I also will try a 120 Ohm resistor at the end, but I think it´s unnecessary.

Maybe the SDM72v2 don´t need 60ms. I runs over a year with 5ms..

good that you dont have errors any more .. and yes that would increase the overall time to request all registers but .. you could try merging (grouping) some of your requests to shave off some ms.

From the Modbus RTU protocol spec we know that the maximum request of registers you can make is 125 registers

so based on the screenshot you shared you can try to group / request more registers in each call
For ID3 instead of 9 requests you can drop it down to 3 (0 to 75 , 200 to 245, 342 to 363 etc)

the manual say max. 40 at once !

·Each request for data must be restricted to 40 parameters or less. Violating this requirement will impact
the performance of the instrument and may result in a response time in excess of the specification.

I bought a 2nd RS485 USB adapter :wink:

1 Like

Can you tell me about "connection delay" (ms) ?
what impact/influence does that have?

For Connection delay .. its not mentioned in the help tab but i think its the initial delay before the serial connection is established. which is different from the Queue delay (ms) which is the delay just before each modbus register request.

I dont think this would affect the issue you are experiencing since you get errors not with the first request but later after a few minutes.