2025-04-08 12:44:22
Вот как можно добавить NTP для синхронизации времени:
import rtc
import adafruit_ntp
# Инициализация RTC
rtc_obj = rtc.RTC()
def sync_time_with_ntp():
global rtc_obj
try:
print("Synchronizing time with NTP...")
ntp = adafruit_ntp.NTP(wifi.radio)
ntp.set_time(rtc_obj)
print("Time synchronized with NTP.")
except Exception as e:
print(f"Error synchronizing time with NTP: {e}")
# Замените вызов fetch_time на sync_time_with_ntp в synchronize_time
async def synchronize_time():
"""Синхронизирует время с сервером NTP."""
global sync_timestamp, last_monotonic_time, connected
while True:
if connected:
sync_time_with_ntp()
# Обновите sync_timestamp и last_monotonic_time после синхронизации
sync_timestamp = int(time.time())
last_monotonic_time = time.monotonic()
print(f"Synchronized time: {format_time(sync_timestamp)}")
await asyncio.sleep(3600) # Синхронизируем время каждые 3600 секунд (1 час)
Back to list