update icons and battery controls

This commit is contained in:
sharandac
2020-08-20 17:07:50 +02:00
parent 1de5d8988b
commit 4a634bfc7e
16 changed files with 3653 additions and 8 deletions

View File

@@ -32,8 +32,14 @@ void pmu_setup( TTGOClass *ttgo ) {
// enable coulumb counter
if ( ttgo->power->EnableCoulombcounter() )
log_e("enable coulumb counter failed!");
if ( ttgo->power->setChargingTargetVoltage( AXP202_TARGET_VOL_4_2V ) )
log_e("target voltage set failed!");
if ( pmu_config.charging_target_voltage <= 4200 ) {
if ( ttgo->power->setChargingTargetVoltage( AXP202_TARGET_VOL_4_2V ) )
log_e("target voltage 4.2V set failed!");
}
else {
if ( ttgo->power->setChargingTargetVoltage( AXP202_TARGET_VOL_4_36V ) )
log_e("target voltage 4.36V set failed!");
}
if ( ttgo->power->setChargeControlCur( 300 ) )
log_e("charge current set failed!");
if ( ttgo->power->setAdcSamplingRate( AXP_ADC_SAMPLING_RATE_200HZ ) )
@@ -131,6 +137,8 @@ void pmu_save_config( void ) {
doc["silence_wakeup_time_vbplug"] = pmu_config.silence_wakeup_time_vbplug;
doc["experimental_power_save"] = pmu_config.experimental_power_save;
doc["compute_percent"] = pmu_config.compute_percent;
doc["charging_target_voltage"] = pmu_config.charging_target_voltage;
doc["designed_battery_cap"] = pmu_config.designed_battery_cap;
if ( serializeJsonPretty( doc, file ) == 0) {
log_e("Failed to write config file");
@@ -163,6 +171,8 @@ void pmu_read_config( void ) {
pmu_config.silence_wakeup_time_vbplug = doc["compute_percent"].as<int8_t>() | 3;
pmu_config.experimental_power_save = doc["experimental_power_save"].as<bool>() | false;
pmu_config.compute_percent = doc["compute_percent"].as<bool>() | false;
pmu_config.charging_target_voltage = doc["charging_target_voltage"].as<int32_t>() | 4200;
pmu_config.designed_battery_cap = doc["designed_battery_cap"].as<int32_t>() | 300;
}
doc.clear();
}
@@ -195,6 +205,10 @@ bool pmu_get_silence_wakeup( void ) {
return( pmu_config.silence_wakeup );
}
int32_t pmu_get_designed_battery_cap( void ) {
return( pmu_config.designed_battery_cap );
}
void pmu_set_silence_wakeup( bool value ) {
pmu_config.silence_wakeup = value;
pmu_save_config();
@@ -277,7 +291,7 @@ int32_t pmu_get_battery_percent( TTGOClass *ttgo ) {
}
if ( pmu_get_calculated_percent() ) {
return( ( ttgo->power->getCoulombData() / PMU_BATTERY_CAP ) * 100 );
return( ( ttgo->power->getCoulombData() / pmu_config.designed_battery_cap ) * 100 );
}
else {
return( ttgo->power->getBattPercentage() );