from pymodbus.client import ModbusTcpClient import struct MODBUS_IP="10.0.0.40" client=ModbusTcpClient(MODBUS_IP, port=502) client.connect() try: rr = client.read_input_registers(30, count=3, slave=1) print("Raw 30..32:", rr.registers) def as_int16(x): return struct.unpack(">h", struct.pack(">H", x))[0] for i, raw in enumerate(rr.registers, start=30): print(i, "raw", raw, "int16", as_int16(raw), "scaled", as_int16(raw)/10.0) finally: client.close()