code: protected void setWakeUpAlarm() {
          // wake up time will be the maximum of 5 minutes, the scan period, the between scan period
          long milliseconds = 1000l * 60 * 5; /* five minutes */
          if (milliseconds < mBetweenScanPeriod) {
              milliseconds = mBetweenScanPeriod;
          }
          if (milliseconds < mScanPeriod) {
              milliseconds = mScanPeriod;
          }
  
          AlarmManager alarmManager = (AlarmManager) mContext.getSystemService(Context.ALARM_SERVICE);
          alarmManager.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, SystemClock.elapsedRealtime() + milliseconds, getWakeUpOperation());
          LogManager.d(TAG, "Set a wakeup alarm to go off in %s ms: %s", milliseconds, getWakeUpOperation());
      }
docs: off the scan cycle again