Skip to content
Snippets Groups Projects
Commit fce0ad0e authored by Volker Richert's avatar Volker Richert
Browse files

- add extra icon for pump battery load in menu bar

- if pump ist near EOL (<= 25%) reduce polling. testing every 15mins
parent 9f6fa488
No related branches found
No related tags found
No related merge requests found
Showing
with 48 additions and 1 deletion
......@@ -26,6 +26,7 @@ import android.support.v4.content.LocalBroadcastManager;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.app.NotificationCompat;
import android.support.v7.view.menu.ActionMenuItemView;
import android.support.v7.widget.Toolbar;
import android.text.Html;
import android.text.format.DateUtils;
......@@ -605,6 +606,34 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc
textViewTrend.setText(Html.fromHtml(renderTrendHtml(pumpStatusData.getCgmTrend())));
textViewIOB.setText(String.format(Locale.getDefault(), "%.2f", pumpStatusData.getActiveInsulin()));
ActionMenuItemView batIcon = ((ActionMenuItemView) findViewById(R.id.status_battery));
switch (pumpStatusData.getBatteryPercentage()) {
case 0:
batIcon.setTitle("0%");
batIcon.setIcon(getResources().getDrawable(R.drawable.battery_0));
break;
case 25:
batIcon.setTitle("25%");
batIcon.setIcon(getResources().getDrawable(R.drawable.battery_25));
break;
case 50:
batIcon.setTitle("50%");
batIcon.setIcon(getResources().getDrawable(R.drawable.battery_50));
break;
case 75:
batIcon.setTitle("75%");
batIcon.setIcon(getResources().getDrawable(R.drawable.battery_75));
break;
case 100:
batIcon.setTitle("100%");
batIcon.setIcon(getResources().getDrawable(R.drawable.battery_100));
break;
default:
batIcon.setTitle(getResources().getString(R.string.menu_name_status));
batIcon.setIcon(getResources().getDrawable(R.drawable.battery_0));
}
// TODO - waiting for MPAndroidCharts 3.0.0. This will fix:
// Date support
// Realm v1.0.0 support
......@@ -655,7 +684,17 @@ public class MainActivity extends AppCompatActivity implements OnSharedPreferenc
}
long nextPoll = pumpStatusData.getEventDate().getTime() + pumpStatusData.getPumpTimeOffset()
+ MedtronicCnlIntentService.POLL_GRACE_PERIOD_MS + MedtronicCnlIntentService.POLL_PERIOD_MS;
+ MedtronicCnlIntentService.POLL_GRACE_PERIOD_MS;
if (pumpStatusData.getBatteryPercentage() > 25) {
// poll every 5 min
nextPoll += MedtronicCnlIntentService.POLL_PERIOD_MS;
} else {
// if pump battery seems to be empty reduce polling to save battery (every 15 min)
//TODO configurable???
//TODO add message & document it
nextPoll += MedtronicCnlIntentService.LOW_BATTERY_POLL_PERIOD_MS;
}
startCgmService(nextPoll);
// Delete invalid or old records from Realm
......
......@@ -43,6 +43,7 @@ public class MedtronicCnlIntentService extends IntentService {
public final static int USB_PID = 0x6210;
public final static long USB_WARMUP_TIME_MS = 5000L;
public final static long POLL_PERIOD_MS = 300000L;
public final static long LOW_BATTERY_POLL_PERIOD_MS = 900000L;
// Number of additional seconds to wait after the next expected CGM poll, so that we don't interfere with CGM radio comms.
public final static long POLL_GRACE_PERIOD_MS = 30000L;
private static final String TAG = MedtronicCnlIntentService.class.getSimpleName();
......
app/src/main/res/drawable-hdpi/battery_0.png

731 B

app/src/main/res/drawable-hdpi/battery_100.png

786 B

app/src/main/res/drawable-hdpi/battery_25.png

786 B

app/src/main/res/drawable-hdpi/battery_50.png

799 B

app/src/main/res/drawable-hdpi/battery_75.png

805 B

app/src/main/res/drawable-mdpi/battery_0.png

452 B

app/src/main/res/drawable-mdpi/battery_100.png

495 B

app/src/main/res/drawable-mdpi/battery_25.png

515 B

app/src/main/res/drawable-mdpi/battery_50.png

534 B

app/src/main/res/drawable-mdpi/battery_75.png

536 B

app/src/main/res/drawable-xhdpi/battery_0.png

1.01 KiB

app/src/main/res/drawable-xhdpi/battery_100.png

1.03 KiB

app/src/main/res/drawable-xhdpi/battery_25.png

1.06 KiB

app/src/main/res/drawable-xhdpi/battery_50.png

1.08 KiB

app/src/main/res/drawable-xhdpi/battery_75.png

1.06 KiB

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/status_battery"
android:orderInCategory="99"
app:showAsAction="always"
android:title="@string/menu_name_battery_status"/>
<item
android:id="@+id/action_menu_status"
android:icon="@drawable/ic_launcher"
......
......@@ -50,4 +50,5 @@
<string name="dummy_button">Dummy Button</string>
<string name="dummy_content">DUMMY\nCONTENT</string>
<string name="menu_name_status">Status</string>
<string name="menu_name_battery_status"></string>
</resources>
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment