RESUELTO: Orientacion sobre codigo de fechas

Bueno llegue tarde, pero una forma fácil de trabajar con fecha es el tiempo unix y la misma librería da las herramientas .Por ejemplo si quisieras sumar 4 años de 365 a una fecha y obtener la fecha (inclusive los bisiestos) con formato "humano"

#include <Wire.h>
#include "RTClib.h"

void showDate(const char* txt, const DateTime& dt) {
    Serial.print(txt);
    Serial.print(' ');
    Serial.print(dt.year(), DEC);
    Serial.print('/');
    Serial.print(dt.month(), DEC);
    Serial.print('/');
    Serial.print(dt.day(), DEC);
    Serial.print(' ');
    Serial.print(dt.hour(), DEC);
    Serial.print(':');
    Serial.print(dt.minute(), DEC);
    Serial.print(':');
    Serial.print(dt.second(), DEC);
    Serial.print(" = ");
    Serial.print(dt.unixtime());
    Serial.print("s / ");
    Serial.println();
}

void setup () {
Serial.begin(57600);
    DateTime Hora1 (2021, 12, 27, 0, 0, 0);
    showDate("hora",Hora1);
    uint32_t b= 3600UL*24UL*1460UL;//4 años de 365 dias
    uint32_t a =Hora1.unixtime()+ b;//
    DateTime dias_despues ( a); // Fecha 3000 dias despues
    showDate("1460 Dias despues", dias_despues);
}
void loop () { }