SerialTransport

JVM-specific implementation of RadioTransport using jSerialComm. Uses StreamTransport for START1/START2 packet framing.

Use the create factory method instead of the constructor directly. Construction is side-effect free; start opens the serial port and publishes the connection.

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
open suspend override fun close()

Closes admission and lets already-admitted frames finish before cancelling the worker as a bounded fallback.

Link copied to clipboard
open override fun flushBytes()

Flushes buffered bytes to the underlying stream. No-op by default.

Link copied to clipboard
open override fun handleSendToRadio(p: ByteArray): Boolean
Link copied to clipboard
open override fun keepAlive()
Link copied to clipboard
open override fun sendBytes(p: ByteArray)

Writes raw bytes to the underlying stream (serial port, TCP socket, etc.). Implementations may block until the driver accepts the bytes, so direct callers must already be running on an I/O dispatcher. Framed packet sends use queueFramedSend, whose writer controls dispatcher confinement. Subclasses that rely on queueFramedSend's default writer must therefore supply an I/O-confined scope.

Link copied to clipboard
open override fun start()