Error Reading Modbus tcp

Hello everyone i'm trying to read Modbus wirh fc03 holding input register, everytime i get "Error: Modbus exception 3: Illegal data value (value cannot be written to this register)" i know that sounds like i'm trying to write in a read only address, but i'm using de read Modbus node, somebody help me please!!

Input registers (read only) are a different memory area than Holding registers (read/write). FC03 is "read holding registers.
Can you provide some detailed informations in order to reproduce your issue? Maybe paste your code?

Thanks For answering
this is the code looks like, the configuration of the node is this
and the error that apper is this one
i use Modscan 64 to connect to modbus tcp/ip software to connect to the same device and see if i can see the data, and it works, but in node red i cant

like you see in the image i can connect to holding register and see the data in addres 2700 and 2701, if i try to do this in to node red i cant, i dont know if holding register and FC 03 Read holding register are not the same thing. please help me!!

What node-red-contrib-modbus version and node-red versione do you have?
Have you tried reading different register addresses?
What device is your modbus server?

I am a bit confused about unit ID = 15, can you set it to 1 in your device (15 should be ok though)? Check also that you're register address isn't expressed as hex, that node expects it as decimal i think.

Out of interest, what do you get if you try reading

  • Quantity 1 from 2700
  • Quantity 1 from 2701
  • Quantity 1 from 2702

in other register in other addresses i get the result, but in this adreess i cant read, it is a float 32 bits, i read the register in OPC and then imported to node red to use the data but it looks very weird that i cant read it with modbus node

i get the same error

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