         settingAlarmProcess = A_TYPE;
       } 
       else {
+        if(vibrate){
+            RTC.setAlarm(ALM2_MATCH_HOURS, alarmMinute, alarmHour, 0);
+            RTC.alarmInterrupt(ALARM_2, true);
+        } else{
+            RTC.alarmInterrupt(ALARM_2, false);
+        }
         currentState = NORMAL;
       }
 

}



void checkAndSoundAlarm(int hour, int minute){
  unsigned long currentMillis = millis();


  if(hour == alarmHour && minute == alarmMinute && currentState == NORMAL
    && ((currentMillis - alarmLastStarted) > MIN_TIME_BETWEEN_ALARM_STARTS)
    && (vibrate)){
    currentState = ALARM;
    alarmLastStarted = currentMillis;
    motorDriverState(true);

  }

}



      else if(settingAlarmProcess == A_TYPE){
        vibrate = !vibrate;
      }
      
    }
    break;
  case SETTING_TIME:
