Skip to content
  • Blog
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Community Forum

  1. Home
  2. Categories
  3. Remora
  4. Remora V1.3 NodeMCU Nouvelle Version Logicielle + API Locale

Remora V1.3 NodeMCU Nouvelle Version Logicielle + API Locale

Scheduled Pinned Locked Moved Remora
remoralocaleapinodemcuesp8266
119 Posts 17 Posters 138.1k Views 2 Watching
  • 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.
  • A Offline
    A Offline
    alban
    wrote on last edited by
    #96

    @omyxcol , c'est juste que j'avais compilé en 1.3 pour une carte 1.2c. Donc pour les tests, je suis revenu sur 1.2.
    Apparement - chez moi - c'est bien un réglage du wifi de la box qui a tout changé, soit le protocole, soit le canal

    O 1 Reply Last reply
    • A alban

      @omyxcol , c'est juste que j'avais compilé en 1.3 pour une carte 1.2c. Donc pour les tests, je suis revenu sur 1.2.
      Apparement - chez moi - c'est bien un réglage du wifi de la box qui a tout changé, soit le protocole, soit le canal

      O Offline
      O Offline
      omyxcol
      wrote on last edited by
      #97

      @alban
      Merci pour les infos. De mon côté le UPTIME indique un reset à 2h du matin. Il me reste le canal wifi à tester. La capa ne résoud pas le problème.

      1 Reply Last reply
      • A Offline
        A Offline
        alban
        wrote on last edited by alban
        #98

        En regardant le radar wifi dans la conf de la box, je me suis rendu un compte que le nodeMCU - qui a son propre réseau wifi AP - fonctionnait sur plusieurs canaux.

        Lorsque le nodeMCU est bien inclus dans notre réseau, peut être faut-il désactiver son réseau interne pour qu'il n'y ait pas d'interaction.
        En plus cela fait une borne wifi de moins pour la sécurité 🙂

        1 Reply Last reply
        • F Offline
          F Offline
          francky50
          wrote on last edited by
          #99

          Pour ma part, je suis sur une version logiciel Remora 1.3.1 et pour le Wifi Freebox voici les paramètres :

          Activer le 802.11n : Oui
          Largeur de bande : 20 Mhz,
          Canal 6 (était le moins occupé),
          Type de protection WPA2-PSK/AES
          Version du protocol EAPOL : Version 2
          J'ai pas touché au paramètre avancés de la config radio.

          et toujours pas de reset depuis 72h.

          1 Reply Last reply
          • S Offline
            S Offline
            seb
            wrote on last edited by
            #100

            Bonjour à tous,

            Remora monte, je ne peux televerser le prog
            j'ai les messages d'erreur suivant sous mac et windows idem
            warning: espcomm_sync failed
            error: espcomm_open failed

            j'ai bien essaye de suivre vos solutions mais rien n'y fait
            j'ai bien 3,3v et 5v comme demande,
            la led bleue ne clignote jamais, elle s'allume 1 fois lorsque je branche usb
            tous les essais ont été fait module enlevé de la carte rémora
            donc , et maintenant car déjà que je suis très newbie, je suis à sec de manip
            Merci de votre aide car j'adore ce projet
            Seb

            1 Reply Last reply
            • A Offline
              A Offline
              alban
              wrote on last edited by
              #101

              Bonjour @seb

              J'ai le même souci par fois quand le nodeMCU est branché en usb sur mon ordi.
              Dans ce cas, j'appuie sur le bouton "reset" du node, et je balance le téléversement.
              En règle général, ça marche aussitôt
              😉

              1 Reply Last reply
              • CharlesC Offline
                CharlesC Offline
                Charles
                wrote on last edited by
                #102

                @seb
                Parfois l'autoreset peut merder (mauvaise soudure/switch) et il faut passer en manuel, @alban à raison mais tu peux aussi faire (procédure officielle):

                • Tu appuis sur le bouton flash (et tu laisses appuyé) ,
                • quand l'IDE t'indique qu'il va télécharger, tu appuis sur reset et tu lâches reset (en laissant l'autre appuyé jusqu'à ce que l'upload commence (la LED bleu va clignoter très vite)

                Voilà après si ça fonctionne tu peux essayer à nouveau la même sans le reset ou flash (ce serait curieux que les 2 autoreset (flash+reset) déconnent.

                1 Reply Last reply
                • O Offline
                  O Offline
                  omyxcol
                  wrote on last edited by
                  #103

                  Hello
                  De mon côté je soupçonne un problème de CEM du module wifi. Avec le uptime j'ai vu que les resets étaient la nuit. Et plus souvent vers 22h30. Ce soir je l'ai pris en flag: un beau reset dans la seconde qui a suivi là mise en route du relais de chauffeau de 3000w.

                  1 Reply Last reply
                  • S Offline
                    S Offline
                    seb
                    wrote on last edited by
                    #104

                    Bonjour,
                    Je reviens vers vous,
                    j'ai essaye vos 2 manip et rien n'y fait , en fait la led bleue ne se met jamais a clignoter rapidement.
                    Essai sous mac et windows
                    Juste branche électriquement, pas trace d'un qqconque réseau wifi
                    Merci pour la suite
                    Bon WE
                    Seb

                    1 Reply Last reply
                    • CharlesC Offline
                      CharlesC Offline
                      Charles
                      wrote on last edited by
                      #105

                      @seb
                      question bête, ton câble USB est bien un cable data ? Peux-tu l'essayer sur un smartphone pour vérifier que la connexion USB fonctionne bien ?

                      1 Reply Last reply
                      • S Offline
                        S Offline
                        seb
                        wrote on last edited by
                        #106

                        Re
                        J'ai teste avec 3 cables differents
                        Cable de scanner portable, cable de telephonex2 sony
                        Je veux bien acheter un autre cable que me conseilles tu?
                        Merci
                        Seb

                        1 Reply Last reply
                        • S Offline
                          S Offline
                          seb
                          wrote on last edited by seb
                          #107

                          Salut,

                          pour rebondir, après diverses recherches dont celle-ci : http://hpclab.blogspot.mx/2015/06/esp8266-arduino-ide-on-mac-os-x.html, iol semble que mac os n'aime pas
                          tout en suivant le auto, je me retrouve avec un souci de port série non reconnu car le port défini sous arduino est USBtoUART, mais j'ai a nouveau un message d'erreur, la il semble que cela soit une simple config au niveau de esptool.py ::: fichier /Users/$USER/Library/Arduino15/packages/esp8266/hardware/esp8266/1.6.4-673-g8cd3697/platform.txt modifie
                          Arduino/esptool-master/esptool.py", line 22, in <module> import serial
                          ImportError: No module named serial

                          j'avance doucement
                          En fait je n'ai plus de windows, je ne peux faire l'installe avec, j'utilise windows sous mac, c'est pourquoi j'ai le meme souci en utilisant arduino sous windows.

                          Merci de votre aide
                          Seb

                          Je confirme linux meme pb
                          La je sache

                          M F 2 Replies Last reply
                          • O Offline
                            O Offline
                            omyxcol
                            wrote on last edited by
                            #108

                            Bonsoir,
                            Suite aux resets du node mcu lors de l'activation du chauffeau en HC, je pensais à une perturbation du wifi ou autre problème de CEM de la puce. Et cela semble se confirmer car depuis la mise en place du capot en pla de 2mm d épaisseur imprimé en 3d plus de reset. Avant la carte était à nu dans le tableau électrique afin de visualiser les leds et l'écran.

                            1 Reply Last reply
                            • S seb

                              Salut,

                              pour rebondir, après diverses recherches dont celle-ci : http://hpclab.blogspot.mx/2015/06/esp8266-arduino-ide-on-mac-os-x.html, iol semble que mac os n'aime pas
                              tout en suivant le auto, je me retrouve avec un souci de port série non reconnu car le port défini sous arduino est USBtoUART, mais j'ai a nouveau un message d'erreur, la il semble que cela soit une simple config au niveau de esptool.py ::: fichier /Users/$USER/Library/Arduino15/packages/esp8266/hardware/esp8266/1.6.4-673-g8cd3697/platform.txt modifie
                              Arduino/esptool-master/esptool.py", line 22, in <module> import serial
                              ImportError: No module named serial

                              j'avance doucement
                              En fait je n'ai plus de windows, je ne peux faire l'installe avec, j'utilise windows sous mac, c'est pourquoi j'ai le meme souci en utilisant arduino sous windows.

                              Merci de votre aide
                              Seb

                              Je confirme linux meme pb
                              La je sache

                              M Offline
                              M Offline
                              manu12
                              wrote on last edited by
                              #109

                              @seb Perso, sous OSX 10.11.2, pas eu de soucis, j'ai pu téléviser sans soucis. J'ai suivi un conseil de Charles à propos des drivers, par contre, il y a un topic où le cas Arduino est évoqué, et il y a un lien vers des drivers spécifiques OSX...
                              Les as-tu essayé ?

                              @+

                              1 Reply Last reply
                              • S seb

                                Salut,

                                pour rebondir, après diverses recherches dont celle-ci : http://hpclab.blogspot.mx/2015/06/esp8266-arduino-ide-on-mac-os-x.html, iol semble que mac os n'aime pas
                                tout en suivant le auto, je me retrouve avec un souci de port série non reconnu car le port défini sous arduino est USBtoUART, mais j'ai a nouveau un message d'erreur, la il semble que cela soit une simple config au niveau de esptool.py ::: fichier /Users/$USER/Library/Arduino15/packages/esp8266/hardware/esp8266/1.6.4-673-g8cd3697/platform.txt modifie
                                Arduino/esptool-master/esptool.py", line 22, in <module> import serial
                                ImportError: No module named serial

                                j'avance doucement
                                En fait je n'ai plus de windows, je ne peux faire l'installe avec, j'utilise windows sous mac, c'est pourquoi j'ai le meme souci en utilisant arduino sous windows.

                                Merci de votre aide
                                Seb

                                Je confirme linux meme pb
                                La je sache

                                F Offline
                                F Offline
                                francky50
                                wrote on last edited by
                                #110

                                @seb
                                salut, j'ai aussi galéré au début depuis mon mac et j'ai trouvé ce driver CP210x Macintosh OS X VCP Driver v4 et téléchargé le fichier SiLabsUSBDriverDisk.dmg que j'ai installé et depuis çà fonctionne bien, l'adruino 1.6.5 voit bien mon port série et mon nodeMCU. Je suis aussi en OSX 10.11.2.
                                J'ai eu aussi un problème avec un cable USB qui ne fonctionnait pas (il devait juste servir pour recharger un téléphone) mais j'ai pris celui d'un téléphone Samsung S4 mini et avec lui çà fonctionne bien.

                                1 Reply Last reply
                                • CharlesC Offline
                                  CharlesC Offline
                                  Charles
                                  wrote on last edited by
                                  #111

                                  @Seb,
                                  tu as peut être un pb avec ton NodeMCU, ça arrive, si tu veux tu peux me le renvoyer, je peux essayer d'y regarder ?

                                  1 Reply Last reply
                                  • S Offline
                                    S Offline
                                    seb
                                    wrote on last edited by
                                    #112

                                    ok on fait ça car meme avec l'idée de manu12 pas moyen
                                    Tu me confirmes ton adresse
                                    Merci BEAUCOUP
                                    Seb

                                    1 Reply Last reply
                                    • Dany21000D Offline
                                      Dany21000D Offline
                                      Dany21000
                                      wrote on last edited by
                                      #113

                                      Il y a une évolution que j'essaye d'apporter à remora.
                                      Je souhaite que la remora se reconnecte automatiquement quand le reseau wifi n'est pas disponible, reboot du point d'accès, demarrage du remora avant le point d'accès, etc ...

                                      Dans la boucle de loop, je rajoute ceci qui fonctionne :

                                      	// Si perte de la connection au reseau wifi, redemarrage automatique
                                      	if (WiFi.status() != WL_CONNECTED) {
                                      		Serial.println("Perte de la connection au reseau Wifi");
                                      		Serial.println("Redemarrage automatique");
                                      		ESP.wdtDisable();
                                      		ESP.restart();
                                            }
                                      

                                      Parce que je voulais aussi essayer de ne pas rebooter la remora mais mon code ici ne fonctionne pas ... :

                                      	IPAddress ip(192,168,50,251);
                                          IPAddress gateway(192,168,50,254);
                                          IPAddress subnet(255,255,255,0);
                                          WiFi.config(ip, gateway, subnet);	
                                      	WiFi.begin(DEFAULT_WIFI_SSID, DEFAULT_WIFI_PASS);
                                      	Serial.print("Reconnexion au reseau Wifi en cours");
                                      	while (WiFi.status() != WL_CONNECTED) {		// Attente de la connexion au reseau Wifi, redemarrage automatique
                                      		delay(500);
                                      		Serial.print(".");			
                                      	}
                                      

                                      Note, je test en redémarrant le point d'accès logicielement.

                                      1 Reply Last reply
                                      • CharlesC Offline
                                        CharlesC Offline
                                        Charles
                                        wrote on last edited by Charles
                                        #114

                                        @Dany21000
                                        C'est curieux, j'ai 5 NodeMCU sur un autre projet et je ne rencontre pas ce soucis, les reconnexion aux WiFi se font toutes seules, je vais copier/coller le code dans Remora et WifInfo prochainement mais voici le code que j'apelle une seule fois dans le setup()
                                        Ah oui, pour info Arduino-ESP8266 version git (toujours) plus IDE 1.6.7

                                        /* ======================================================================
                                        Function: WifiHandleConn
                                        Purpose : Handle Wifi connection / reconnection and OTA updates
                                        Input   : setup true if we're called 1st Time from setup
                                        Output  : state of the wifi status
                                        Comments: -
                                        ====================================================================== */
                                        int WifiHandleConn(boolean setup = false) 
                                        {
                                          int ret = WiFi.status();
                                        
                                          if (setup) {
                                            WiFi.mode(WIFI_AP_STA);
                                        
                                            DebuglnF("========== SDK Saved parameters Start"); 
                                            WiFi.printDiag(DEBUG_SERIAL);
                                            DebuglnF("========== SDK Saved parameters End"); 
                                            Debugflush();
                                        
                                            // no correct SSID
                                            if (!*config.ssid) {
                                              DebugF("no Wifi SSID in config, set to AP Only!"); 
                                              WiFi.mode(WIFI_AP);
                                        
                                            } else {
                                              DebugF("Connecting to: "); 
                                              Debug(config.ssid);
                                              Debugflush();
                                        
                                              // Do wa have a PSK ?
                                              if (*config.psk) {
                                                // protected network
                                                Debug(F(" with key '"));
                                                Debug(config.psk);
                                                Debug(F("'..."));
                                                Debugflush();
                                                WiFi.begin(config.ssid, config.psk);
                                              } else {
                                                // Open network
                                                Debug(F("unsecure AP"));
                                                Debugflush();
                                                WiFi.begin(config.ssid);
                                              }
                                        
                                              uint8_t timeout = 50; // 50 * 200 ms = 10 sec time out
                                              while ( ((ret = WiFi.status()) != WL_CONNECTED) && timeout )
                                              {
                                                // Orange LED
                                                LedRGBON(COLOR_ORANGE);
                                                delay(50);
                                                LedRGBOFF();
                                                delay(150);
                                                --timeout;
                                              }
                                            }
                                        
                                            // connected ? default to disable AP, client mode only
                                            if (ret == WL_CONNECTED)
                                            {
                                              DebuglnF("connected!");
                                              DebugF("IP address   : "); Debugln(WiFi.localIP());
                                              DebugF("MAC address  : "); Debugln(WiFi.macAddress());
                                        
                                            // not connected ? start AP
                                            } else {
                                              DebuglnF("Wifi client unable to connect!");
                                            }
                                        
                                            // connected and not AP defined in config, remove AP
                                            if ( ret == WL_CONNECTED && !(config.config & CFG_AP) ) {
                                              WiFi.mode(WIFI_STA);
                                            } else {
                                              // Need Access point configuration 
                                              // SSID = hostname
                                              DebugF("Starting AP  : ");
                                              Debug(config.ap_ssid);
                                              Debugflush();
                                        
                                              // protected network
                                              if (*config.ap_psk) {
                                                DebugF(" with key '");
                                                Debug(config.ap_psk);
                                                DebugF("'");
                                                WiFi.softAP(config.ap_ssid, config.ap_psk);
                                              // Open network
                                              } else {
                                                DebugF(" with no password");
                                                WiFi.softAP(config.ap_ssid);
                                              }
                                        
                                              DebugF("\r\nIP address   : "); Debugln(WiFi.softAPIP());
                                              DebugF("MAC address  : "); Debugln(WiFi.softAPmacAddress());
                                            } 
                                        
                                            // Set OTA parameters
                                            ArduinoOTA.setPort(config.ota_port);
                                            ArduinoOTA.setHostname(config.host);
                                            ArduinoOTA.setPassword(config.ota_auth);
                                            ArduinoOTA.begin();
                                        
                                        
                                            WiFiMode_t con_type = WiFi.getMode();
                                        
                                            // just in case your sketch sucks, keep update OTA Available
                                            // Trust me, when coding and testing it happens, this could save
                                            // the need to connect FTDI to reflash
                                            // Usefull just after 1st connexion when called from setup() before
                                            // launching potentially buggy main()
                                            for (uint8_t i=0; i<= 10; i++) {
                                              if (con_type == WIFI_STA) {
                                                LedRGBON(COLOR_GREEN);
                                              } else if (con_type == WIFI_AP_STA) {
                                                LedRGBON(COLOR_CYAN);
                                              } else if (con_type == WIFI_AP) {
                                                LedRGBON(COLOR_PURPLE);
                                              } else {
                                                LedRGBON(COLOR_RED);
                                              }
                                        
                                              delay(100);
                                              LedRGBOFF();
                                              delay(200);
                                              ArduinoOTA.handle();
                                            }
                                        
                                            // Wifi is activated
                                            wifi_state = true;
                                        
                                          } // if setup
                                        
                                          return WiFi.status();
                                        }
                                        
                                        
                                        1 Reply Last reply
                                        • Dany21000D Offline
                                          Dany21000D Offline
                                          Dany21000
                                          wrote on last edited by Dany21000
                                          #115

                                          Merci Charles de ta réponse.
                                          Je dispose de 3 autres nodemcu (pas de lua mais du c) que j'exploite comme sondes à base de DHT22. Pour le moment, ce projet de sonde est en standby car j'attends les DHT22.

                                          C'est en travaillant sur ce projet, qui sera partagé, que j'ai été confronté à ce problème de non-reconnexion au réseau wifi.
                                          Je me suis basé sur un mix de code du remora et d'un exemple de lecture du DHT22 pour réaliser mon système.

                                          Et du coup, au départ, je pensais que c'était mon code des sondes qui n'était pas bon.
                                          Alors j'ai flashé mes 3 nodemcu avec le code remora 1.3.1.
                                          Chacun avec une IP Fixe.
                                          Le PC en client DHCP est connecté en filaire sur un commutateur lui même relié au routeur, qui fait aussi point d'accès wifi.

                                          Tests effectués :
                                          1 - lancer un ping sur les 3 nodemcu
                                          2 - renommer le nom du réseau Wifi...
                                          3 - les nodemcu ne pingent plus, tout va bien.
                                          4 - apres quelques minutes, des réseaux Wifi Remora220, 221 et 222 (hostname = 4eme octet de l'IP fixe) apparaissent
                                          5 - 5 minutes apres, je remet le nom initial du réseau Wifi
                                          6 - ... rien ne se passe, les remora restent en mode AP autonome
                                          7 - inutile, mais je redémarra le routeur/ap wifi ... idem, rien ne se passe
                                          8 - redemarrage d'une des remora (la 220) ... et elle se reconnecte bien et reping bien
                                          9 - je redemarre le routeur, et pendant qu'il redémarrage, un nouveau réseau Wifi apparait Remora220
                                          10 - malgrès quelques minutes après le routeur du réseau Wifi du routeur ... retour au point N°6

                                          Donc j'en au conclus qu'une fois basculé en mode softAP... ils y restent.
                                          D'ailleurs pendant ces tests, ma vraie remora elle est aussi revenue en mode softAP et j'ai été contraint de la redémarrer manuellement aussi.

                                          Voici pourquoi j'ai effectué les modifications que je vous présente ci-dessous :
                                          **
                                          Fonction WifiHandleConn : **

                                          int WifiHandleConn(boolean setup = false) 
                                          {
                                            int ret = WiFi.status();
                                            uint8_t timeout ;
                                          
                                            if (setup) {
                                          
                                              Serial.print(F("========== SDK Saved parameters Start")); 
                                              WiFi.printDiag(Serial);
                                              Serial.println(F("========== SDK Saved parameters End")); 
                                          	
                                          
                                          	///////////////////////// AJOUT DANY
                                          	IPAddress ip(192,168,50,251);
                                          	IPAddress gateway(192,168,50,254);
                                          	IPAddress subnet(255,255,255,0);
                                          	WiFi.config(ip, gateway, subnet);  	
                                          	///////////////////////// AJOUT DANY
                                          	
                                          
                                              #if defined (DEFAULT_WIFI_SSID) && defined (DEFAULT_WIFI_PASS)
                                                Serial.print(F("Connection au Wifi : ")); 
                                                Serial.print(DEFAULT_WIFI_SSID); 
                                                Serial.print(F(" avec la clé '"));
                                                Serial.print(DEFAULT_WIFI_PASS);
                                                Serial.print(F("'..."));
                                                Serial.flush();
                                                WiFi.begin(DEFAULT_WIFI_SSID, DEFAULT_WIFI_PASS);
                                              #else
                                                Serial.print(F("Connection Wifi avec les parametres sauvegardes ")); 
                                              #endif
                                          
                                              timeout = 25; // 25 * 200 ms = 5 sec time out
                                          
                                              // 200 ms loop
                                              while ( ((ret = WiFi.status()) != WL_CONNECTED) && timeout )
                                              {
                                                // Orange LED
                                                LedRGBON(COLOR_ORANGE);
                                                delay(50);
                                                LedRGBOFF();
                                                delay(150);
                                                --timeout;
                                              }
                                          
                                              // connected ? disable AP, client mode only
                                              if (ret == WL_CONNECTED)
                                              {
                                                Serial.println(F("connecte!"));
                                                WiFi.mode(WIFI_STA);
                                          
                                                Serial.print(F("IP address   : ")); Serial.println(WiFi.localIP());
                                                Serial.print(F("MAC address  : ")); Serial.println(WiFi.macAddress());
                                              
                                              // not connected ? start AP
                                              } else {
                                          
                                          
                                          
                                          	 ///////////////////////// AJOUT DANY	
                                                Serial.println("");
                                          	  Serial.println("Connexion Wifi impossible, Redemarrage automatque");
                                          	  ESP.wdtDisable();
                                          	  ESP.restart();
                                          	///////////////////////// AJOUT DANY
                                          	 
                                          	///////////////////////// SUPPRESSION DANY	  
                                          	/*
                                                char ap_ssid[32];
                                                Serial.print(F("Erreur, passage en point d'acces "));
                                                Serial.println(DEFAULT_HOSTNAME);
                                          
                                                // protected network
                                                Serial.print(F(" avec la clé '"));
                                                Serial.print(DEFAULT_WIFI_AP_PASS);
                                                Serial.println("'");
                                                Serial.flush();
                                                WiFi.softAP(DEFAULT_HOSTNAME, DEFAULT_WIFI_AP_PASS);
                                                WiFi.mode(WIFI_AP_STA);
                                          
                                                Serial.print(F("IP address   : ")); Serial.println(WiFi.softAPIP());
                                                Serial.print(F("MAC address  : ")); Serial.println(WiFi.softAPmacAddress());
                                          	*/
                                          	///////////////////////// SUPPRESSION DANY
                                          
                                          
                                          
                                              }
                                          
                                              // Set OTA parameters
                                              ArduinoOTA.setPort(DEFAULT_OTA_PORT);
                                              ArduinoOTA.setHostname(DEFAULT_HOSTNAME);
                                              ArduinoOTA.setPassword(DEFAULT_OTA_PASS);
                                              ArduinoOTA.begin();
                                          
                                              // just in case your sketch sucks, keep update OTA Available
                                              // Trust me, when coding and testing it happens, this could save
                                              // the need to connect FTDI to reflash
                                              // Usefull just after 1st connexion when called from setup() before
                                              // launching potentially buggy main()
                                              for (uint8_t i=0; i<= 10; i++) {
                                                LedRGBON(COLOR_MAGENTA);
                                                delay(100);
                                                LedRGBOFF();
                                                delay(200);
                                                ArduinoOTA.handle();
                                              }
                                          
                                            } // if setup
                                          
                                            return WiFi.status();
                                          }
                                          

                                          Fonction loop

                                          /* ======================================================================
                                          Function: loop
                                          Purpose : boucle principale du programme
                                          Input   : -
                                          Output  : -
                                          Comments: -
                                          ====================================================================== */
                                          void loop()
                                          {
                                            static bool refreshDisplay = false;
                                            static bool lastcloudstate;
                                            static unsigned long previousMillis = 0;  // last time update
                                            unsigned long currentMillis = millis();
                                            bool currentcloudstate ;
                                          
                                            // our own setup
                                            if (first_setup) {
                                              mysetup();
                                              first_setup = false;
                                            }
                                          
                                            // Gérer notre compteur de secondes
                                            if ( millis()-previousMillis > 1000) {
                                              // Ceci arrive toute les secondes écoulées
                                              previousMillis = currentMillis;
                                              uptime++;
                                              refreshDisplay = true ;
                                            }
                                          
                                            #ifdef MOD_TELEINFO
                                              // Vérification de la reception d'une 1ere trame téléinfo
                                              tinfo_loop();
                                              _yield();
                                            #endif
                                          
                                            #ifdef MOD_RF69
                                              // Vérification de la reception d'une trame RF
                                              if (status & STATUS_RFM)
                                                rfm_loop();
                                                _yield();
                                            #endif
                                          
                                            #ifdef MOD_OLED
                                              // pour le moment on se contente d'afficher la téléinfo
                                              screen_state = screen_teleinfo;
                                          
                                              // Modification d'affichage et afficheur présent ?
                                              if (refreshDisplay && (status & STATUS_OLED))
                                                display_loop();
                                                _yield();
                                            #endif
                                          
                                            // çà c'est fait
                                            refreshDisplay = false;
                                          
                                            #if defined (SPARK)
                                            // recupération de l'état de connexion au cloud SPARK
                                            currentcloudstate = Spark.connected();
                                            #elif defined (ESP8266)
                                            // recupération de l'état de connexion au Wifi
                                            currentcloudstate = WiFi.status()==WL_CONNECTED ? true:false;
                                            #endif
                                          
                                            // La connexion cloud vient de chager d'état ?
                                            if (lastcloudstate != currentcloudstate)
                                            {
                                              // Mise à jour de l'état
                                              lastcloudstate=currentcloudstate;
                                          
                                              // on vient de se reconnecter ?
                                              if (currentcloudstate)
                                              {
                                                // on pubie à nouveau nos affaires
                                                // Plus necessaire
                                                #ifdef SPARK
                                                // spark_expose_cloud();
                                                #endif
                                          
                                                // led verte
                                                LedRGBON(COLOR_GREEN);
                                              }
                                              else
                                              {
                                                // on compte la deconnexion led rouge
                                                my_cloud_disconnect++;
                                                Serial.print("Perte de conexion au cloud #");
                                                Serial.println(my_cloud_disconnect);
                                                LedRGBON(COLOR_RED);
                                          	  
                                          
                                          
                                          	  ///////////////////////// AJOUT DANY
                                          	  Serial.println("");
                                          	  Serial.println("Redemarrage automatque");
                                          	  ESP.wdtDisable();
                                          	  ESP.restart();
                                          	  ///////////////////////// AJOUT DANY
                                          
                                          
                                              }
                                            }
                                          
                                            //#ifdef SPARK
                                            //char buff[64];
                                            //int len = 64;
                                          
                                            // process incoming connections one at a time forever
                                            //server.processConnection(buff, &len);
                                            //#endif
                                          
                                          
                                            // Connection au Wifi ou Vérification
                                            #ifdef ESP8266
                                              // Webserver 
                                              server.handleClient();
                                              ArduinoOTA.handle();
                                          
                                              if (task_emoncms) { 
                                                emoncmsPost(); 
                                                task_emoncms=false; 
                                              } else if (task_jeedom) { 
                                                jeedomPost();  
                                                task_jeedom=false;
                                              }
                                            #endif
                                          
                                          }
                                          

                                          J'utilise l'Arduino IDE 1.6.7, je vais essayer et étudier ta nouvelle version du WifiHandleConn ce soir.

                                          1 Reply Last reply

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          0

                                          Online

                                          5.8k

                                          Users

                                          565

                                          Topics

                                          5.3k

                                          Posts

                                          Top Topics

                                          Popular Tags

                                          teleinfo
                                          25 topics
                                          arduino
                                          19 topics
                                          remora
                                          16 topics
                                          esp8266
                                          10 topics
                                          arduipi
                                          10 topics
                                          raspberry
                                          8 topics
                                          wifinfo
                                          7 topics
                                          broadcast
                                          7 topics
                                          Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Blog
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups