I need to send the following string: <ID 0><CLR><WIN 0 0 287 31><POS 0 0><LJ><BL N><CS 0><GRN><T>Testing</T>
This needs to be terminated by a carriage return $0D in ascii.
In the Wireshark capture, the characters are reverse byte order, and "Testing2" string does not work, but "Testing" does work. "Testing" is sent with the manufacturers tool running on the same computer as the gateway. "Testing2" is sent with the code above.
Does anyone have any great ideas about what is different in these packets? I see the CC 0D terminating string, but Ignition will not send the packet if I put in a chr(204) + chr(13) as the end of the string.
Just use a constant length. Ignition will null-pad.
Characters in jython are not bytes. They are unicode codepoints and will be encoded as bytes. I'm not sure what you need for this, perhaps a byte array.
If you cannot get this work, consider using my driver's system.opc.rawModbus() function.