update icons and battery controls
This commit is contained in:
@@ -48,6 +48,7 @@ void blectl_send_event_cb( EventBits_t event, char *msg );
|
||||
|
||||
BLEServer *pServer = NULL;
|
||||
BLECharacteristic *pTxCharacteristic;
|
||||
BLECharacteristic *pRxCharacteristic;
|
||||
uint8_t txValue = 0;
|
||||
|
||||
char *gadgetbridge_msg = NULL;
|
||||
@@ -251,7 +252,7 @@ void blectl_setup( void ) {
|
||||
pTxCharacteristic->setAccessPermissions(ESP_GATT_PERM_READ_ENCRYPTED | ESP_GATT_PERM_WRITE_ENCRYPTED);
|
||||
pTxCharacteristic->addDescriptor( new BLE2902() );
|
||||
|
||||
BLECharacteristic *pRxCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID_RX, BLECharacteristic::PROPERTY_WRITE );
|
||||
pRxCharacteristic = pService->createCharacteristic( CHARACTERISTIC_UUID_RX, BLECharacteristic::PROPERTY_WRITE );
|
||||
pRxCharacteristic->setAccessPermissions(ESP_GATT_PERM_READ_ENCRYPTED | ESP_GATT_PERM_WRITE_ENCRYPTED);
|
||||
pRxCharacteristic->setCallbacks( new BleCtlCallbacks() );
|
||||
|
||||
|
||||
@@ -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() );
|
||||
|
||||
@@ -26,8 +26,6 @@
|
||||
|
||||
#define PMU_EVENT_AXP_INT _BV(0)
|
||||
|
||||
#define PMU_BATTERY_CAP 300
|
||||
|
||||
#define PMU_CONFIG_FILE "/pmu.cfg"
|
||||
#define PMU_JSON_CONFIG_FILE "/pmu.json"
|
||||
|
||||
@@ -37,6 +35,8 @@
|
||||
bool silence_wakeup = true;
|
||||
uint8_t silence_wakeup_time = 60;
|
||||
uint8_t silence_wakeup_time_vbplug = 3;
|
||||
int32_t charging_target_voltage = 3200;
|
||||
int32_t designed_battery_cap = 300;
|
||||
} pmu_config_t;
|
||||
|
||||
/*
|
||||
@@ -92,6 +92,7 @@
|
||||
* @brief set experimental power save
|
||||
*/
|
||||
void pmu_set_experimental_power_save( bool value );
|
||||
int32_t pmu_get_designed_battery_cap( void );
|
||||
bool pmu_get_silence_wakeup( void );
|
||||
void pmu_set_silence_wakeup( bool value );
|
||||
|
||||
|
||||
Reference in New Issue
Block a user