I'm rewriting my code to use the NTPclient.h library to sync internal RTC every minute. It's a shame that it has to be done this way but I don't see any other solution for now. My R4 WiFi RTC drifts 2 seconds each minute !
So I'm using:
timeClient.update(); // (from NTPclient.h)
currentTime = (timeClient.getEpochTime()); // (from NTPclient.h)
RTC.setTime(currentTime); // (from RTC.h)