Secure context

This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.

The readable read-only property of the SerialPort interface returns a ReadableStream for receiving data from the device connected to the port. Chunks read from this stream are instances of Uint8Array. This property is non-null as long as the port is open and has not encountered a fatal error.


var readableStream = SerialPort.readable;


A ReadableStream.


The following example shows how to read data from a port. The outer loop handles non-fatal errors, creating a new reader until a fatal error is encountered and readable becomes null.

while (port.readable) {
  const reader = port.readable.getReader();
  try {
    while (true) {
      const { value, done } = await;
      if (done) {
        // |reader| has been canceled.
      // Do something with |value|...
  } catch (error) {
    // Handle |error|...
  } finally {


Specification Status Comment
Web Serial API
The definition of 'SerialPort.readable' in that specification.
Draft Initial definition.

Browser compatibility

BCD tables only load in the browser