IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Arduino Discussion :

Le navigateur aux commandes de l'Arduino - troisième partie [Tutoriel]


Sujet :

Arduino

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 908
    Par défaut
    Citation Envoyé par Artemus24 Voir le message
    Qui décrète que telle ou telle bibliothèque est dépréciée ?
    Tant qu'elle est disponible au chargement , je ne vois pas pourquoi il faudrait sans abstenir.
    Maintenant si c'est un fork, cela n'engage que son nouvel auteur du bien fondé de son travail.
    jetez un oeil à ce fil de discussion (par Peter Andersson le développeur de la version SPIFFS / Arduino). à la fin (le 6 Sep 2019) il dit
    No, not working on it now. My spare time is too sparse for this nowadays. Not saying I'll never return to it though.
    Ensuite il y a eu des discussions sur ce qui est mis en standard dans le Arduino core for ESP8266

    https://github.com/esp8266/Arduino/issues/7095

    @Jason2866 @TD-er maintenance on our side for libs that aren't active is a load we're not willing to have.
    To be clear, this issue covers deprecation, not pulling out. Think of it as a "first notice". Worst case for you we deprecate for 2.7.0 and pull out for 3.0.0, so even in that case there is time.
    et il propose 3 options
    You have three alternatives to pursue, not mutually exclusive:

    Find a migration strategy. At top level, there is no difference between the two file systems i. e. same fs class, so api is the same. Then the only question is how to migrate existing spiffs file systems (e. g. copy files somewhere?)
    Get the "other repos" to implement and support littlefs
    Find maintainers/developers for the spiffs lib. Having the spiffs code reactivate is the one thing that would stop our deprecation.
    ==> en gros si personne ne veut maintenir ce code, il sera viré de la distribution en 3.0 (on est en 2.7.2) mais rien ne vous empêche de récupérer le code de Peter Andersson est d'essayer de le réinstaller. Il se peut qu'il y ait des incompatibilités cependant puisque les développeurs du Arduino core ne feront rien de particulier pour la tester. (mais rien de particulier pour la casser non plus on peut espérer)

  2. #2
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 883
    Par défaut
    Salut Jay M.

    Merci pour ces précisions.
    Je suppose qu'il s'agit de la communauté Arduino.
    Il y a quelque chose dans ces propos que je ne comprends pas, mais quoi ?

    Déprécier signifie "Diminuer la valeur de quelque chose".
    Cela ne rend pas le logiciel non fonctionnel, même dans dix ans, si je l'utilise sur le même ESP32.
    Mais si la question est d'ordre évolutif, en quoi cela pose problème ?
    Tant que cela fonctionne, je ne vois pas où se trouve le problème.

    J'ai l'impression que la communauté Arduino applique une censure.
    Pourquoi déprécier le travail de quelque d'autre ?

    Je constate aussi qu'il y a une multitude d'exemples sur le net, en SPIFFS qui vont devoir basculer vers LITTLEFS.
    Comme cela ne se fera pas, on aura un gros problème de lisibilité de ces exemples.

    Citation Envoyé par Jay M
    ==> en gros si personne ne veut maintenir ce code, il sera viré de la distribution en 3.0 (on est en 2.7.2)
    Si je comprends bien, 2.7.2 concerne l'ESP8266.
    Quand est-il de l'ESP32 (puisque j'utilise espressif NodeMCU ESP32) qui est dans la version 1.0.4 ?

    @+

  3. #3
    Rédacteur

    Avatar de naute
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2009
    Messages
    708
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Mars 2009
    Messages : 708
    Par défaut
    Bonjour .

    Citation Envoyé par Artemus24 Voir le message
    Déprécier signifie "Diminuer la valeur de quelque chose".
    Il s'agit surtout d'un problème de traduction : encore un coup des faux amis !
    • to deprecate signifie "désapprouver", et dans certains cas "déconseiller" (c'est le cas ici) ;
    • to depreciate signifie "déprécier".

    Ça ne veut pas dire la même chose .

    Donc :
    Citation Envoyé par Artemus24 Voir le message
    J'ai l'impression que la communauté Arduino applique une censure.
    Pourquoi déprécier le travail de quelque d'autre ?
    résulte d'un contresens : la communauté Arduino ne dénigre pas SPIFFS, elle "déconseille" simplement son utilisation en raison de grosses incertitudes quant à son avenir. Par conséquent, et par cohérence, elle n'intégrera plus cette bibliothèque. Libre à chacun de l'utiliser.

    Citation Envoyé par Artemus24 Voir le message
    Je constate aussi qu'il y a une multitude d'exemples sur le net, en SPIFFS qui vont devoir basculer vers LITTLEFS.
    Comme cela ne se fera pas, on aura un gros problème de lisibilité de ces exemples.
    C'est justement l'une des raisons pour lesquelles, dans mon tuto, j'ai opté pour LittleFS alors que j'utilisais SPIFFS jusqu'à présent. Question de pérennité.

    Citation Envoyé par Artemus24 Voir le message
    Si je comprends bien, 2.7.2 concerne l'ESP8266.
    et uniquement l'ESP8266. Les bibliothèques sont liées à la plateforme.

    Citation Envoyé par Artemus24 Voir le message
    Quand est-il de l'ESP32 (puisque j'utilise espressif NodeMCU ESP32) qui est dans la version 1.0.4 ?
    Ici, je suis moins sûr de moi car je n'ai pas encore utilisé l'ESP-32, mais au vu des exemples fournis dans l'EDI Arduino, le système de fichier LittleFS ne "semble pas" (prudence) encore porté "officiellement" sur cette plateforme. Cela dit, le système SPIFFS fonctionne très bien et continuera à fonctionner comme actuellement, du moins jusqu'à la mise à jour fatidique du gestionnaire dans laquelle cette bibliothèque sera supprimée, et je ne vois pas ce qui pourrait empêcher de l'utiliser. On peut toujours garder une version de l'EDI dans laquelle on conserverait des fonctionnalités non maintenues mais que l'on souhaite toujours utiliser.
    De toute manière, il y a fort à parier que la suppression du support du SPIFFS sur cette plateforme n'interviendra pas avant que le support officiel de LittleFS ne soit opérationnel. À partir de là, la migration sera facile.

    Citation Envoyé par Artemus24 Voir le message
    Je veux bien, mais si vous passez votre temps à écrire, votre mémoire flash risque de ne pas s'en remettre.
    Techniquement, mis à part pendant la période de développement et pour les éventuelles mises à jour, je n'écris qu'une fois dans la mémoire flash. Les fichiers ne sont pas modifiés par le sketch, et sont simplement lus à chaque connexion. Ma mémoire flash n'est donc pas vraiment stressée.

    Amicalement,
    naute

  4. #4
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 908
    Par défaut
    Sur l’ESP32 il y a des fonctions au niveau OS qui gèrent les file systems

    Il y a FarFS qui permet d’avoir une interface unifiée entre stockage interne ou externe et on peut déclarer des partitions

    Cf Storage API => https://docs.espressif.com/projects/...age/index.html

  5. #5
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 883
    Par défaut
    Salut à tous

    Citation Envoyé par Naute
    Par conséquent, et par cohérence, elle n'intégrera plus cette bibliothèque. Libre à chacun de l'utiliser.
    Citation Envoyé par Naute
    Les bibliothèques sont liées à la plateforme.
    Je crois avoir compris ce que je ne comprenais pas.
    Il s'agit de conserver ou pas cette bibliothèque dans le noyau de la plateforme utiliséee et non d'éradiquer la bibliothèque par elle-même.
    On peut continuer à se servir de cette bibliothèque, même si elle n'intègre plus officiellement le noyau de la plateforme utilisée.

    Si c'est ça, je comprends mieux le problème.

    Une même bibliothèque ne fonctionne pas sur toutes les plateformes.
    Ce qui veut dire, qu'il existe autant de versions de la même bibliothèque qu'il existe de plateforme. Bonjour la maintenance !
    Du coup, LITTLEFS a exactement le même problème, tant qu'une âme charitable fera la maintenance.

    Et si je comprends le bordel ambiant, il y a autant de versions (par exemple FS : file system) qu'il y a de gens qui s'y intéresse.
    Combien de déclinaisons a-t-on de FS ? SPIFFS, LITTLEFS, FatFS, ...

    Citation Envoyé par Naute
    Question de pérennité.
    Pérennité à propos de quoi ? De la mémoire flash ou de la bibliothèque ?

    Citation Envoyé par Naute
    le système de fichier LittleFS ne "semble pas" (prudence) encore porté "officiellement" sur cette plateforme.
    Actuellement, dans espressif ESP32, il n'y a pas LITTLEFS. J'ai dû l'installer, avec l'aide de f-leb.

    Cela fait un mois que je découvre l'ESP32. Je suis en retard vis-à-vis de vos connaissances sur les micro-contrôleurs.
    Hormis l'ESP32, je possède plusieurs raspberry pi et un bus pirate.

    Comment se nomme le langage qui est utilisé dans l'ESP32 ? Je suppose l'arduino aussi.
    Est-ce LUA ? Ca ressemble à du 'C' mais ce n'est pas du 'C'.

    @+

  6. #6
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 197
    Billets dans le blog
    47
    Par défaut
    @Artemus, on s'égare un peu du sujet initial de naute qui utilise un (bon vieil) Arduino UNO avec un shield Ethernet dans son article...

    Si tu as des questions sur l'ESP32, le système de fichier SPIFFS, LittleFS ou autres, tu devrais ouvrir de nouvelles discussions. Le lecteur s'y retrouvera plus facilement

  7. #7
    Expert confirmé

    Homme Profil pro
    mad scientist :)
    Inscrit en
    Septembre 2019
    Messages
    2 908
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : mad scientist :)

    Informations forums :
    Inscription : Septembre 2019
    Messages : 2 908
    Par défaut
    Citation Envoyé par Artemus24 Voir le message
    Il s'agit de conserver ou pas cette bibliothèque dans le noyau de la plateforme utiliséee et non d'éradiquer la bibliothèque par elle-même.
    On peut continuer à se servir de cette bibliothèque, même si elle n'intègre plus officiellement le noyau de la plateforme utilisée.

    Si c'est ça, je comprends mieux le problème.
    c'est exactement ça. Avec le risque que la bibliothèque devienne incompatible avec les évolutions du noyau de la plateforme puisqu'elle n'est plus maintenue. (le code de SPIFFS a des bugs connus déjà) aujourd'hui et qui ne sont pas corrigés donc au mieux ça reste en l'état au pire...).

    si littlefs n'était plus maintenu (cf son design - il n'y a que peu de participants) alors il y aurait le même souci.

    Une même bibliothèque ne fonctionne pas sur toutes les plateformes.
    ça dépend de son niveau d'abstraction. par exemple une bibliothèque qui utilise digitalRead() et millis() pour gérer un bouton est programmée à un niveau d'abstraction qui fait que du moment que millis() et digitalRead() sont fonctionnels sur la nouvelle plateforme alors elle est aussi fonctionnelle. Mais si les APIs que vous utilisez sont spécifiques à l'OS sous jacent (dans le cas des ESP) ou à des fonctions matérielles (un timer, un second port série hardware, ...) alors c'est moins portable en effet et dans l'idéal c'est à la bibliothèque de faire l'effort de cacher cette complexité pour offrir une API uniforme sur plusieurs plateformes.

    Et si je comprends le <beep> ambiant, il y a autant de versions (par exemple FS : file system) qu'il y a de gens qui s'y intéresse.
    Combien de déclinaisons a-t-on de FS ? SPIFFS, LITTLEFS, FatFS, ...
    Oui et non. Mais c'est un monde (assez) libre, si vous voulez créer un file système, rien ne vous en empêche.. Ensuite le succès dépend de nombreux facteurs, si votre bibliothèque est très visible et intégrée en standard dans la distribution Arduino par exemple alors elle devient un peu la solution de base et il faut que les autres bibliothèques soient vraiment bien meilleures pour s'imposer.


    Citation Envoyé par Artemus24 Voir le message
    Comment se nomme le langage qui est utilisé dans l'ESP32 ? Je suppose l'arduino aussi.
    Est-ce LUA ? Ca ressemble à du 'C' mais ce n'est pas du 'C'.
    Le "Arduino core for the ESP32" est programmé en C++ tout comme ce qu'on fait généralement dans l'IDE.

  8. #8
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 883
    Par défaut
    Salut f-leb.

    Citation Envoyé par F-leb]
    @Artemus, on s'égare un peu du sujet initial de naute ...
    Pas tant que cela. Pourquoi ces reproches ?

    Naute a abordé la dépréciation de SPIFFS et il y a plusieurs messages consacrés à ce sujet.
    Et toi-même, tu as abordé l'ESP32 :
    Citation Envoyé par f-leb
    Hervé, j'ai repris le tuto et tes codes pour l'adapter à un DevKit ESP32
    Je n'ai fait que poursuivre sur ces discussions. En quoi suis-je hors-sujet ? Parce que je n'ai pas d'arduino ?

    Oui, le sujet de Naute est fort intéressant et je le félicite à nouveau pour son travail.

    Inversement, dans plusieurs de mes sujets personne ne me répond.

    @+

  9. #9
    Membre prolifique Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 883
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 883
    Par défaut
    Salut Jay M.

    Merci pour toutes ses précisions.

    @+

Discussions similaires

  1. Le navigateur aux commandes de l'Arduino
    Par naute dans le forum Arduino
    Réponses: 32
    Dernier message: 08/03/2021, 11h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo