Honywell HC900 PLC Tag Writing

I have a particular issue writing tags to an HC900 Honeywell Processor. Interestingly enough, I can read the tags but get an error “Bad; Unspecified” when trying to write to the same tags. The tags have Read/Write access on both Ignition and the Honeywell PLC. Any thoughts are appreciated. Thank you.

What kind of connection is this (what driver)?

Are there errors in the gateway logs when this happens?

Hi, Kevin. I am using the Modbus TCP Ethernet connection coupled with the Floating Point Little Endian with byte-swapped Double Register Format.

These are the errors in the gateway.

Well, assuming HRF45106 is the correct address (if you’re reading data and it’s what you expect, it probably is), there’s nothing more you can do to troubleshoot on the Ignition side.

The controller is returning that exception code in response to the write request. What it really means would be specific to that controller…

I understand I’m responding to quite an old post here but I have done some extensive testing with the HC900 PLC and have found that I CAN read/write with modscan32 software but I cannot write successfully Ignitions Modbus TCP driver or even Kepware’s Modbus TCP driver…

The problem here is that HC900 does not use the newest standards of modbus.

They are using much older modbus functions codes than the latest standards that have been developed in past years.

I discovered this using WireShark monitoring the packets back/forth using modscan32 and comparing to that of Ignition and Kepware…

With Ignitions/kepware modbus TCP driver FUNC 16 is sent and you get malformed packets

I then found that Kepware sells a dedicated HC900 driver that takes all of this into consideration.

When using this or modscan32 FUNC 20 is used and the write goes through.

So the only solution i see here is to use a 3rd party OPC server with a dedicated driver. Hopefully this helps someone out there.

1 Like

I was able to read/write tags using the HRF designation without the auto-addressing, once I had the mapping correct, I switched the float to “read only”. I have attached my advanced setup, hope it helps. You can also monitor the tags with the SE Modbus tool to verify your tags.
Modbus test tool

Could have been the HRF45106 address, did you try [DeviceName]HRF5106 address?