Temperature Sensor & Gateway MODBUS Errors

I have a Temperature Sensor & Gateway I am trying to use MODBUS for communications.
I am able to get Node 0 Temperature, State, Alarm Down, Node 0 Threshold High Warning, Threshold High Down.
But when I request Threshold Low Down I get a configuration error which also causes the other 3 Threshold values to go into error also.
When I put CONNECTION on scan it is BAD and causes VALUE to go BAD Configuration Error.
When I put TYPE on scan it is BAD and causes VALUE to go BAD also.
When I put ALARM WARNING on scan it is bad and causes STATE and DOWN ALARM to go BAD Configuration error.

As long as I don't put Type, Warning, Low Alarm and Connection I read all other values.

Are the registers in the MODUS MANUAL wrong?

Length = 8, Floating Node 0 Threshold High Down 40200-40201
Length = 8, Floating Node 0 Threshold High Warning 40202-40203
Length = 8, Floating Node 0 Threshold Low Down 40204-40205
Length = 8, Floating Node 0 Threshold Low Warning 40206-40207 - This one causes the other 3 to go BAD.
Also this shows a Length of 8 BYTES but only 2 registers which would be 4 BYTES?


  • edited January 16

    What modbus software/freeware are you using to poll modbus?
  • I'm using Wonderware DASMBTCP. I use this software to connect to Schneider Power Monitor without any issues.
  • It looks like register 40207 is bad or does not exist. I can retrive a value from 40206 as a single register. But if I try to read 40207 as a single register I get bad quality.
    Looks like a but in the Gateway software.
  • @SBrock

    I am not that familiar using DASMBTCP tool. But as per my experience polling Serverscheck thru Modbus.
    The one in their manual uses modbus poll and the length of 8 is used as a range starting from the 40200-40201 holding register. So using 8 as a length, would give you all the values from 40200-40207 if you start your polling from 40200.

    But if you will pick each individual register, you may try to use these values

    Value = length (2), floating
    State = length (1), unsigned
    Type = length (1), unsigned
    Connection = length (1), unsigned
    Alarm Down = length (1), unsigned
    Alarm Warning = length (1), unsigned

    Threshold High Down = length (2), floating
    Threshold High Warning = length (2), floating
    Threshold Low Down = length (2), floating
    Threshold Low Warning = length (2), floating

    Hope this helps.

Leave a Comment