ntptime — cliente NTP simple

Este módulo proporciona un pequeño cliente para el Network Time Protocol (NTP), útil para obtener la hora UTC actual desde un servidor de tiempo de internet y, opcionalmente, ajustar el reloj de tiempo real integrado. Realiza una única solicitud UDP a un servidor NTP y decodifica la marca de tiempo de 64 bits devuelta.

Este módulo depende de una conexión de red en funcionamiento. Su marca de tiempo de 32 bits transmitida por la red se corrige automáticamente para el desbordamiento NTP de 2036, lo que permite que la implementación siga siendo válida hasta febrero de 2160.

Funciones

ntptime.time() int

Consulta el servidor NTP configurado (host) y devuelve la hora UTC actual como un número entero de segundos desde la época de MicroPython.

La época de MicroPython se detecta en tiempo de ejecución mediante time.gmtime(). Se admiten tanto la época de 1970 (Unix) como la de 2000; cualquier otra época genera una Exception.

Los errores de red se propagan al llamador; el socket subyacente siempre se cierra antes de retornar.

ntptime.settime() None

Obtiene la hora actual usando time() y ajusta el RTC integrado en consecuencia mediante machine.RTC.

Ten en cuenta que MicroPython no admite zonas horarias: el RTC siempre se ajusta en UTC.

Constantes

ntptime.host: str

El nombre de host del servidor NTP a consultar. El valor predeterminado es "pool.ntp.org". Reasígnalo en tiempo de ejecución para sobreescribirlo, por ejemplo ntptime.host = "time.google.com".

ntptime.timeout: int

Tiempo de espera del socket en segundos aplicado a la solicitud UDP de NTP. El valor predeterminado es 1. Auméntalo en redes lentas o de alta latencia.