Home IO Control
ESPHome add-on for IO-Homecontrol devices
Loading...
Searching...
No Matches
lr1121_firmware_update_controller.h File Reference

LR1121 transceiver-firmware-update feature — orchestration collaborator. More...

#include "esphome/core/hal.h"
Include dependency graph for lr1121_firmware_update_controller.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Detailed Description

LR1121 transceiver-firmware-update feature — orchestration collaborator.

Owns the impure side of the feature: the boot-time bootloader-version excursion, the cached flash verdict, the two-press confirmation window, and the button-triggered flash sequence itself. The pure decision logic lives in lr1121_firmware_decisions.h; the bootloader-mode SPI transport lives in radio_lr1121_firmware_updater.h/.cpp. ADR 0020 and ADR 0021 record the design; the single most important rule they state is repeated in the .cpp because it is easy to violate by accident.

Header-weight note: FlashDecision / BootloaderUpgradePath are scoped enums with a fixed underlying type and Lr1121FirmwareUpdater is held only as a pointer, so all three are forward-declared here and the heavy headers are pulled in by the .cpp alone. Including them here would drag them back into hub_core.h transitively and lose the payoff.

Definition in file lr1121_firmware_update_controller.h.