adccommunitymod (AutomationDirect) asked a question.

Stride Gateway Write Variables (Must match the number of bits - Modbus)

Created Date: January 31,2020

Created By: Garry

**** This post has been imported from our legacy forum. Information in this post may be outdated and links contained in the post may no longer work.****

I am currently using a Stride Gateway ( SGW-MQ1611-WF ) to a Solo Process Temperature Controller ( SL4896-RRE ). I have been able to communicate well and send information to the MQTT broker. (Mosquitto and MQHive) I have also been able to use clients (MQTTLens, MQTTBox, etc) to read and write. It is the writing back to the temperature controller that is my issue. If the data on MQTT is less then 4 digits in length, the value of the SV on the Solo will go to zero. Is there a method in the Stride Gateway to ensure that the data used to write variables on Modbus conform to the 16bit integer and write the 4 digits? Example: Data = 700 will result in putting 0 as the set value in the Solo. Data = 0700 will result in putting 70.0 as the set value in the Solo. The Client must write the four digits. I would like to see the Stride Gateway enforce the same number of bits required as selected. Is this possible? Sometimes when connecting to the MQTT networks they do not have the capability of ensuring 4 digits are sent. It would also be good to have the USB ports used for data logging and a simple FTP setup to get the information back to the network. Thank you, Garry


  • adccommunitymod (AutomationDirect)

    Created Date: January 31,2020

    Created by: Garry

    I am currently using a Stride Gateway ( SGW-MQ1611-WF ) to a Solo Process Temperature Controller ( SL4896-RRE ). I have been able to communicate well and send information to the MQTT broker. (Mosquitto and MQHive) I have also been able to use clients (MQTTLens, MQTTBox, etc) to read and write.

    It is the writing back to the temperature controller that is my issue. If the data on MQTT is less then 4 digits in length, the value of the SV on the Solo will go to zero.

    Is there a method in the Stride Gateway to ensure that the data used to write variables on Modbus conform to the 16bit integer and write the 4 digits?

    Example: Data = 700 will result in putting 0 as the set value in the Solo. Data = 0700 will result in putting 70.0 as the set value in the Solo. The Client must write the four digits.

    I would like to see the Stride Gateway enforce the same number of bits required as selected. Is this possible?

    Sometimes when connecting to the MQTT networks they do not have the capability of ensuring 4 digits are sent.

    It would also be good to have the USB ports used for data logging and a simple FTP setup to get the information back to the network.

    Thank you,

    Garry

    Expand Post
  • adccommunitymod (AutomationDirect)

    Created Date: February 04,2020

    Created by: ewitcher

    If the MQTT client publishes the data in JSON format with a name/value pair the MB write will be handled correctly.

    e.g. {“value”:”700”} or {“value”:”0700”} or { "value ": 700} will work correctly.

    Note: { "value ":0700} will not work because a leading zero in this case does not follow JSON number syntax.