Class Device

Serial device. Assumes data is sent with new line characters (\r\n) between messages.

import { Serial } from 'https://unpkg.com/ixfx/dist/io.js'
const s = new Serial.Device();
s.addEventListener(`change`, evt => {
console.log(`State change ${evt.priorState} -> ${evt.newState}`);
if (evt.newState === `connected`) {
// Do something when connected...
}
});

// In a UI event handler...
s.connect();

Reading incoming data:

// Parse incoming data as JSON
s.addEventListener(`data`, evt => {
try {
const o = JSON.parse(evt.data);
// If we get this far, JSON is legit
} catch (ex) {
}
});

Writing to the microcontroller

s.write(JSON.stringify({msg:"hello"}));

Hierarchy (view full)

Constructors

Properties

abort: AbortController
baudRate: number
chunkSize: number
codec: Codec
connectAttempts: number
name: string
port: undefined | SerialPort
states: Flow.StateMachine.WithEvents<Readonly<Readonly<{
    closed: "connecting";
    connected: string[];
    connecting: string[];
    ready: "connecting";
}>>>
tx: undefined | WritableStreamDefaultWriter<string>
verboseLogging: boolean = false

Accessors

  • get isClosed(): boolean
  • Returns boolean

  • get isConnected(): boolean
  • Returns boolean

  • get isDisposed(): boolean
  • Returns boolean

Methods

  • Returns Promise<void>

  • Returns Promise<void>

  • Returns void

  • Fire event

    Type Parameters

    Parameters

    Returns void

  • Parameters

    • m: string

    Returns void

  • Must change state

    Returns void

  • Should throw if did not succeed.

    Returns Promise<void>

  • Returns Promise<void>

  • Parameters

    • m: string

    Returns void

  • Parameters

    • m: unknown

    Returns void

  • Parameters

    • txt: string

    Returns void

  • Writes text collected in buffer

    Parameters

    • txt: string

    Returns Promise<void>