Package-level declarations

Types

Link copied to clipboard
class AndroidFirmwareFileHandler(context: Context, client: HttpClient) : FirmwareFileHandler

Helper class to handle file operations related to firmware updates, such as downloading, copying from URI, and extracting specific files from Zip archives.

Link copied to clipboard
class AndroidFirmwareUpdateManager(radioPrefs: RadioPrefs, nordicDfuHandler: NordicDfuHandler, usbUpdateHandler: UsbUpdateHandler, esp32OtaUpdateHandler: Esp32OtaUpdateHandler) : FirmwareUpdateManager

Orchestrates the firmware update process by choosing the correct handler.

Link copied to clipboard

Manages USB-related interactions for firmware updates.

Link copied to clipboard
sealed interface DfuInternalState
Link copied to clipboard
class FirmwareDfuService : DfuBaseService
Link copied to clipboard
Link copied to clipboard

Retrieves firmware files, either by direct download or by extracting from a release asset.

Link copied to clipboard
data class FirmwareUpdateActions(val onReleaseTypeSelect: (ERROR CLASS: Symbol not found for FirmwareReleaseType) -> Unit, val onStartUpdate: () -> Unit, val onPickFile: () -> Unit, val onSaveFile: (String) -> Unit, val onRetry: () -> Unit, val onCancel: () -> Unit, val onDone: () -> Unit, val onDismissBootloaderWarning: () -> Unit)
Link copied to clipboard

Common interface for all firmware update handlers (BLE DFU, ESP32 OTA, USB).

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
sealed interface FirmwareUpdateState
Link copied to clipboard
class FirmwareUpdateViewModel(firmwareReleaseRepository: ERROR CLASS: Symbol not found for FirmwareReleaseRepository, deviceHardwareRepository: ERROR CLASS: Symbol not found for DeviceHardwareRepository, nodeRepository: ERROR CLASS: Symbol not found for NodeRepository, radioController: ERROR CLASS: Symbol not found for RadioController, radioPrefs: ERROR CLASS: Symbol not found for RadioPrefs, bootloaderWarningDataSource: ERROR CLASS: Symbol not found for BootloaderWarningDataSource, firmwareUpdateManager: FirmwareUpdateManager, usbManager: FirmwareUsbManager, fileHandler: FirmwareFileHandler) : <ERROR CLASS> ERROR CLASS: Symbol not found for ViewModel
Link copied to clipboard
Link copied to clipboard
class NordicDfuHandler(firmwareRetriever: FirmwareRetriever, context: Context, radioController: RadioController) : FirmwareUpdateHandler

Handles Over-the-Air (OTA) firmware updates for nRF52-based devices using the Nordic DFU library.

Link copied to clipboard
data class ProgressState(val message: String = "", val progress: Float = 0.0f, val details: String? = null)

Represents the progress of a long-running firmware update task.

Link copied to clipboard
class UsbUpdateHandler(firmwareRetriever: FirmwareRetriever, radioController: RadioController, nodeRepository: NodeRepository) : FirmwareUpdateHandler

Handles firmware updates via USB Mass Storage (UF2).

Functions

Link copied to clipboard
fun FirmwareUpdateScreen(onNavigateUp: () -> Unit, viewModel: FirmwareUpdateViewModel, modifier: Modifier = Modifier)