diff --git a/app/src/main/java/info/nightscout/android/settings/SettingsFragment.java b/app/src/main/java/info/nightscout/android/settings/SettingsFragment.java
index 7519a5c7f75cc4e177012ca37b2ec08d272d0b8a..d14c7ed19af7df4025bd0731227abfecfb380208 100644
--- a/app/src/main/java/info/nightscout/android/settings/SettingsFragment.java
+++ b/app/src/main/java/info/nightscout/android/settings/SettingsFragment.java
@@ -25,11 +25,51 @@ public class SettingsFragment extends PreferenceFragment implements OnSharedPref
         for (int i = 0; i < getPreferenceScreen().getPreferenceCount(); i++) {
             initSummary(getPreferenceScreen().getPreference(i));
         }
+
+        setMinBatPollIntervall((ListPreference) findPreference("pollInterval"), (ListPreference) findPreference("lowBatPollInterval"));
     }
 
     @Override
     public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
-        updatePrefSummary(findPreference(key));
+        Preference pref = findPreference(key);
+
+
+        if ("pollInterval".equals(key)) {
+            setMinBatPollIntervall((ListPreference) pref, (ListPreference) findPreference("lowBatPollInterval"));
+        }
+        updatePrefSummary(pref);
+    }
+
+    //
+
+    /**
+     * set lowBatPollInterval to normal poll interval at least
+     * and adapt the selectable values
+     *
+     * @param pollIntervalPref
+     * @param lowBatPollIntervalPref
+     */
+    private void setMinBatPollIntervall(ListPreference pollIntervalPref, ListPreference lowBatPollIntervalPref) {
+        final String currentValue = lowBatPollIntervalPref.getValue();
+        final int pollIntervalPos = pollIntervalPref.findIndexOfValue(pollIntervalPref.getValue()),
+                lowBatPollIntervalPos = lowBatPollIntervalPref.findIndexOfValue(currentValue),
+                length = pollIntervalPref.getEntries().length;
+
+        CharSequence[] entries = new String[length - pollIntervalPos],
+                entryValues = new String[length - pollIntervalPos];
+
+        // generate temp Entries and EntryValues
+        for(int i = pollIntervalPos; i < length; i++) {
+            entries[i - pollIntervalPos] = pollIntervalPref.getEntries()[i];
+            entryValues[i - pollIntervalPos] = pollIntervalPref.getEntryValues()[i];
+        }
+        lowBatPollIntervalPref.setEntries(entries);
+        lowBatPollIntervalPref.setEntryValues(entryValues);
+
+        // and set the correct one
+        if (lowBatPollIntervalPref.findIndexOfValue(currentValue) == -1) {
+            lowBatPollIntervalPref.setValueIndex(0);
+        }
     }
 
     @Override