IR: Remember OTG state

This commit is contained in:
Willy-JL
2024-03-29 04:47:28 +00:00
parent 76d102a7da
commit 923eb5933e

View File

@@ -12,11 +12,12 @@
#define INFRARED_TX_MIN_INTERVAL_MS (50U)
#define INFRARED_TASK_STACK_SIZE (2048UL)
#define INFRARED_SETTINGS_VERSION (0)
#define INFRARED_SETTINGS_VERSION (1)
#define INFRARED_SETTINGS_MAGIC (0x1F)
typedef struct {
uint8_t tx_pin;
FuriHalInfraredTxPin tx_pin;
bool otg_enabled;
} InfraredSettings;
static const NotificationSequence*
@@ -486,11 +487,15 @@ static void infrared_load_settings(InfraredApp* infrared) {
}
infrared_set_tx_pin(infrared, settings.tx_pin);
if(settings.tx_pin < FuriHalInfraredTxPinMax) {
infrared_enable_otg(infrared, settings.otg_enabled);
}
}
void infrared_save_settings(InfraredApp* infrared) {
InfraredSettings settings = {
.tx_pin = infrared->app_state.tx_pin,
.otg_enabled = infrared->app_state.is_otg_enabled,
};
if(!saved_struct_save(