Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Horloge linky sur l'Esclave
#1
Bonjour, 
J'ai un couple de routeurs maitre + esclave .

Dans les données générales de l'esclave on voit l'heure du linky s'afficher correctement, mais quand on demande à l'esclave d'utiliser l'horloge du linky, le message "attente mise à jour horloge linky" s'affiche indéfiniment. 
Fausse manipulation de ma part ou amélioration possible ?

Merci à vous, 

Philippe
Répondre

#2
Salut

oui fausse manipulation, car seul le maitre, qui est relié physiquement au linky peut obtenir l'heure linky.

l'esclave devrait être coché ou internet ou interne (je choisirais internet)
Répondre

#3
Sad 
(08-11-2025, 02:39 PM)grostoto a écrit : Salut

oui fausse manipulation, car seul le maitre, qui est relié physiquement au linky peut obtenir l'heure linky.

l'esclave devrait être coché ou internet ou interne (je choisirais internet)

C'est bien dommage car l'heure du linky est bien présente sur l'esclave dans l'écran "données brutes"!
Répondre

#4
tu es sur quelle version de routeur ?
Répondre

#5
V 15.00
Répondre

#6
André a dit qu'il ajoutera cette possibilité à une future version (que les esclaves puissent récupérer l'heure sur le routeur maître).
Ainsi, seul le maître aurait besoin d'avoir un moyen de mise à l'heure.
Répondre

#7
Merci!
Répondre

#8
(08-11-2025, 12:15 PM)Philippe38 a écrit : Bonjour, 
J'ai un couple de routeurs maitre + esclave .

Dans les données générales de l'esclave on voit l'heure du linky s'afficher correctement, mais quand on demande à l'esclave d'utiliser l'horloge du linky, le message "attente mise à jour horloge linky" s'affiche indéfiniment. 
Fausse manipulation de ma part ou amélioration possible ?

Merci à vous, 

Philippe

c est vrai que l heure est presente dans la partie "donneés brutes" des esclaves , mais pas partagé dans la partie accueil , il doit pas manqué grand chose , pour l avoir en accueil pour quel soit pris en compte pour programmé les action
Répondre

#9
Bonjour,

  si quelqu'un veut tester:

3 modif dans pagesHtmlPara.h

Code :
            <label for='Hor3' style='text-align:right;'>IT 10ms/100Hz (Triac)</label><input type='radio' name='Horlo' id='Hor3' value="3" onclick="checkDisabled();"  >
            <label for='Hor4' style='text-align:right;'>IT 20ms/50Hz</label><input type='radio' name='Horlo' id='Hor4' value="4" onclick="checkDisabled();"  >                
            <span id='ReqScrExt'><label for='Hor5' style='text-align:right;'>depuis ESP externe</label><input type='radio' name='Horlo' id='Hor5' value="5" onclick="checkDisabled();"'></span>
        </div>
      </div>

Code :
    GID('ligneTopicP').style.display = (GID("Pmqtt").checked) ? "table-row" : "none";
    Source = document.querySelector('input[name="sources"]:checked').value;
    GID('ReqScrExt').style.display = (Source=='Ext' && GID("RMSextIP").value != "") ? "inline" : "none";
    if (Source !='Ext') Source_data=Source;
    AdaptationSource();

Code :
             ModePara=Para[9];
             Horloge=Para[10];
               if (Horloge == 5 && Source != "Ext") Horloge = 0; // remet horloge internet si pas de source externe
             ESP32_Type=Para[11];
             var IpNoms=Para[12].split(RS);

quelques lignes dans Source_Externe.ino
Code :
    for (int i = 0; i <= idx; i++) {
      switch (i) {
        case 0:  // date&heure
          if (Horloge == 5) { // heure depuis la source exterieure
            JourLinky = data_[i].substring(0, 10);
            Int_HeureLinky = data_[i].substring(11,13).toInt();
            Int_MinuteLinky = data_[i].substring(14, 16).toInt();
            Int_SecondeLinky = data_[i].substring(17, 19).toInt();
          }
        case 1:
          Source_data = data_[i];

et pour finir dans Stockage.ino
Code :
    int16_t minute = atoi(buffer);
    Int_Minute = minute;
  } else if (Horloge == 1 || Horloge == 5) {  //Heure Linky ou RMS distant
    Int_Heure = Int_HeureLinky;
    Int_Minute = Int_MinuteLinky;
    Int_Seconde = Int_SecondeLinky;
    sprintf(buffer, "%d:%02d:%02d", Int_Heure, Int_Minute, Int_Seconde);
    DATE = JourLinky + " " + String(buffer);
    int32_t p = JourLinky.indexOf('/');
    struct tm myDate;
    myDate.tm_mday = JourLinky.substring(0, p).toInt();
    myDate.tm_mon = JourLinky.substring(p + 1, JourLinky.indexOf('/', p + 1)).toInt() - 1;  // janvier = 0
    myDate.tm_year = JourLinky.substring(JourLinky.lastIndexOf('/') + 1).toInt() - 1900;  // reference an 1900
    myDate.tm_hour = Int_Heure;
    myDate.tm_min = Int_Minute;
    myDate.tm_sec = Int_Seconde;
    time_t timestamp = mktime( & myDate );
    struct timeval now = { .tv_sec = timestamp };
    settimeofday(&now, NULL);
    HeureValide = true;
  } else {  //Horloge interne ou par IT 10 ou 20ms
    sprintf(buffer, "%d:%02d:%02d", Int_Heure, Int_Minute, Int_Seconde);


Pièces jointes Miniature(s)
   
Merci André Smile ,
Routeur V16.00b (since V2.01) / 1xESP32 (IP fixe) / Source UxI / 5 actions
Panneaux 1680Wc
1 Triac : ECS 2000W
1 SSR (multi) : ECS 1800W
1 SSR (On-Off) : Circulateur plancher chauffant eau 50W
1 SSR (multi) : circuit d'eau 1500W
1 SSR (multi) : Ultime 2000W
Répondre

#10
Michy

Je suis en train d'implanter en version 16.1 la mise à l'heure par la lecture d'un ESP externe, Linky ou pas.

André
Répondre



Atteindre :


Utilisateur(s) parcourant ce sujet :
2 visiteur(s)

Moteur MyBB, © 2002-2025 Melroy van den Berg.