Writing to a Watlow Temperature Controller using Modbus


Recommended Posts


I am having some trouble writing to a 32 bit register on my Watlow SD6 temperature controller. I can read the register using the Read Holding U32 I/O command, but when I try and write to the same register, the controller does not update. The controller responds saying that it got my data, but the front panel display does not change indicating the register did not change.

I can communicate with the controller using manufactures software and the register and front panel does change. Page 3 of the attachment does have an example write command for a 32 bit packet, but it differs from what DaQfactory sends. The actual data seems to be switched:

Watlow Example: 01160027000204001918\208\23379

Daqfactory Example: 0116002700020418\2080019\24924

Is the Watlow example bad?

Also, I have to read starting at register 28, vice 27 in their example, to read the 32 bit value.

Any help would be greatly appreciated.

Thank you



Link to comment
Share on other sites

Jacob and I talked on the phone and here is the resolution for everyone else:

1) the watlow documentation had a typo in the output sample. They had the CRC values reversed. If you sent the packet they specified, the device didn't respond, but if you let DF do it, the device responded.

2) the watlow requires U32 R Word and Jacob was using just U32. The device would respond using just U32, but since the value was out of range, it didn't actually change the output. Also, he got lucky on the inputs. By subtracting one, he essentially was reversing the words, but it only worked because the high word was the same in 20 and 22.

Link to comment
Share on other sites


This topic is now archived and is closed to further replies.