Communication Flow
The device send ENQuery to host application program periodicaly (about every 6-8 second).
And the app program must be response this enquery with ACK (positive acknownledge)
If any package waiting in device memory (queue structured), the device send first packege after first ACK from application. If application program receive the data-package must be answer this package with DCK (data acknownledge) or NAK. (negative acknownledge)
DCK cause clearing package from device memory. If there are any problem in package host application can answer this query with NAK. In this case device send same package again while receiving DCK for package.
This steps repeated for all packages stored in device memory. When the data sequence complated (all data sended waiting in queue) device send ETB (End of Transmission Block) to appliaction. Application program must answer this ETB with ACK also.
If there are no call info, device immediatly send ETB after receiving ACK for ENQ
Apart from the packet and liveness protocol, the device can also occasionally send special purpose event packets. These may be line-status and connection-status information. These packets should not be answered.
Note 1.: All strings from pc must be terminated with new-line chars (CR+LF / #13#10)
Note 2.: ENQ decleration from device includes firmware version info also. Example : ENQv121045
Note 3.: When the new call occoured, device send a new ENQ to application program immediately without waiting for the timing.
Note 4 : You can analyze this protocol using any standart usb/hid protocol analyzer.