Thanks for the response.
I should perhaps be more clear on what I am looking at.
The serial ports of the Keyence PLC can be used to connect to external serial devices OR to system peripherals such as KV-D20 operator interface, hand-held programmer etc. These devices will operate in a transparent way without requiring ladder programmes from the programmer. Their command set also has to be more extensive requiring access to system functions. I remember a post in this forum where a command sequence was sent to the Keyence KV PLC to switch to a higher baud rate. This was in exactly the same format that I had observed and this operation cannot be carried out through the command set given in the manual, which by the way uses a pure ASCII protocol so that it can be accessed through a terminal emulator.
In continuation to my earlier post, as an example - the ST sends the following query packet to read 8 consecutive DM starting from 108 (all values in decimal):
ST: <ENQ(05)>
PLC: responds with <ACK(06)>
ST: <SOH(01)> 0 255 7 100 0 0 0 8 128 108 <checksum = 162>
PLC: responds with <ACK(06)>
ST: <EOT(04)>
PLC: responds with <ACK(06)>
Response packet from PLC to ST:
PLC: <ENQ>
ST: responds with <ACK>
PLC: <SOH> 0 255 22 100 0 0 0 0 8 <DM108H><DM108L> ... <DM115H><DM115L> <checksum>
ST: responds with <ACK>
PLC: <EOT>
ST: responds with <ACK>
I am looking for details of this 'native Keyence ASCII serial protocol' so that the simulator I write in VB can connect to KV-D20 HMI, handheld programmer, 3rd party HMIs supporting Keyence serial ASCII protocol etc. Another objective is to use these Keyence peripherals (at least the KV-D20 operator interface) in my microcontroller projects or as a neat display with a PC. The GE CCM protocol was somewhat similar but not what I was looking for.