Wake up Arduino Uno by RTC
In your while loop, you never check the time again, so when the while loops hits, you will never leave it. You need to request the time again. Something like:

while ( now.minute()&gt;0 &amp;&amp; now.minute() &lt; 30)
{
   digitalWrite(ledPin, HIGH);
   delay(100);
   digitalWrite(ledPin, LOW);
   delay(1000);
   now = rtc.now(); // check time again
}