question

edgargw22 avatar image

Modbus: trying to read Serial in register 800

I'm trying to read register 800, Serial [char(6)] via Modbus. I'm not sure what this looks like, but I get "Serial: b'508c'" from the following code. Does this look right to you?

from pymodbus.constants import Defaults
from pymodbus.constants import Endian
from pymodbus.client.sync import ModbusTcpClient as ModbusClient
from pymodbus.payload import BinaryPayloadDecoder
Defaults.Timeout = 25
Defaults.Retries = 5
client = ModbusClient('10.186.47.212', port='502')
result = client.read_input_registers(800, 2)
decoder = BinaryPayloadDecoder.fromRegisters \
(result.registers, byteorder=Endian.Big)
Serial = decoder.decode_string(size=6)
print("Serial: ",Serial)

Thank you.

Raspberry PiModbus TCP
1 comment
2 |3000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 190.8 MiB each and 286.6 MiB total.

btw, what is this string supposed to look like?
0 Answers