From 11280d5f3704e174974805acd9e12542a3560207 Mon Sep 17 00:00:00 2001 From: panky-codes Date: Sat, 16 Jan 2021 14:55:13 +0100 Subject: Adjusted the firmware to display percent instead of gfx. --- src/displayapp/screens/Clock.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/displayapp') diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp index 57659141..5849f4cc 100644 --- a/src/displayapp/screens/Clock.cpp +++ b/src/displayapp/screens/Clock.cpp @@ -98,7 +98,8 @@ bool Clock::Refresh() { batteryPercentRemaining = batteryController.PercentRemaining(); if (batteryPercentRemaining.IsUpdated()) { auto batteryPercent = batteryPercentRemaining.Get(); - lv_label_set_text(batteryIcon, BatteryIcon::GetBatteryIcon(batteryPercent)); + // lv_label_set_text(batteryIcon, BatteryIcon::GetBatteryIcon(batteryPercent)); + lv_label_set_text(batteryIcon, std::to_string(batteryPercent).c_str()); auto isCharging = batteryController.IsCharging() || batteryController.IsPowerPresent(); lv_label_set_text(batteryPlug, BatteryIcon::GetPlugIcon(isCharging)); } -- cgit v1.2.3-70-g09d2 From e2d1f8191563a6dc0232050b36e00c7b35c9bc21 Mon Sep 17 00:00:00 2001 From: panky-codes Date: Sat, 16 Jan 2021 19:51:32 +0100 Subject: Converted percent remaining calc to int. --- src/components/battery/BatteryController.cpp | 6 +++--- src/components/battery/BatteryController.h | 6 +++--- src/displayapp/screens/Clock.cpp | 3 +-- 3 files changed, 7 insertions(+), 8 deletions(-) (limited to 'src/displayapp') diff --git a/src/components/battery/BatteryController.cpp b/src/components/battery/BatteryController.cpp index e0042f5c..aaa245e4 100644 --- a/src/components/battery/BatteryController.cpp +++ b/src/components/battery/BatteryController.cpp @@ -34,9 +34,9 @@ void Battery::Update() { // see https://forum.pine64.org/showthread.php?tid=8147 voltage = (value * 2.0f) / (1024/3.0f); - float percentRemaining = ((voltage - 3.55f)*100.0f)*3.9f; - percentRemaining = std::max(percentRemaining, 0.0f); - percentRemaining = std::min(percentRemaining, 100.0f); + int percentRemaining = ((voltage - 3.55f)*100.0f)*3.9f; + percentRemaining = std::max(percentRemaining, 0); + percentRemaining = std::min(percentRemaining, 100); percentRemainingBuffer.insert(percentRemaining); diff --git a/src/components/battery/BatteryController.h b/src/components/battery/BatteryController.h index 21caffec..0f2c2a42 100644 --- a/src/components/battery/BatteryController.h +++ b/src/components/battery/BatteryController.h @@ -20,8 +20,8 @@ namespace Pinetime { } } - float GetAverage() const { - float sum = std::accumulate(arr.begin(), arr.end(), 0.0f); + int GetAverage() const { + int sum = std::accumulate(arr.begin(), arr.end(), 0.0f); return (sum / sz); } @@ -36,7 +36,7 @@ namespace Pinetime { public: void Init(); void Update(); - float PercentRemaining() const { return percentRemainingBuffer.GetAverage(); } + int PercentRemaining() const { return percentRemainingBuffer.GetAverage(); } float Voltage() const { return voltage; } bool IsCharging() const { return isCharging; } bool IsPowerPresent() const { return isPowerPresent; } diff --git a/src/displayapp/screens/Clock.cpp b/src/displayapp/screens/Clock.cpp index 5849f4cc..57659141 100644 --- a/src/displayapp/screens/Clock.cpp +++ b/src/displayapp/screens/Clock.cpp @@ -98,8 +98,7 @@ bool Clock::Refresh() { batteryPercentRemaining = batteryController.PercentRemaining(); if (batteryPercentRemaining.IsUpdated()) { auto batteryPercent = batteryPercentRemaining.Get(); - // lv_label_set_text(batteryIcon, BatteryIcon::GetBatteryIcon(batteryPercent)); - lv_label_set_text(batteryIcon, std::to_string(batteryPercent).c_str()); + lv_label_set_text(batteryIcon, BatteryIcon::GetBatteryIcon(batteryPercent)); auto isCharging = batteryController.IsCharging() || batteryController.IsPowerPresent(); lv_label_set_text(batteryPlug, BatteryIcon::GetPlugIcon(isCharging)); } -- cgit v1.2.3-70-g09d2 From 271ca78be55e2330b88bec90c7fe8f7a2e27bc87 Mon Sep 17 00:00:00 2001 From: panky-codes Date: Sat, 16 Jan 2021 20:18:55 +0100 Subject: Converted all the other float usage to int. --- src/components/battery/BatteryController.h | 2 +- src/displayapp/screens/BatteryIcon.cpp | 10 +++++----- src/displayapp/screens/BatteryIcon.h | 2 +- src/displayapp/screens/Clock.h | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src/displayapp') diff --git a/src/components/battery/BatteryController.h b/src/components/battery/BatteryController.h index 0f2c2a42..2329f162 100644 --- a/src/components/battery/BatteryController.h +++ b/src/components/battery/BatteryController.h @@ -7,7 +7,7 @@ namespace Pinetime { namespace Controllers { // A simple circular buffer that can be used to average - // out sensor values + // out the sensor values template class CircBuffer { public: diff --git a/src/displayapp/screens/BatteryIcon.cpp b/src/displayapp/screens/BatteryIcon.cpp index 4c102477..455b0c6d 100644 --- a/src/displayapp/screens/BatteryIcon.cpp +++ b/src/displayapp/screens/BatteryIcon.cpp @@ -3,11 +3,11 @@ using namespace Pinetime::Applications::Screens; -const char* BatteryIcon::GetBatteryIcon(float batteryPercent) { - if(batteryPercent > 90.0f) return Symbols::batteryFull; - if(batteryPercent > 75.0f) return Symbols::batteryThreeQuarter; - if(batteryPercent > 50.0f) return Symbols::batteryHalf; - if(batteryPercent > 25.0f) return Symbols::batteryOneQuarter; +const char* BatteryIcon::GetBatteryIcon(int batteryPercent) { + if(batteryPercent > 90) return Symbols::batteryFull; + if(batteryPercent > 75) return Symbols::batteryThreeQuarter; + if(batteryPercent > 50) return Symbols::batteryHalf; + if(batteryPercent > 25) return Symbols::batteryOneQuarter; return Symbols::batteryEmpty; } diff --git a/src/displayapp/screens/BatteryIcon.h b/src/displayapp/screens/BatteryIcon.h index f1001923..006e5621 100644 --- a/src/displayapp/screens/BatteryIcon.h +++ b/src/displayapp/screens/BatteryIcon.h @@ -6,7 +6,7 @@ namespace Pinetime { class BatteryIcon { public: static const char* GetUnknownIcon(); - static const char* GetBatteryIcon(float batteryPercent); + static const char* GetBatteryIcon(int batteryPercent); static const char* GetPlugIcon(bool isCharging); }; } diff --git a/src/displayapp/screens/Clock.h b/src/displayapp/screens/Clock.h index 4c5f60a0..c7f2d9db 100644 --- a/src/displayapp/screens/Clock.h +++ b/src/displayapp/screens/Clock.h @@ -62,7 +62,7 @@ namespace Pinetime { Pinetime::Controllers::DateTime::Days currentDayOfWeek = Pinetime::Controllers::DateTime::Days::Unknown; uint8_t currentDay = 0; - DirtyValue batteryPercentRemaining {0}; + DirtyValue batteryPercentRemaining {0}; DirtyValue bleState {false}; DirtyValue> currentDateTime; DirtyValue stepCount {0}; -- cgit v1.2.3-70-g09d2