diff --git a/remote/include/eeprom.h b/remote/include/eeprom.h index 3c65cc7..925aa68 100644 --- a/remote/include/eeprom.h +++ b/remote/include/eeprom.h @@ -20,6 +20,8 @@ public: int get_master_id(uint32_t* master_id); int set_master_id(uint32_t master_id); + int get_freq_offset(uint8_t* freq_offset); + int set_freq_offset(uint8_t freq_offset); private: #define CURRENT_VERSION 0x02 struct eeprom_data_v1 { @@ -28,6 +30,7 @@ private: struct { uint32_t master_id; struct Input::ch_config ch[Input::CH_COUNT]; + uint8_t freq_offset; } data; } current_config; bool sucessfull_read; diff --git a/remote/src/eeprom.cpp b/remote/src/eeprom.cpp index 14bae0f..909ca44 100644 --- a/remote/src/eeprom.cpp +++ b/remote/src/eeprom.cpp @@ -81,9 +81,6 @@ int Eeprom_config::get_ch_config(struct Input::ch_config* config) { } int Eeprom_config::set_ch_config(struct Input::ch_config* config) { - if (this->sucessfull_read == false && config != NULL) { - return -1; - } memcpy(this->current_config.data.ch, config, sizeof(struct Input::ch_config) * Input::CH_COUNT); return 0; } @@ -99,9 +96,18 @@ int Eeprom_config::get_master_id(uint32_t* master_id) int Eeprom_config::set_master_id(uint32_t master_id) { - if (this->sucessfull_read == false) { + this->current_config.data.master_id = master_id; + return 0; +} + +int Eeprom_config::get_freq_offset(uint8_t* freq_offset) { + if (this->sucessfull_read == false && freq_offset != NULL) { return -1; } - this->current_config.data.master_id = master_id; + *freq_offset = this->current_config.data.freq_offset; + return 0; +} +int Eeprom_config::set_freq_offset(uint8_t freq_offset) { + this->current_config.data.freq_offset = freq_offset; return 0; }