Viker

CannaWeedeur
  • Compteur de contenus

    379
  • Inscription

  • Dernière visite

Messages posté(e)s par Viker

  1. Yop,

     

    @JH63 concernant le wifi en fouillant le code je propose ceci (mais je n'ai pas testé):

    Donc à toi de tester en n'oubliant pas d'enlever ton wifi actuel de la redboard avant test.

     

    ligne 194 on trouve:

    String SSID, PSW;

    juste en dessous ajouter:

    SSID="MonSSIDSansEspace";

    PSW="MonPasswordSansEspace";

     

    puis ligne à la ligne 2377 on trouve:

    displayInitScreen(80,"CONNECTION WIFI");

    juste en dessous ajouter:

    WIFIDATA->setSSID(SSID);

    WIFIDATA->setPSW(PSW);

    WIFIDATA->saveAll();

    delay(150);

     

    edit: par contre le problème si cela fonctionne c'est que ton wifi sera celui spécifié dans

    SSID="MonSSIDSansEspace";

    PSW="MonPasswordSansEspace";

    à chaque reboot de la redboard et donc si tu changes dans l'interface nextion ton wifi pour un autre wifi au prochain reboot tu reviens sur ce wifi.

    Je ne vois pas trop l'intérêt vu qu'une fois rentré par l'interface nextion, il est en mémoire et ce même après un nouvel upload du programme.

     

    ++

    Viker

  2. Yop,

    @JH63 j'ai remis en version 3.5.0 et au passage j'ai remis la lib OneWire-2.3.5. J'ai de nouveau l'écran Nextion avec enregistrement des paramètres fonctionnel.

     

    Pour remettre en version 3.5.0 je suis allé dans PIO Home, platforms, onglet embedded, espressif 32 et là il y a un menu installation où on peut choisir la version.

    Puis retour sur platforms et désinstallation de la version 4.2.0.

     

    ++

    Viker

  3. Yop,

    @JH63 pour le ssid et mot de passe tu veux dire dans l'interface du nextion ou directement dans main.cpp?

     

    Sinon depuis la mise à jour de la plateforme Espressif 32 version 4.2.0 j'ai un gros problème, je n'arrive plus a faire d'enregistrement de valeur dans les paramètres du nextion et je ne sais vraiment pas comment y remédier. @JH63 Quel est ta version de Espressif 32 visible dans l'onglet PIO Home section platforms?

     

    ++

    Viker

  4. Yop,

    @JH63

    Pour rappel:

    sensors_delay à 10000 ms et looptime à 2s --> erreurs sondes A au bout de 10 h.

    Du coup je repasse la valeur à 20000 sans même tester 15000.

    motorDelay passe à 20000 car sans nouvelle mesure de température inutile de faire calculer une nouvelle vitesse de moteur.

    Et enfin ledDelay passe à 30000.

     

    Encore des erreurs sondes salles A au bout de 2 à 3 jours.

    Je décide de regarder le code plus en profondeur.

    (Mais avant de faire cela je mets à jour sous Visual Studio Code dans platformio la plateforme ESP 32 avec passage en version 4.2.0.

    Lors de la compilation j'ai une erreur sur la lib onewire. Je mets à jour la librairie en la remplaçant la version 2.3.5 par la 2.3.6 récupérable ici.

    En recompilant plus d'erreurs.)

     

    En regardant le code je m’aperçois que la variable looptime est certes déclarée mais non utilisée dans le programme main.cpp

    Je pense que Gen a due l'utiliser puis la virer dans le programme délivré.

     

    En cherchant ce qui peut faire des erreurs sur les sondes AM2320 je suis tombé sur ce sujet qui montre que la cohabitation des sondes AM2320 et du LCD entraine des erreurs sondes. En gros il ne faut vraiment pas que les sondes soient consultée pendant un affichage lcd.

     

    Du coup, je viens de modifier main.cpp afin de différer l'affichage du LCD en utilisant la variable looptime.

    La modification se fait à partir de la ligne 2531:

     

    Remplacement de : 

      stop = millis();
      delta = stop - start;

     lcdDisplayInfo(addressIP,now.unixtime(),delta,AM2320_A_error_counter,AM2320_B_error_counter);
      if(delta <1000)
      {
         delay(1000-delta);
      }
      firstLoopCycle = false;

     

    Par:

      stop = millis();
      delta = stop - start;
      if(delta <loop_time)
      {
         delay(loop_time-delta);
      }
      lcdDisplayInfo(addressIP,now.unixtime(),delta,AM2320_A_error_counter,AM2320_B_error_counter);
      firstLoopCycle = false;

     

    Looptime prends la valeur de 4000 car dans le processtime j'ai vu des valeurs allant jusqu'à 3500-3600.

     

    Donc tests en cours et retour sous quelques jours.

     

    ++

    Viker

     

     

     

     

     

    • Like 1
    • Thanks 1
  5. Comme l'ensemble des fils de discutions de Gen sont verrouillés pour le moment vue son absence, je propose ici la continuité des discutions concernant la RED BOARD.

     

    ++

    Viker

     

    Edit: suite à nos échanges sur ce post le programme de la redboard a bien changé avec correction de bugs et ajout ne nouvelles fonctionnalités.

    Vous pouvez trouver ce nouveau programme avec le détails des changements et des nouvelles fonctionnalités ici.

    N'hésitez pas à partager sur le sujet de la redboard et faire vos retours sur cette nouvelle programmation.

    • Thanks 1
  6. Yop,

    @JH63 avec sensors_delay à 10000 ms et looptime à 2s --> erreurs sondes A au bout de 10 h.

    Du coup je repasse la valeur à 20000 sans même tester 15000.

    motorDelay passe à 20000 car sans nouvelle mesure de température inutile de faire calculer une nouvelle vitesse de moteur.

    Et enfin ledDelay passe à 30000.

     

    ++

    Viker

  7. Yop,

    @Gen

    Maintenant, que je n'ai plus de problèmes avec la perte de la sonde A avec le changement du temps looptime à 2s au lieu de 1s ainsi que changement du sensors_delay de 5000ms à 20000ms (merci encore à JH63), je continue les tests.

    Je relèves deux bugs:

    1) Concernant la sortie ventilateur pwm, si je fixe sa vitesse minimum à par exemple 36, le ventilateur passera malgré tout en dessous de ce seuil.

    2) La sortie led pwm fonctionne à l'envers. Si je mets une puissance à 80% je vais avoir un duty cycle à 20 et non 80. (Je n'ai pas testé en mode résistif mais il est possible que cela soit aussi à l'envers.)

     

    Edit 1: peut être solution pour les deux bugs mais je n'ai pas encore testé

     

    1) dans la librairie CALCPWM.ccp ligne 63:

    Changer : if(returnVal < 0){returnVal = 0 ; }

    par: if(returnVal < _minPWM){returnVal = _minPWM ; }

     

    2) dans la librairie LED2CHAN.cpp ligne 390:

    changer: valueToSend = (byte)(255 - (int)((valueProgrammed * 255)/100));

    par : valueToSend = (byte)((int)((valueProgrammed * 255)/100));

     

    Edit 2: Je viens de tester et cela fonctionne.

    @JH63Lors de cette reprogrammation de la redboard j'en ai profiter pour tester le sensors_delay remis à sa valeur d'origine soit 5000ms tout en gardant le looptime à 2s. Je bench pour voir si j'ai de nouveau des erreurs sondes qui apparaissent ou pas.

     

    ++

    Viker

    • Thanks 1
  8. Yop,

    @JH63

    48h de test sans aucuns problèmes.

    En résumé, j'avais un problème sur le bus i2c, en cause l'utilisation d'un câble blindé sans paires de fils torsadés.

    Suite à cette correction, j'avais encore des soucis de perte de la sonde A.

    Suite au changement (lignes 170 et 172 du programme) du temps de consultation des sondes à 20s et du temps process à 2s, je n'ai plus aucun problème.

     

    ++

    Viker

  9. Yop,

    @JH63

    En effet, les 20s ne changent pas grand chose dans la surveillance des températures et humidité. Cependant, je voulais savoir si cela avait une incidence sur les erreurs sondes tout en conservant les 2s de process.

    Si le test actuel est stable c'est à dire sans erreurs sondes et sans perte lcd alors je remettrait la valeur à 5s.

    Sinon, en mettant les sondes am2320 côte à côte, je n'ai pas de décalage sur les températures et l'humidité (juste 0.1°C et 1.5% mais on est dans les marges d'erreurs)

    Concernant le CO2 j'ai les sondes qui actuellement m'indiquent 729 et 742 ppm donc je pense que là encore on est dans la marge d'erreur. J'ai pu relever jusqu'à 100ppm de différence.

     

    ++

    Viker

    • Thanks 1
  10. Yop,

    @JH63

    bonnes nouvelles. Si cela continues de fonctionner sans erreurs donne la procédure pour changer ces deux paramètres.

    J'imagine que tu as changé comme cela les lignes 170 et 172:

    unsigned long loop_time          = 2000;  // Définition du temps standard pour un cycle loop
    unsigned long sensors_delay      = 20000;  // Délais d'interrogation des sondes

     

    Je teste retour dans 24-48h.

     

    Edit: Cela fait 48h que je teste et aucunes pertes de sondes salle A ni du lcd comme auparavant. Tout fonctionne correctement. RAS

     

    ++

    Viker

  11. Yop JH63,

     

    Non je ne perds que la sonde A.

    Les sondes CO2 fonctionnent parfaitement même lorsque la sonde A plante. Idem pour la sonde B qui continue de fonctionner sans problèmes.

    Par contre lorsque la sonde A plante, je peux avoir des caractères bizarre sur le lcd et lors d'un reset le wifi ne se connecte plus.

    Quand j'enregistre les paramètres sur le Nextion, il n'y a aucun problème.

     

    ++

     

    Viker

    • Thanks 1
  12. Le 24/02/2022 à 19:01, Gen a dit:

    Yop

    est-ce que d'autres ont le même problème ?

     

    ++

    GEN

     

    Yop,

     

    @Gen donc même problème pour moi, il n'y a que la salle A qui a ce soucis d'erreurs de sonde qui a pour conséquence de faire planter les relais salles A ainsi que la commutation des ventilateurs vu qu'il n'y plus de valeurs données par la sonde.

    Cela influe également sur le wifi: lors d'un reset le wifi ne peux se connecter et la sonde A continue de donner des erreurs. Seule une extinction de la redboard remet en état de marche.

     

    ++

    Viker

  13. Yop,

     

    @JH63 à priori Il faut que le sda et le scl soit sur la même paire. Cela supprime les parasites induits pas champs magnétique.

    Pour l'instant je suis à 10h sans problèmes et pour moi c'est déjà un grand changement. Avant j'avais de façon aléatoire des problèmes sur la sonde A de façon variable dans la survenue. Et dès que ces erreurs apparaissaient, souvent je perdais l'affichage lcd.

    Je continue le bench et je donne mon retour au bout de 24h.

     

    Edit: Ce matin j'ai vu que la sonde A avait pleins d'erreurs. En appuyant sur le bouton reset, la sonde se relance mais impossibilité de reconnexion wifi. Du coup, extinction de la redboard et reboot.

     

    Edit2 : Depuis la précédente extinction reboot, la redboard a tournée 24h sans aucunes erreurs sur les sondes. En revanche, si je fais grimper l'humidité et la température sur les sondes am2320, j'ai bien un changement d'affichage des valeurs d'humidité et de température, du coup la vitesse des ventilateurs changent mais par contre, alors que le pictogramme dessiccateur apparait je n'ai pas de commutation au niveau des relais dessiccateurs. Suite à un reset sans extinction tout revient dans l'ordre.

     

    Edit3: Au bout de 10h erreurs sur sonde A, aucune valeurs ne changent. Pire plus de commutation d'aucun relais salle A tel éclairage ou dessiccateur.

    La salle B continue de fonctionner sans problème. Si je fais un reset, la sonde A continue de faire des erreurs et le wifi ne se connecte pas. Seule une extinction remet dans l'ordre.

     

    ++

    Viker

    • Thanks 1
  14. Yop,

     

    Finalement, j'ai remplacé mes câbles blindés non torsadés pour les sondes AM2320 par du câble rj45 blindé s/ftp pimf cat 6 (le câble a un blindage tresse extérieur ainsi que chaque paires torsadées).

    L'alimentation et le gnd sont sur une paire torsadée et le sda et scl sur une autre paire torsadée. Pour chaque sonde j'ai 3 mètres de câble.

    Pour l'instant, après 8 heure de test je n'ai plus aucun symptômes de perte de lcd et/ou d'erreurs sur la sonde A.

     

    En conclusion, il faut impérativement du câble torsadé pour le bus i2c.

     

    J'ai refait des boitiers pour sondes AM2320 avec un passage de câble de 6mm pour les câbles rj45.

    En pj vous trouverez les fichiers pour impression 3d de ces boitiers. Le fichier est en .pdf qu'il faut renommer en .rar, puis décompressez l'archive.

     

    ++

    Viker 

    Boitiers_AM2320.pdf

    • Like 1
  15. Yop,

     

    @Gen Rappel, j'ai des erreurs sur la sonde am2320 salle A ainsi que sur le lcd dont l'affichage disparait au bout d'un certain temps.

    Qu'as-tu comme câbles pour les différentes sondes et en quel longueur? As-tu des erreurs sur les sondes?

    Tous les appareils (nextion, lcd, sondes am2320 et platines moteur sont sur le même bus i2c ou y'a-t-il plusieurs sorties i2c? Y'a-t-il des résistances pullup sur le sda et scl?

    Est-il envisageable de mettre les sondes am2320 en lien avec le bus i2c via deux p82b715 pour pallier aux problèmes d'i2c?

     

    ++

    Viker

     

  16. Yop

     

    oui j'ai des erreurs sur la sonde salle A et l'affichage de l'écran LCD disparait. Donc problème i2c à priori. Là j'ai pas trop le temps de mettre les mains dans le cambouis. J'ai déjà raccourcis les câbles à 2,5m et du coup les problèmes de déclenchement des platines moteurs a été résolu mais j'ai encore ces erreurs.

    Je regarderai tous mes câblage de sonde de nouveau quand j'aurai le temps.

     

    ++

    Viker

  17. Yop,

     

    @Gen Bien le gestion du chauffage par l'I/O 23.

    Cependant je me demandais si certaine sorties comme le dessiccateur  ou/et brumisateur pouvaient être "programmables" dans le sens que l'on choisie si elles servent en tant que soit brumisateur soit dessicateur soit chauffage? Par exemple je sais que je n'utiliserai jamais de dessiccateur mais un chauffage oui.

    Grosse programmation mais tellement de flexibilité derrière que ce serait un plus énorme.

     

    Sinon, on peut voir les erreurs sur les sondes et c'est vraiment une implémentation top pour la fiabilité du système. Mais au delà une gestion des erreurs et des comportements en fonction des erreurs serait un gage de sécurité.

    Exemple si les sondes am2320 ne répondent plus alors le chauffage, la brumisation, le dessiccateur se coupent, les ventilateurs se mettent en vitesse 3 et un message d'erreur vient sur l'écran nextion. Oui c'est une grosse programmation mais là on arrive sur du matos pro.

     

    A part ces quelques suggestions qui me semble augmenterai fortement le potentiel de la redboard, je trouve que celle-ci est vraiment un beau bébé. Bravo!

     

     

    Le 10/02/2022 à 15:18, Gen a dit:

    Yop

    à @JH63

     

    J'ai zappé ta requête, désolé.. je vais écrire le bout de qui te manque dans les jours qui viennent, ce sera sur l'I/O 23.

    Ton souci d'upload provient de soit ton environnement (cas rare) ou plus souvent du câble USB que tu utilises, soit il n'est pas dédié à la transmission ou que les connecteurs sont défectueux (mauvais contact)

     

    Pour les autres, j'espère que la Red Board vous plaît et qu'elle convient à vos attentes.. si vous avez des questions n'hésitez pas, j'y répondrai lors de mon prochain passage

     

    ++

    GEN

     

     

     

    • Like 1
  18. Yop,

     

    @Gen En effet au début j'ai modifié le programme pour effacé l'eeprom mais j'ai ensuite rétablie le programme originel quand j'ai découverts le RESET via le menu setup, chose que j'ai ensuite indiqué dans le forum ;)

     

     

    Le 10/02/2022 à 15:02, Gen a dit:

    Yop


    Vous allez trop vite les gars, j'ai pas terminé le fil de discussion de mise en oeuvre, pour ceux qui config eux même leurs machines, vous devez installer le programme, ensuite faire un reset hardware, et ensuite aller dans la config et faire un reset logiciel (via menu setup qui correspond à l'introduction de toutes les valeurs d'usine par défaut).

     

     j'ai vu que certains avaient modifié leur code..... grosse erreur :-)


    Cette opération ne sera pas à faire quand c'est moi qui m'occupe de la prog des machines.

     

    Pour les impatients, pour les sondes AM2320 je conseille fortement d'utiliser un câble utp,

    Pour les MH-Z19, un câble usb ou un 4 fils blindé est plus que suffisant..

     

    Désolé si je ne suis pas très présent pour le moment, je me consacre à fond pour finaliser les dernières machines (il m'en reste 7 à faire) et j'ai également commencé à attaquer les écrans. Je vous demande encore un peu de patience, j'ai encore quelques soucis de logistique à régler avec aliExpress sur du matos défectueux ou réceptionné cassé..

     

    ++

    GEN

     

    @JH63 Idem j'ai le lcd qui n'affiche plus rien au bout d'un moment et de temps à autres j'ai aussi des erreurs sur ma sonde am2320 salle A. Je n'ai pas du câble utp sur les am2320 mais un câble blindé.

    @Gen J'ai remarqué que la commutation des relais de la redboard pouvait créer la perte de l'écran lcd. Serait-il judicieux de mettre une diode 1N4007 en fly-back entre les poles des bobines de chaque relais?

     

     

    Le 12/02/2022 à 10:38, JH63 a dit:

    Yop,

    Petite question:

    pb sur le lcd il s eteint au bout d un moment

    et l écriture des graphes de la sonde  B, les erreurs proviennent de la sonde ou de la longueur du câble ??

    Les 2 sondes st cote a cote légère diff de mesures, le - est commun au co2 et am2320. 

    @Gen on pourrait avoir le co2 sur le graphique??

     

    Liaison de 2m câble info cat 6 un câble pour chq boitiers de mesures.

     

    ++20220212_102704_001.thumb.jpg.7af37df3ff124212e639532eb9338033.jpg

    @JH63 Il faut faire le poirier pour lire ton nextion 😛

     

    ++

    Viker

     

  19. Yop,

     

    @JH63

    As-tu branché le lcd en plus du nextion?

    Si oui, est-ce que le lcd affiche quelque chose?

    Celui-ci devrait afficher la séquence d’initialisation puis affichage l'adresse ip de la redboard, le nombres de jours, les temps de process et err.sondes.

    Si c'est ok pour ça alors la redboard est bien fonctionnelle.

     

    Je penche alors pour un problème de connexion i2c entre le nextion et la redboard. Les deux ne communiquent pas ensemble du coup le nextion n'affiche que la page d'intro.

    Coupes ton alim, enlèves toutes tes sondes et rebranche l'alim. Le nextion vas-t-il au delà de la page d'accueil?

    Si oui c'est une bonne chose et auquel cas revois la longueur de tes câbles de sondes à la baisse ou/et leur blindage. (Avec 2.5m de câble blindés pour mes sondes j'ai encore des problèmes sur le bus ic2 en symptômes j'ai mon lcd qui au bout d'un moment affiche quelques caractères bizarres en plus des informations habituelles ou encore n'affiche plus rien. J'ai aussi une sonde qui me fait des erreurs).

     

    ++

    Viker

    • Like 1
  20. Yop,

     

    @JH63 fais-tu bien la procédure de Gen:

     

    Le 23/01/2022 à 14:10, Gen a dit:

    Procédure de programmation de l'ESP32 de la carte RED BOARD

    Ii faut mettre la carte RedBoard en mode réception de programme, pour ce faire, appuyer ou court-circuitez la sortie RESET de la carte RB en maintenant le circuit fermé (restez appuyé)
    Tout en maintenant le circuit reset fermé ou le bouton enfoncé, appuyez sur le bouton PROG en maintenant la pression sur celui-ci sans la relâcher, et relâchez la pression du bouton reset ou ouvrez le circuit reset.
    A ce stade votre doigts est toujours en train d'appuyer sur le bouton prog, maintenez cette pression et cliquez dans platformio sur l'option Upload..

     

     

    Si oui est-ce le bon port com? Vérifies dans l'onglet PIO Home et le menu Devices, il va dédecter la redboard et peut être autre chose connecté à ton ordi. Auquel cas pointe sur la redboard.

     

    Si c'est bien la redboard sur le COM5 alors essaies un câbles usb plus court de bonne qualité.

     

    ++

    Viker

    • Like 1