ntptime — client NTP simple

Ce module fournit un petit client pour le protocole NTP (Network Time Protocol), utile pour récupérer l’heure UTC actuelle depuis un serveur de temps Internet et, éventuellement, régler l’horloge temps réel embarquée. Il effectue une unique requête UDP vers un serveur NTP et décode l’horodatage 64 bits renvoyé.

Ce module nécessite une connexion réseau fonctionnelle. Son horodatage 32 bits transmis sur le réseau est automatiquement corrigé pour le débordement NTP de 2036, ce qui permet à l’implémentation de rester valide jusqu’en février 2160.

Fonctions

ntptime.time() int

Interroge le serveur NTP configuré (host) et renvoie l’heure UTC actuelle sous forme d’un nombre entier de secondes depuis l’epoch de MicroPython.

L’epoch de MicroPython est détecté à l’exécution à l’aide de time.gmtime(). Les epochs de 1970 (Unix) et de 2000 sont tous deux pris en charge ; tout autre epoch lève une Exception.

Les erreurs réseau sont propagées à l’appelant ; le socket sous-jacent est toujours fermé avant le retour.

ntptime.settime() None

Récupère l’heure actuelle à l’aide de time() et règle en conséquence l’horloge RTC embarquée via machine.RTC.

Notez que MicroPython ne prend pas en charge les fuseaux horaires : l’horloge RTC est toujours réglée en UTC.

Constantes

ntptime.host: str

Le nom d’hôte du serveur NTP à interroger. Vaut par défaut "pool.ntp.org". Réaffectez-le à l’exécution pour le remplacer, par exemple ntptime.host = "time.google.com".

ntptime.timeout: int

Délai d’expiration du socket en secondes appliqué à la requête UDP NTP. Vaut par défaut 1. Augmentez-le sur les réseaux lents ou à forte latence.