diff --git a/SPECS.md b/SPECS.md index 42912a4..169ab12 100644 --- a/SPECS.md +++ b/SPECS.md @@ -112,6 +112,7 @@ tyre pressures, GPS (lat, lon, elevation, heading) and the is_* flags. It does * INGEST_TOKEN) into git and pushed it. Commit amended and force-pushed; both values regenerated in the now gitignored `k8s/secrets.yaml` (since moved to `k8s/secrets/secrets.yaml`, outside `kubectl apply -f k8s/`). Filled-in secrets live only there from now on. +- 2026-10-18 — App 2.10.2: the range shows "∞" instead of "> 999 km" while recuperating. - 2026-10-18 — App 2.10.1: net regeneration (recuperating downhill) shows as negative usage, and the range as "> 999 km" with "while recuperating", instead of "needs a few minutes of driving". - 2026-10-18 — App 2.10.0: "Range since start" replaces the range at current power. It uses diff --git a/app/build.gradle b/app/build.gradle index 791eb08..36daf11 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -34,8 +34,8 @@ android { applicationId "com.stinnesbeck.nilsmg4" minSdk 27 targetSdk 36 - versionCode 71 - versionName "2.10.1" + versionCode 72 + versionName "2.10.2" // Nothing about the server ships in the APK: its URL and ingest token are entered in // the app's Server tab (ServerConfig), and the database is only reachable by the server. diff --git a/app/src/main/java/com/evsuite/abrp/MainActivity.java b/app/src/main/java/com/evsuite/abrp/MainActivity.java index 6b36f54..a5e1b5f 100644 --- a/app/src/main/java/com/evsuite/abrp/MainActivity.java +++ b/app/src/main/java/com/evsuite/abrp/MainActivity.java @@ -1038,8 +1038,10 @@ public class MainActivity extends AppCompatActivity { usageNote.setText(whyNot); return; } - // Coasting at speed costs almost nothing, which would read as thousands of km. - range.setText(e.rangeKm > 999 ? getString(R.string.range_over, 999) + // Recuperating, the pack gains energy: the range is unbounded. Coasting at speed costs + // almost nothing, which would read as thousands of km. + range.setText(e.kwhPer100Km <= 0 ? "∞" + : e.rangeKm > 999 ? getString(R.string.range_over, 999) : String.format(java.util.Locale.US, "%.0f km", e.rangeKm)); rangeNote.setText(e.kwhPer100Km <= 0 ? getString(R.string.range_recuperating) : ""); usage.setText(getString(R.string.range_consumption, e.kwhPer100Km));