diff options
| author | jacqueline <me@jacqueline.id.au> | 2024-07-24 15:29:45 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2024-07-24 15:29:45 +1000 |
| commit | 0cc75366848e9205ac88884afcc128925024ccec (patch) | |
| tree | 82fcd90d7f427c5f40112b8d8aa6293535372702 /src/drivers/nvs.cpp | |
| parent | eb5d0d50cd5a8d807897c08438e932083e5197c2 (diff) | |
| download | tangara-fw-0cc75366848e9205ac88884afcc128925024ccec.tar.gz | |
Add a settings screen with power+battery info
Mostly for debugging, but also u can toggle fast charging off and on now
Diffstat (limited to 'src/drivers/nvs.cpp')
| -rw-r--r-- | src/drivers/nvs.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/drivers/nvs.cpp b/src/drivers/nvs.cpp index e3c4aa06..6fac8c61 100644 --- a/src/drivers/nvs.cpp +++ b/src/drivers/nvs.cpp @@ -40,6 +40,7 @@ static constexpr char kKeyDisplayRows[] = "disprows"; static constexpr char kKeyHapticMotorType[] = "hapticmtype"; static constexpr char kKeyLraCalibration[] = "lra_cali"; static constexpr char kKeyDbAutoIndex[] = "dbautoindex"; +static constexpr char kKeyFastCharge[] = "fastchg"; static auto nvs_get_string(nvs_handle_t nvs, const char* key) -> std::optional<std::string> { @@ -239,6 +240,7 @@ NvsStorage::NvsStorage(nvs_handle_t handle) display_rows_(kKeyDisplayRows), haptic_motor_type_(kKeyHapticMotorType), lra_calibration_(kKeyLraCalibration), + fast_charge_(kKeyFastCharge), brightness_(kKeyBrightness), sensitivity_(kKeyScrollSensitivity), amp_max_vol_(kKeyAmpMaxVolume), @@ -444,6 +446,16 @@ auto NvsStorage::OutputMode(Output out) -> void { nvs_commit(handle_); } +auto NvsStorage::FastCharge() -> bool { + std::lock_guard<std::mutex> lock{mutex_}; + return fast_charge_.get().value_or(true); +} + +auto NvsStorage::FastCharge(bool en) -> void { + std::lock_guard<std::mutex> lock{mutex_}; + fast_charge_.set(en); +} + auto NvsStorage::ScreenBrightness() -> uint_fast8_t { std::lock_guard<std::mutex> lock{mutex_}; return std::clamp<uint8_t>(brightness_.get().value_or(50), 0, 100); |
