startUpdate

abstract suspend fun startUpdate(release: FirmwareRelease, hardware: DeviceHardware, target: String, updateState: (FirmwareUpdateState) -> Unit, firmwareUri: CommonUri? = null): FirmwareArtifact?(source)

Start the firmware update process.

Return

A host-owned temporary artifact when cleanup is required, or null if the update used only external input

Parameters

release

The firmware release to install

hardware

The target device hardware

target

The target identifier (e.g., Bluetooth address, IP address, or empty for USB)

updateState

Callback to report back state changes

firmwareUri

Optional URI for a local firmware file (bypasses download)