do..while

The while loop goes after the do loop. Try googling your issue first though

B1Gtone:
I am confused why I am not reading the RTC. The serial.print advances the seconds from 20 but carries on past 30

You don't actually read the RTC because the do while loop only runs once. When you had the 20 seconds there, it must have lined up properly to "work"