Wifinfo, mise à jour micro logiciel impossible depuis interface web



  • Bonjour,
    Je ne parviens pas à mettre à jour soit le sketch, soit le SPIFFS depuis l'interface web? j'obtiens systématiquement un message d'erreur "Type de fichier non conforme le fichier de mise à jour doit être un fichier binaire"

    Voici le contexte :
    • Environnement Arduino 1.8.9, environnement ESP8266 version 2.4.2 (avec la version 2.5 je n'arrive pas à résoudre une erreur de compilation)
    • Carte Wemos D1 mini
    • Tout est opérationnel, la capture des trames de téléinformation fonctionne, la mise à jour OTA en wifi fonctionne
    • J'ai essayé avec les binaires générées par l'environnement arduino (nommé Wifinfo.ino.bin) pour le sketch ou le binaire SPIFFS (nommé Wifinfo.spiffs.bin) et j'ai toujours le même message
    • J'ai essayé avec 2 navigateurs différents : Safari et Firefox
    • J'utilise la version 1.0.6 de Wifinfo (modifié par Dominique DAMBRAIN)

    Quelqu'un a t-il une piste ? merci d'avance …



  • Bonjour,

    je crois que je n'ai jamais testé cette fonction. Pourquoi tu ne fais pas en OTA si ça fonctionne ?



  • Bonjour et merci beaucoup d'avoir réagi …

    En fait pour moi la mise à jour via le web est très importante, car je vais fournir mon montage à 2 frangins (tous deux habitent à plusieurs centaines de kms de chez moi), chez qui il ne sera pas question de leur faire installer/utiliser l'environnement arduino pour les mises à jour …
    Comme je me suis aussi donné comme objectif de refondre une partie de l'interface web (bootstrap et bootstap-table, aie aie !!) mais aussi de modifier/adapter à mes besoins certaines parties du code, je trouve que la mise à jour via la page web est de loin la plus facile pour un novice … et je sais que j'aurai des mises à jour à leur envoyer dans les mois qui viennent …
    Je continue de chercher, j'ai vraiment l'impression que plusieurs personnes ont réussi à la faire fonctionner d'après ce que je lis sur les forums … personne ne semble avoir le fameux message "Fichier non conforme".
    J'ai passé plusieurs heures, j'ai essayé plusieurs variantes différentes de la bibliothèque LibTeleinfo, j'ai aussi testé sur PC sous windows … rien n'y fait … j'ai aussi toujours pensé à repartir d'une version fraichement compilée, avec une seule version de la bin LibTeleinfo dans l'environnement arduino, j'ai pensé à chaque fois à renvoyer les fichiers SPIFFS …
    Merci, si de votre côté vous pouvez tester et peut être avancer dans le diagnostique …
    Cordialement
    Pascal



  • Je me permet de relancer … quelqu'un a t-il testé la mise à jour des fichier SPIFFS ou du sketch (firmware) depuis l'interface web ?
    Je sais qu'on faire une mise à jour OTA depuis l'environnement Arduino, d'ailleurs cet aspect là fonctionne chez moi …
    Mais, je veux installer des Wifinfo chez des utilisateurs qui n'ont pas les connaissances eux même pour une mise à jour depuis l'environnement Arduino …
    Comme je suis en phase de "customization" du projet WIFINFO pour enlever de l'interface les parties qui ne m'intéressent pas, pour un affichage complémentaire de la page "Téléinformation" avec une vue plus "sexy" que la vue des trames brutes, comme je veux faire une intégration avec la box eeedomus, j'aurais à coup sûr des mises à jour à faire à plusieurs reprises …
    Donc mes questions :
    1/ est ce que ça fonctionne chez vous ?
    2/ comment procédez vous exactement ?
    3/ sur quelle plateforme (Linux, Windows, Mac …), avec quel navigateur ?
    Perso j'ia testé sur Mac avec Safari et Firefox et sur Windows 10 … dans tous les cas je sélectionne un fichier .ino.bin, ou .cpp.bin ou .spiffs.bin et dans tous les cas j'obtiens un message "Fichier non conforme, le fichier de mise à jour doit être de type binaire"
    Merci à ceux qui m'aideront
    Pascal



  • Je viens de faire une OTA avec succès à l'aide de l'interface Web Wifinfo.
    J'utilise :

    • le dépôt de Sylvain Remy (modifié pour Domoticz)
      https://github.com/sremy91/LibTeleinfo
      et les sources de Wifinfo dans son répertoire exemple
    • interface Arduino IDE 1.8.9 sous Win 10
    • Python 2.7.11
      J'ai fais une compilation/vérification puis "Exporter les binaires compilés" et enfin changé le nom du fichier généré "Wifinfo.ino.nodemcu.bin" en "Wifinfo.ino.bin"
      Dans l'onglet Fichiers, je sélectionne le fichier "Wifinfo.ino.bin" à l'aide de "parcourir" sous le titre "Mise à jour micro-logiciel ou serveur WEB embarqué"
      Le téléchargement est très rapide.
      L'opération se termine par une indication d'erreur, mais en fait le serveur a redémarré en fonctionne correctement (!)

    Dans le fichier log.txt de l'interface web, j'obtiens :

    Update: Wifinfo.ino.bin
    Flashing CPP
    .....................................................................................................................................................................................Update Success: 369056
    Rebooting...
    Connecting to: xxxxxxxxx with key 'yyyyyyyyy'...
    Waited 3000ms
    Connected!
    IP address : 192.168.2.125
    MAC address : zz:zz:zz:zz:zz:zz
    HTTP server started

    Voici pour le détail basique des opérations ...



  • @Phi13 Merci,

    Je vais refaire des essais en essayant de me retrouver dans un contexte proche

    Cordialement



  • @Phi13 Re bonjour,

    Il y a un net progrès …
    Je suis donc parti du Github de Sylvain REMY …
    J'ai compilé, uploadé le code depuis l'IDE arduino ainsi que le SPIFFS …
    Depuis je parviens à mettre à jour via le web le sketch ainsi que les fichiers SPIFFS …
    J'arrive même à uploader le code compilé à partir de mon projet … et même à revenir au code Sylvain REMY, et tout ça via l'interface WEB … donc je ne comprends pas pourquoi au final, quand c'est mon propre code, maintenant ça fonctionne … Peut être avais-je un problème dans le contenu du SPIFFS, mais pourtant je l'ai fait plein de fois dans tous les sens !! va comprendre Charles ;-)
    Malgré tout, j'ai récupéré un nouveau problème : ma LED 5 mm NeoPixel ne s'allume plus si je charge le code de Sylvain REMY, dès que je remet mon code elle refonctionne … SI vous avez une piste je suis évidemment preneur …
    Que ce soit le projet Sylvain REMY ou le mien, ils sont recompilés tous les deux avec exactement les même options dans l'IDE Arduino (Frequence CPU, type de module etc …)
    J'ai vérifié l'initialisation NeoPixel, le numéro de pin RGB etc … pour le moment je ne comprend pas ce qui se passe …

    Merci d'avance, si vous avez des idées



  • @pcardon @Phi13
    Je me répond à moi même …

    J'ai fini par trouver pourquoi ma LED NeoPixel ne s'allumait pas …

    • En rajoutant dans le setup(), juste derrière le readConfig() un config.config |= CFG_RGB_LED; ça s'est mis à fonctionner
    • En forçant ensuite un saveConfig(), toujours dans le setup, je pense avoir forcé la ré-écriture dans l'eeprom de la configuration
    • Ensuite j'ai viré mes modifs et depuis tout refonctionne … mes changement de configuration dans l'onglet "Configuration Avancée", case à cocher Debug (Serial) Info (Serial & FS) LED RGB Affichage Ecran OLED fonctionnent et mes changement sont correctement mémorisés et pris en compte immédiatement !

    J'en conclue que j'avais une corruption au niveau de la config sauvegardée dans l'eeprom

    Si quelqu'un a un avis la dessus, ça m'intéresse, je ne suis pas un expert, aussi si je me construire quelques certitudes, si possible correctes, je pourrai ainsi progresser …

    En tous cas, merci @Phi13 , ton message m'a aidé !
    Pascal



  • This post is deleted!

Log in to reply