David Lee пре 11 месеци
родитељ
комит
fb7374692f
3 измењених фајлова са 11 додато и 1 уклоњено
  1. 8 0
      helpers/xremote_storage.c
  2. 2 0
      helpers/xremote_storage.h
  3. 1 1
      xremote.h

+ 8 - 0
helpers/xremote_storage.c

@@ -61,6 +61,10 @@ void xremote_save_settings(void* context) {
     flipper_format_write_uint32(fff_file, XREMOTE_SETTINGS_KEY_SG_TIMING, &app->sg_timing, 1);
     flipper_format_write_uint32(fff_file, XREMOTE_SETTINGS_KEY_SG_TIMING, &app->sg_timing, 1);
     flipper_format_write_uint32(fff_file, XREMOTE_SETTINGS_KEY_LOOP_TRANSMIT, &app->loop_transmit, 1);
     flipper_format_write_uint32(fff_file, XREMOTE_SETTINGS_KEY_LOOP_TRANSMIT, &app->loop_transmit, 1);
 
 
+    //IR GPIO Settings
+    flipper_format_write_uint32(fff_file, XREMOTE_SETTINGS_KEY_IR_TX_PIN, &app->ir_tx_pin, 1);
+    flipper_format_write_bool(fff_file, XREMOTE_SETTINGS_KEY_IR_USE_OTP, &app->ir_is_otg_enabled, 1);
+
     if(!flipper_format_rewind(fff_file)) {
     if(!flipper_format_rewind(fff_file)) {
         xremote_close_config_file(fff_file);
         xremote_close_config_file(fff_file);
         FURI_LOG_E(TAG, "Rewind error");
         FURI_LOG_E(TAG, "Rewind error");
@@ -115,6 +119,10 @@ void xremote_read_settings(void* context) {
     flipper_format_read_uint32(fff_file, XREMOTE_SETTINGS_KEY_SG_TIMING, &app->sg_timing, 1);
     flipper_format_read_uint32(fff_file, XREMOTE_SETTINGS_KEY_SG_TIMING, &app->sg_timing, 1);
     flipper_format_read_uint32(fff_file, XREMOTE_SETTINGS_KEY_LOOP_TRANSMIT, &app->loop_transmit, 1);
     flipper_format_read_uint32(fff_file, XREMOTE_SETTINGS_KEY_LOOP_TRANSMIT, &app->loop_transmit, 1);
 
 
+    // IR GPIO Settings
+    flipper_format_read_uint32(fff_file, XREMOTE_SETTINGS_KEY_IR_TX_PIN, &app->ir_tx_pin, 1);
+    flipper_format_read_bool(fff_file, XREMOTE_SETTINGS_KEY_IR_USE_OTP, &app->ir_is_otg_enabled, 1);
+
     flipper_format_rewind(fff_file);
     flipper_format_rewind(fff_file);
 
 
     furi_string_free(temp_str);
     furi_string_free(temp_str);

+ 2 - 0
helpers/xremote_storage.h

@@ -12,6 +12,8 @@
 #define XREMOTE_SETTINGS_KEY_SPEAKER "Speaker"
 #define XREMOTE_SETTINGS_KEY_SPEAKER "Speaker"
 #define XREMOTE_SETTINGS_KEY_SAVE_SETTINGS "SaveSettings"
 #define XREMOTE_SETTINGS_KEY_SAVE_SETTINGS "SaveSettings"
 #define XREMOTE_SETTINGS_KEY_IR_TIMING "IRTiming"
 #define XREMOTE_SETTINGS_KEY_IR_TIMING "IRTiming"
+#define XREMOTE_SETTINGS_KEY_IR_TX_PIN "IRTXPin"
+#define XREMOTE_SETTINGS_KEY_IR_USE_OTP "IRUSEOTP"
 #define XREMOTE_SETTINGS_KEY_SG_TIMING "SGTiming"
 #define XREMOTE_SETTINGS_KEY_SG_TIMING "SGTiming"
 #define XREMOTE_SETTINGS_KEY_LOOP_TRANSMIT "LoopTransmit"
 #define XREMOTE_SETTINGS_KEY_LOOP_TRANSMIT "LoopTransmit"
 
 

+ 1 - 1
xremote.h

@@ -37,7 +37,7 @@ typedef struct {
     InfraredRemote* ir_remote_buffer;
     InfraredRemote* ir_remote_buffer;
     InfraredWorker* ir_worker;
     InfraredWorker* ir_worker;
     bool ir_is_otg_enabled; /**< Whether OTG power (external 5V) is enabled for IR. */
     bool ir_is_otg_enabled; /**< Whether OTG power (external 5V) is enabled for IR. */
-    FuriHalInfraredTxPin ir_tx_pin; 
+    uint32_t ir_tx_pin; 
     SubGhzRemote* sg_remote_buffer;
     SubGhzRemote* sg_remote_buffer;
     CrossRemote* cross_remote;
     CrossRemote* cross_remote;
     uint32_t haptic;
     uint32_t haptic;