SerialHandshake SerialHandshake SerialHandshake SerialHandshake SerialHandshake Enum


Defines values for hardware and software flow control protocols used in serial communication. The values are used by Handshake property on the SerialDevice object.

public : enum class SerialHandshake
enum class winrt::Windows::Devices::SerialCommunication::SerialHandshake : int32_t
public enum SerialHandshake
Public Enum SerialHandshake
var value = Windows.Devices.SerialCommunication.SerialHandshake.none;

Windows 10 requirements

Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)


None None None None None 0

No protocol is used for the handshake.

RequestToSend RequestToSend RequestToSend RequestToSend RequestToSend 1

When the port is receiving data and if the read buffer is full, the Request-to-Send (RTS) line is set to false. When buffer is available, the line is set to true. When the serial port is transmitting data, CTS line is set to false and the port does not send data until there is room in the write buffer.

RequestToSendXOnXOff RequestToSendXOnXOff RequestToSendXOnXOff RequestToSendXOnXOff RequestToSendXOnXOff 3

Both RequestToSend and XOnXOff controls are used for flow control.

XOnXOff XOnXOff XOnXOff XOnXOff XOnXOff 2

The serial port sends an Xoff control to inform the sender to stop sending data. When ready, the port sends an Xon control to inform he sender that the port is now ready to receive data.