J'ai laissé tourner un module DS3231 connecté à un Arduino Nano depuis un mois et me rends compte d'une dérive de 30 minutes sur l'heure affichée (l'heure avait été correctement initialisée).
La dérive théorique est d'une minute par an.
Le code utilisé est celui disponible dans l'IDE Arduino depuis le dossier Exemples > RTCLib > DS3231.
La bibliothèque est celle fournie avec l'IDE, à savoir RTCLib.
Avez-vous une idée de ce qui peut causer cette dérive ?
La dérive d'une minute par an est valable uniquement dans les limites exposées dans la datasheet.
Notamment je pense aux limites haute et basse de température.
Le DS3231 a-t-il fonctionné dans les limites de température spécifiées ?
Est ce que le nano était alimenté en continu ou le ds3231 fonctionnait sur sa pile/batterie?
Est ce que ton module ds3231 utilise une pile ou une batterie?
30 minutes en un mois ça parait énorme. Est ce qu'il n'y a pas eu d'erreur dans la manip?
Ca vaut le coup de refaire un essai sur une période plus courte (un jour par exemple).
La température a été stable (pièce de maison) pendant toute cette période.
@kamill
Le DS3231 a fonctionné sur batterie pendant 15 jours, donc sans alimentation de l'Arduino.
L'alimentation est une pile "CR2032 Lithium Cell" ; la tension était correcte au lancement du test. Je vais la revérifier.
Pas d'erreur dans la manip !
Je rebranche le tout cette après-mid avec une alimentation continue de l'Arduino pour un essai sous tension de quelques jours et mesure de la dérive éventuelle.
et j'observe aussi de très grandes inexactitudes inexplicables dans le temps. Je n'ai pas encore compris pourquoi j'ai plusieurs minutes de déviation en quelques jours. Mon RTC ralentit, il est donc trop lent.
C'est exactement le même.
Vu le prix de ce module chinois, je crains que les composants soient des fonds de tiroir...
Je viens de commander un module RTC de Adafruit.
C'est (beaucoup) plus cher, mais j'espère avoir du résultat cette fois.
Je le reçois demain et ferai les tests dans la foulée.
Premiers résultats en fin de semaine !
J'attends votre rapport avec impatience. J'ai uniquement installé ce module dans la configuration de test afin de pouvoir tester le bon fonctionnement du code du programme. Au final j'utilise un PCB sur lequel toute l'électronique (à l'exception d'un module TMC2208) est directement soudée. J'ai donc intégré une puce DS3231 directement sur le PCB. J'espère que ce sera plus précis là-bas.
J'ai ce module en marche depuis un mois, (environ) et quand je suis passé à l'heure d'hiver je n'ai pas remarqué de retard appréciable. C'est-à-dire que bien que j'aie mis le nano en veille avec un PIR, le RTC n'a jamais manqué de nourriture. Je l'aurai observé plus attentivement pour voir ce qui se passe.
Après quelques jours de tests, la carte DS3231 fonctionne maintenant sans aucune dérive.
Le problème a dû venir par le fait que le module est resté, pendant deux semaines, uniquement alimenté par sa pile de 3V et que la tension cette dernière diminue progressivement une fois retirée du circuit. Elle est ainsi passée de 3,7 à 3,2 V en 4 jours ; alors sur 15 jours...