Установка времени DS3231 на ESP8266

Нет ответов
Antsanv
Offline
Зарегистрирован: 18.12.2018

Устанавливаю время такой функцией
 

bool ESPTimeFunc::setTimeRTC(time_t epoch_time) {
    //ESP.eraseConfig();
    struct timeval epoch;
    epoch = {epoch_time, 0};
     settimeofday(&epoch, nullptr);
    _rtc.adjust(DateTime(epoch_time));    
}

Устанавливается верно, но после перезагрузки прибавляет 8 часов.
 

Пытался устанавливать переменные 

settimeofday(&epoch, nullptr);
    if(_isDayLightSaving) {
        setenv("TZ", "CET-0CEST,M3.5.0,M10.5.0/3", 3);   // UTC + DST
        tzset();
    }
    else {
        setenv("TZ", "CET-0", 3);   // UTC
        tzset();    
    }

Эффекта с 0-вым смещением временной зоны нет.

Может кто работал так с временем?

ПС: при получении времени от NTP (configTime) все работает корректно.