if (now.minute() == 59 && now.second() == 30)
{
if (SetRTC == 0)
{
SetRTC = 1;
Serial.println("Syncing the clock ready for the pips: ");
Serial.println();
}
}
Is the block of code in that conditional getting executing twice as well?