title: "client.read_holding_registers" Problem RTU pymodbus
body: <p>i am trying to read temperature values from a PLC using pymodbus but it's not working.</p>
  <h1>This is my code:</h1>
  <pre><code>from pymodbus.client.sync import ModbusSerialClient as ModbusClient
  import logging
  
  logging.basicConfig()
  log = logging.getLogger()
  log.setLevel(logging.DEBUG)
  
  client = ModbusClient(method='rtu', port='COM4',  baudrate=9600, timeout = 3, parity = 'N', stopbits=1,  bytesize=8)
  connection = client.connect()
  print(connection)
  
  #request = client.read_holding_registers(1,1,unit=1)
  request = client.read_holding_registers(40001, 1, unit=1)
  print(request)
  </code></pre>
  <p>I tried to use the address 40001 and 1, but nether worked. I keep receving this message:</p>
  <pre><code>True
  ModbusSerialClient(rtu baud[9600])
  DEBUG:pymodbus.transaction:Current transaction state - IDLE
  DEBUG:pymodbus.transaction:Running transaction 1
  DEBUG:pymodbus.transaction:SEND: 0x3 0x3 0x9c 0x41 0x0 0x1 0xfb 0xac
  DEBUG:pymodbus.client.sync:New Transaction state 'SENDING'
  DEBUG:pymodbus.transaction:Changing transaction state from 'SENDING' to 'WAITING FOR REPLY'
  DEBUG:pymodbus.transaction:Transaction failed. (Modbus Error: [Invalid Message] Incomplete message received, expected at least 2 bytes (0 received)) 
  DEBUG:pymodbus.framer.rtu_framer:Frame - [b''] not ready
  DEBUG:pymodbus.transaction:Getting transaction 3
  DEBUG:pymodbus.transaction:Changing transaction state from 'PROCESSING REPLY' to 'TRANSACTION_COMPLETE'
  Modbus Error: [Input/Output] Modbus Error: [Invalid Message] Incomplete message received, expected at least 2 bytes (0 received)
  </code></pre>