ENQ (Enquiry) is ASCII code point 5 (0x05), Unicode U+0005. It is a C0 control character that a teleprinter station sent to ask "are you there?" — the remote end was expected to reply with ACK (0x06) or a station identity string. In IBM BSC, ENQ initiated the bidding phase to establish which station would control the half-duplex line before any data blocks flowed. Ctrl+E emits 0x05, and some terminal emulators like xterm still respond to it by returning a configurable answerback string — a vestige of that original polling role. UTF-8 encodes it as the single byte 0x05; Unicode classifies it as Cc (Control) with the alias ENQUIRY.
unsigned char enq = 0x05; // ENQunsigned char frame[] = { enq, 'I','D' }; // poll + payloadsize_t n = sizeof(frame); // bytes to write
ENQ (ASCII 5) is a 'who's there?' signal. In communication protocols, one device sends ENQ to ask the other end to identify itself or confirm it's ready. The expected reply is usually ACK or a station identification.
Mostly in legacy point-of-sale systems, industrial protocols, and serial devices. Some payment terminals still use ENQ/ACK handshaking. In mainstream software development, you're unlikely to encounter it unless interfacing with older hardware.
Conceptually, yes. ENQ asks 'are you there?' just like ICMP ping does at the network level. The difference is that ENQ operates at the data-link level in serial protocols, while ping operates at the network layer in IP networks.
The sender assumes the connection is down or the other device is offline. After a timeout (or a few retries), it typically reports a communication error. It's the serial protocol equivalent of a network timeout.