From 5b234b20aa57b12d3a854e4c1a1145a9bb2f86c8 Mon Sep 17 00:00:00 2001
From: Volker Richert <v.richert@addmore.de>
Date: Sat, 31 Dec 2016 12:50:43 +0100
Subject: [PATCH] starting configurable poll timings (normal & on low bat)

---
 .../nightscout/android/medtronic/MainActivity.java   | 12 +++++++++---
 .../message/DeviceInfoRequestCommandMessage.java     |  2 +-
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java b/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java
index c11b1a4..33b2510 100644
--- a/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java
+++ b/app/src/main/java/info/nightscout/android/medtronic/MainActivity.java
@@ -114,6 +114,10 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc
             stopCgmService();
         }
 
+        //set poll intervals
+        MainActivity.pollInterval = Long.parseLong(prefs.getString("pollInterval", Long.toString(MedtronicCnlIntentService.POLL_PERIOD_MS)));
+        MainActivity.lowBatteryPollInterval = Long.parseLong(prefs.getString("lowBatPollInterval", Long.toString(MedtronicCnlIntentService.LOW_BATTERY_POLL_PERIOD_MS)));
+
         // Disable battery optimization to avoid missing values on 6.0+
         // taken from https://github.com/NightscoutFoundation/xDrip/blob/master/app/src/main/java/com/eveningoutpost/dexdrip/Home.java#L277L298
 
@@ -419,9 +423,11 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc
         } else if (key.equals("mmolxl")) {
             refreshDisplay();
         } else if (key.equals("pollInterval")) {
-            String test = sharedPreferences.getString("pollInterval", "5 min");
+            MainActivity.pollInterval = Long.parseLong(sharedPreferences.getString("pollInterval",
+                    Long.toString(MedtronicCnlIntentService.POLL_PERIOD_MS)));
         } else if (key.equals("lowBatPollInterval")) {
-            MainActivity.lowBatteryPollInterval = sharedPreferences.getLong("lowBatPollInterval", MedtronicCnlIntentService.LOW_BATTERY_POLL_PERIOD_MS);
+            MainActivity.lowBatteryPollInterval = Long.parseLong(sharedPreferences.getString("lowBatPollInterval",
+                    Long.toString( MedtronicCnlIntentService.LOW_BATTERY_POLL_PERIOD_MS)));
         }
     }
 
@@ -636,7 +642,7 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc
                     break;
                 default:
                     batIcon.setTitle(getResources().getString(R.string.menu_name_status));
-                    batIcon.setIcon(getResources().getDrawable(R.drawable.battery_0));
+                    batIcon.setIcon(getResources().getDrawable(R.drawable.battery_unknown));
             }
 
             // TODO - waiting for MPAndroidCharts 3.0.0. This will fix:
diff --git a/app/src/main/java/info/nightscout/android/medtronic/message/DeviceInfoRequestCommandMessage.java b/app/src/main/java/info/nightscout/android/medtronic/message/DeviceInfoRequestCommandMessage.java
index 5c2f7d6..38a1bd6 100644
--- a/app/src/main/java/info/nightscout/android/medtronic/message/DeviceInfoRequestCommandMessage.java
+++ b/app/src/main/java/info/nightscout/android/medtronic/message/DeviceInfoRequestCommandMessage.java
@@ -48,7 +48,7 @@ public class DeviceInfoRequestCommandMessage extends ContourNextLinkRequestMessa
                     response.checkControlMessage(response2, ASCII.ENQ);
                 } else {
                     // response 2 is the ASTM message
-                    response = this.getResponse(response1);
+                    response = this.getResponse(response2);
                     // ugly, too....
                     response.checkControlMessage(response1, ASCII.ENQ);
                 }
-- 
GitLab