Community Forum
    • Blog
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    Remora V1.3 NodeMCU Nouvelle Version Logicielle + API Locale

    Scheduled Pinned Locked Moved Remora
    remoralocaleapinodemcuesp8266
    119 Posts 17 Posters 119.6k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • Dany21000D Offline
      Dany21000
      last edited by

      C'est ce à quoi je pense. Ce qui nécessite un travail côté logiciel.
      Regarde coté alimentation, essaye de le faire fonctionner avec une alimentation de smartphone, sans celle du tableau.

      Soit le régulateur qui alimente la puce esp est fatigué, soit c'est ton alimentation en rail din,est elle a 5v en charge ?
      Sinon c'est une instabilité logicielle...

      J'utilise l'alimentation en rail din qui alimente une batterie avec deux ports usb, un pour Remora, l'autre pour jeedom.
      Aucun problème. Remora alimenté par le port usb du nodemcu et pas par le bornier.
      C'est une installation temporaire pour le moment.

      1 Reply Last reply Reply Quote
      • B Offline
        bsheep
        last edited by

        Bonsoir, pour savoir si remora à rebooté il y a l étiquette virtuelle _UPTIME qui est disponible dans l url /tinfo.

        Elle correspond au nombre de secondes depuis que remora est démarrée.

        Pour info, je suis à 3j d' UPTIME.

        1 Reply Last reply Reply Quote
        • O Offline
          omyxcol
          last edited by

          Merci pour cette info précieuse. Je viens de lancer une requête sur ce label et bingo à peine 2h depuis le dernier reboot. Des mon retour je vérifierai le 5v sous charge de l alimentation rail din et le reste???. Je ne manquerai pas de vous tenir informé sur la cause de ces resets. Si ça marche chez vous ça marchera chez moi!😃

          O 1 Reply Last reply Reply Quote
          • O Offline
            omyxcol @omyxcol
            last edited by

            Hello
            Je pense avoir trouvé à distance la cause de mes resets... je me suis dit passons les fp en confort histoire de ne plus alimenter les optos. Comme par hasard le compteur est à plus de 10h. Donc ça veux dire que je ne vais pas être le seul, potentiellement ceux qui comme moi ont les optos blancs sur le 3.3v (cf le post sur les problèmes de fp) vont avoir le problème. Ça sent le changement des optos pour à nouveau les alimenter en 5v, ou un bon vieux régulateur 3.3v à souder avec des fils au niveau du jumper opto (il y a du 5v, le départ de l alimentation des optos il ne reste plus qu'à prendre une masse et certainement souder un condo sur le 3.3)
            Avant de prendre mon fer à souder je testerai une diminution de la tension d'alimentation. Si a 4.5v le nodemcu fonctionne le relais aussi et si ça résout la sensibilité des optos en mode 5v. Ce sera gagné... je ne peux malheureusement pas tester tout de suite pour vous donner la solution.

            1 Reply Last reply Reply Quote
            • B Offline
              bsheep
              last edited by Charles

              @Charles
              Bonjour,

              J'utilise la version 1.3 de la carte et la dernière version du logiciel (rev 1ae2a85). Cependant, je n'arrive pas à piloter le fp7, je n'ai pas d'erreur (je sors toujours du 230V quelque soit le mode.)
              Quand je regarde le code source du fichier https://github.com/hallard/remora_soft/blob/master/pilotes.cpp (ligne 15)

              #if defined (REMORA_BOARD_V10)
                int SortiesFP[NB_FILS_PILOTES*2] = { FP1,FP2,FP3,FP4,FP5,FP6,FP7 };
              #else
                int SortiesFP[NB_FILS_PILOTES*2] = { FP1,FP2,FP3,FP4,FP5,FP6 };
              #endif
              

              Je vois qu'il manque le dernier fil pilote (FP7) dans la condition #else.
              Est-ce qu'il s'agit d'un oublie ? d'une limitation de la version 1.3 (du genre ne pas cabler a cause d'une limitation matérielle?).

              Merci

              1 Reply Last reply Reply Quote
              • CharlesC Offline
                Charles
                last edited by

                @omyxcol
                l'idée de départ était d'alimenter les optos en 5V justement pour ne pas tirer sur le régulateur du NodeMCU (qui semble être un clone de piètre qualité du réel AMS117 3.3V)
                Si en plus il provoque des reset quand on tire un peu dessus c'est pas cool.
                Ceci dit, peut être changer le régulateur par un vrai ASM1117 sur le node MCU peut être un bon test.
                Sinon une autre idée, laisser en 5V mais augmenter la résistance de déclenchement de 390 Ohm car actuellement on a 5V-3.3V-1.2V/390 = 1.2mA et comme ça semble déclencher les optos blancs, Peut être mette une 1K (0.5mA) ne déclencherait pas les optos, même pousser à 1.2K ?

                1 Reply Last reply Reply Quote
                • CharlesC Offline
                  Charles
                  last edited by Charles

                  @bsheep
                  tu as parfaitement raison, c'est du à un vieil historique. Je viens de corriger, le repo est à jour!

                  #if (NB_FILS_PILOTES==7)
                    int SortiesFP[NB_FILS_PILOTES*2] = { FP1,FP2,FP3,FP4,FP5,FP6,FP7 };
                  #elif (NB_FILS_PILOTES==6)
                    int SortiesFP[NB_FILS_PILOTES*2] = { FP1,FP2,FP3,FP4,FP5,FP6 };
                  #else
                    #error "Définition du nombre de fils pilotes inccorect"
                  #endif
                  
                  1 Reply Last reply Reply Quote
                  • Dany21000D Offline
                    Dany21000
                    last edited by

                    Je me demande si on aurait pas meilleur temps de remplacer l'alimentation 5 par une 3.3...
                    Je vais essayer dans la soirée, j'ai récupéré un pc de bureau avec un bloc qui fournit les 2 tensions.

                    Je couperai la piste des optocoupleurs, une soudure et jalimente en 3.3 depuis le bornier.

                    1 Reply Last reply Reply Quote
                    • A Offline
                      aherben
                      last edited by

                      Bonjour à tous,

                      J'ai monté mon kit, tout fonctionne à l'exception de tinfo :

                      Je ne récupère que le UPTIME :
                      {
                      "_UPTIME":684532
                      }

                      Si quelqu'un à une idée je suis preneur

                      1 Reply Last reply Reply Quote
                      • O Offline
                        omyxcol
                        last edited by

                        Bonsoir à tous ☺
                        J'ai remis les optos en 5v. J'ai réglé le régulateur 5v rail din au min à 4,5v. Les fp fonctionnent et pour l instant pas de reset.

                        0_1451509389743_20151230_195750.jpg

                        1 Reply Last reply Reply Quote
                        • ThibaultT Offline
                          Thibault
                          last edited by

                          Salut @aherben !
                          On dirait qu'il ne décode pas bien la téléinfo.
                          Quelle url requêtes-tu?
                          Qu'obtiens-tu sur la liaison série quand le NodeMCU est connecté en USB?

                          @omyxcol Bonne nouvelle, pourvu que ça dure 🙂

                          A 1 Reply Last reply Reply Quote
                          • CharlesC Offline
                            Charles
                            last edited by

                            @omyxcol
                            Pas bête, l'idée du 4.5V, tant mieux si ça fonctionne.

                            Sinon, à tester mais je reste persuadé qu'avec les optos blancs, les laisser en 5V (pour ne pas tirer sur le régul du NodeMCU) et changer la 390 Ohm de pilotage de l'opto par une 1K (ou 1.2K) devrait régler le problème.

                            @Dany21000
                            Oui tout alimenter en 3V3 va effectivement régler le soucis. en revanche pas sur du résultat quand tu vas brancher l'USB sur le nodeMCU (5V), le 5V était aussi pour la compatibilité avec Spark.

                            O 1 Reply Last reply Reply Quote
                            • O Offline
                              omyxcol @Charles
                              last edited by

                              Vous avez raison, je changerai les resistances par des 1k, mais je ne les ai pas sous la main (en commande) mais ça ou le chauffage en hors gel au mois de décembre... Si un autre remoriste est dans mon cas il peut faire ça en attendant.☺
                              Prochaine étape la teleinfo.
                              A bientôt

                              1 Reply Last reply Reply Quote
                              • Dany21000D Offline
                                Dany21000
                                last edited by

                                J'ai alimenté en 3.3v les optocoupleurs, via le régulateur du nodeMCU.
                                Le remora est alimenté via l'USB du nodeMCU lui même alimenté par le Raspberry Pi 2 de jeedom.
                                L'uptime est plutôt bon, plusieurs jours déjà.

                                Je pense tester des résistances de 1k, il faut juste que j'aille les chercher au magasin électronique à 300m.

                                1 Reply Last reply Reply Quote
                                • Dany21000D Offline
                                  Dany21000
                                  last edited by Dany21000

                                  J'ai fais une modification du code afin d'avoir l'uptime via /tinfo même si la télé information est désactivée (fonction tinfoJSON) :
                                  Description

                                  J'ai essayé de modifier le code du webserver (fonction handleNotFound) pour qu'il réponde sur /uptime :
                                  Description

                                  1 Reply Last reply Reply Quote
                                  • CharlesC Offline
                                    Charles
                                    last edited by Charles

                                    @Dany21000
                                    Ah oui pas idiot ça de pouvoir l'avoir tout le temps, je viens de l'implémenter vite fait dans le setup(), repo à jour

                                        // handler for uptime
                                        server.on("/uptime", [&](){
                                          String response = "";
                                          response += FPSTR("{\r\n");
                                          response += F("\"uptime\":");
                                          response += uptime;
                                          response += FPSTR("\r\n}\r\n") ;
                                          server.send ( 200, "text/json", response );
                                        });
                                    

                                    Et voilà
                                    0_1451564826021_uptime.jpg

                                    1 Reply Last reply Reply Quote
                                    • Dany21000D Offline
                                      Dany21000
                                      last edited by Dany21000

                                      Merci Charles,

                                      J'aurai aussi une autre modification mais je galère un peu pour le moment.
                                      En fait, je voudrais que dans le remora.h, fichier qui contient les variables initiales, on puisse spécifier le mode d'IP réseau dhcp ou fixe (avec les parametres associés).

                                      Mais je ne désespère pas y arriver et proposer ici cette modification.

                                      1 Reply Last reply Reply Quote
                                      • Dany21000D Offline
                                        Dany21000
                                        last edited by Dany21000

                                        Dans le fichier remora.h, juste en dessous des parametres Wifi, j'ajoute ceci :

                                          // Définir ici les parametres IP
                                          // de connexion à votre réseau Wifi
                                          // =====================================
                                          #define DEFAULT_WIFI_IP_FIXE // commenter cette ligne pour rester en adresse IP dynamique
                                          IPAddress ip(192,168,50,251);
                                          IPAddress masque(255,255,255,0);
                                          IPAddress passerelle(192,168,50,254);
                                          IPAddress dns1(192,168,50,254);
                                          
                                        

                                        Dans le fichier remora_soft.ino, dans la fonction "WifiHandleConn", ajout :

                                        
                                            Serial.println(F("========== SDK Saved parameters End")); 
                                        APRES LA LIGNE CI DESSUS , AJOUT DE : 
                                        
                                        
                                        	#ifdef DEFAULT_WIFI_IP_FIXE
                                              WiFi.config(ip, dns1, passerelle, masque);    
                                        	#endif
                                        		
                                        
                                        
                                        		
                                        

                                        EDIT et j'obtiens des erreurs de compilation sur un type non défini :
                                        remora.h:80: error: 'IPAddress' does not name a type
                                        IPAddress ip(192,168,50,251);
                                        ^

                                        1 Reply Last reply Reply Quote
                                        • A Offline
                                          alban
                                          last edited by

                                          Bonjour,
                                          Dans le même ordre d'esprit, j'ai modifié la ligne 96 du fichier webserver.cpp comme suit :

                                                  response += F(",\"") ;
                                          

                                          devient

                                                  response += F(",\r\n\"") ;
                                          

                                          afin d'avoir un affichage JSON cohérent avec les autres variables.
                                          Par contre, je n'ai toujours rien trouvé pour le problème des redondances de variables dans la téléinfo

                                          1 Reply Last reply Reply Quote
                                          • A Offline
                                            aherben @Thibault
                                            last edited by

                                            @Thibault

                                            Salut Thibault, j'utilise la commande http://192.168.1.98/tinfo

                                            Pour la liaison série il faut que je fasse des tests.

                                            1 Reply Last reply Reply Quote
                                            • First post
                                              Last post
                                            Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB