Modbus RTU issues

Guys,

I have a 3 phase energy meter - ACREL DTSD1352 /ADL3000 - it is configured as 9600,N,8,1 on Address 1.

I have a Linux (Ubuntu 18.04) on a laptop.

I have a USB/RS485 dongle - this is installed and presenting itself as /dev/ttyUSB0

From the commandline i can use a program mbmd - https://github.com/volkszaehler/mbmd that is designed to query energy monitors etc and works well.

My monitor is not natively supported - however using a development feature i have been able to succesfully query the meter and return information - some DWORD, other WORD registers etc - all seems fine.

I am now on the same machine trying to use NR to query this unit - i have tried a number of modbus modules - i currently have both of these installed

And have done the following test flow

[{"id":"942f710f.4b0c1","type":"debug","z":"76274d8e.fd5214","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":610,"y":120,"wires":[]},{"id":"d81a7895.7e6cc8","type":"modbus-read","z":"76274d8e.fd5214","name":"test","topic":"","showStatusActivities":false,"logIOActivities":false,"showErrors":false,"unitid":"1","dataType":"InputRegister","adr":"0","quantity":"2","rate":"10","rateUnit":"s","delayOnStart":false,"startDelayTime":"","server":"425ee67b.5cd4c8","useIOFile":false,"ioFile":"","useIOForPayload":false,"emptyMsgOnFail":false,"x":310,"y":120,"wires":[["942f710f.4b0c1"],["953ca3d7.4b557"]]},{"id":"953ca3d7.4b557","type":"debug","z":"76274d8e.fd5214","name":"","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"payload","targetType":"msg","statusVal":"","statusType":"auto","x":610,"y":180,"wires":[]},{"id":"425ee67b.5cd4c8","type":"modbus-client","z":"","name":"ADL3000","clienttype":"simpleser","bufferCommands":true,"stateLogEnabled":true,"queueLogEnabled":true,"tcpHost":"127.0.0.1","tcpPort":"502","tcpType":"DEFAULT","serialPort":"/dev/ttyUSB0","serialType":"RTU-BUFFERD","serialBaudrate":"9600","serialDatabits":"8","serialStopbits":"1","serialParity":"none","serialConnectionDelay":"100","unit_id":"1","commandDelay":"1000","clientTimeout":"1000","reconnectOnTimeout":true,"reconnectTimeout":"5000","parallelUnitIdsAllowed":false}]

But am getting absolutely nothing back in the debug window - i have tried a number of different registers and all of the options that the nodes supply

I have tried NR running as a normal user and also as root - and this has made not difference

Any ideas how i can troubleshoot this one ?

Craig

A couple of things here

Change the logging option in NR to debug so you can get better info.

Turns out to be a Linux permissions issue on the USB/Serial driver - apparently the only group with access is the Dialout group - so whichever user you use to run NR, should be given permissions/membership to that group.

Craig

1 Like

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.