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
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
enum class SerialHandshake
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
public enum SerialHandshake
var value = Windows.Devices.SerialCommunication.SerialHandshake.none
Public Enum SerialHandshake

Windows requirements

Device family
Windows 10 (introduced in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v1.0)


None 0

No protocol is used for the handshake.

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 3

Both RequestToSend and XOnXOff controls are used for flow control.

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.

Applies to