@@ -70,7 +70,8 @@ void CommonCLI::loadPrefsInt(FILESYSTEM* fs, const char* filename) {
7070 file.read ((uint8_t *)&_prefs->gps_interval , sizeof (_prefs->gps_interval )); // 157
7171 file.read ((uint8_t *)&_prefs->advert_loc_policy , sizeof (_prefs->advert_loc_policy )); // 161
7272 file.read ((uint8_t *)&_prefs->discovery_mod_timestamp , sizeof (_prefs->discovery_mod_timestamp )); // 162
73- // 166
73+ file.read ((uint8_t *)&_prefs->adc_multiplier , sizeof (_prefs->adc_multiplier )); // 166
74+ // 170
7475
7576 // sanitise bad pref values
7677 _prefs->rx_delay_base = constrain (_prefs->rx_delay_base , 0 , 20 .0f );
@@ -83,6 +84,7 @@ void CommonCLI::loadPrefsInt(FILESYSTEM* fs, const char* filename) {
8384 _prefs->cr = constrain (_prefs->cr , 5 , 8 );
8485 _prefs->tx_power_dbm = constrain (_prefs->tx_power_dbm , 1 , 30 );
8586 _prefs->multi_acks = constrain (_prefs->multi_acks , 0 , 1 );
87+ _prefs->adc_multiplier = constrain (_prefs->adc_multiplier , 0 .0f , 10 .0f );
8688
8789 // sanitise bad bridge pref values
8890 _prefs->bridge_enabled = constrain (_prefs->bridge_enabled , 0 , 1 );
@@ -148,7 +150,8 @@ void CommonCLI::savePrefs(FILESYSTEM* fs) {
148150 file.write ((uint8_t *)&_prefs->gps_interval , sizeof (_prefs->gps_interval )); // 157
149151 file.write ((uint8_t *)&_prefs->advert_loc_policy , sizeof (_prefs->advert_loc_policy )); // 161
150152 file.write ((uint8_t *)&_prefs->discovery_mod_timestamp , sizeof (_prefs->discovery_mod_timestamp )); // 162
151- // 166
153+ file.write ((uint8_t *)&_prefs->adc_multiplier , sizeof (_prefs->adc_multiplier )); // 166
154+ // 170
152155
153156 file.close ();
154157 }
@@ -331,6 +334,8 @@ void CommonCLI::handleCommand(uint32_t sender_timestamp, const char* command, ch
331334 } else if (memcmp (config, " bridge.secret" , 13 ) == 0 ) {
332335 sprintf (reply, " > %s" , _prefs->bridge_secret );
333336#endif
337+ } else if (memcmp (config, " adc.multiplier" , 14 ) == 0 ) {
338+ sprintf (reply, " > %s" , StrHelper::ftoa (_prefs->adc_multiplier ));
334339 } else {
335340 sprintf (reply, " ??: %s" , config);
336341 }
@@ -523,6 +528,11 @@ void CommonCLI::handleCommand(uint32_t sender_timestamp, const char* command, ch
523528 savePrefs ();
524529 strcpy (reply, " OK" );
525530#endif
531+ } else if (memcmp (config, " adc.multiplier " , 15 ) == 0 ) {
532+ _prefs->adc_multiplier = atof (&config[15 ]);
533+ _board->setAdcMultiplier (_prefs->adc_multiplier );
534+ savePrefs ();
535+ strcpy (reply, " OK" );
526536 } else {
527537 sprintf (reply, " unknown config: %s" , config);
528538 }
0 commit comments