RTC Ds3231 turn on/off switch trouble

Hi,
I’m new to the forum so excuse bad formatting / question.
I have connected up a Ds3231 RTC and can read time through the serial output. I would like a pin (D2) to be turned to HIGH when a specific time is reached (hour and minute).
I have tried an if statement just for the hour an this works, if the hour is correct. this doesn’t seem to work for the minute though. Have I missed something crucial?
Thank you in Advance,
\Fionn
find code below:

#include <DS3231.h>
DS3231 rtc(SDA, SCL);
int waterState = 0;

//set times for watering
// Watering 1
int hour1 = 10;
int min1 = 41;
int wateringTime = 1000;

void setup() {
 Serial.begin(115200);
 rtc.begin();
 pinMode(2, OUTPUT);
}

void loop() {
Serial.print(rtc.getTime().hour, DEC);
Serial.print(" : ");
Serial.println(rtc.getTime().min, DEC);

if (rtc.getTime().hour, DEC== hour1) {
  waterState = 1;
}
else {
  waterState = 0;
}

if (rtc.getTime().min, DEC== min1) {
  waterState = waterState + 1;
}
else {
  waterState = 0;
}

if (waterState == 2) {
  digitalWrite(2, HIGH);
  delay(wateringTime);
}
else {
  digitalWrite(2, LOW);
}
delay(1000);
}

I have connected up a Ds3231 RTC and can read time through the serial output.

The Arduino can't.

if (rtc.getTime().hour, DEC== hour1) {
  waterState = 1;
}

Why did you copy the , DEC bit from the Serial.print() statement? You REALLY need to understand why that bit is there in the print statement. Then, you'll understand why it is useless there. Then, perhaps you'll see that it was useless to copy it into the if statement (though the reason why is completely different).