ESP8266 VS Code PlatformIO : télécharger des fichiers sur le système de fichiers LittleFS

ESP8266 VS Code PlatformIO : télécharger des fichiers sur le système de fichiers LittleFS

Apprenez à télécharger des fichiers sur le système de fichiers de la carte ESP8266 NodeMCU (LittleFS) à l’aide de VS Code avec l’extension PlatformIO IDE (rapide et facile). L’utilisation du système de fichiers avec l’ESP8266 peut être utile pour enregistrer des fichiers HTML, CSS et JavaScript pour créer un serveur Web au lieu d’avoir à tout écrire à l’intérieur de l’esquisse Arduino.

ESP8266 NodeMCU avec VS Code et PlatformIO IDE Télécharger des fichiers sur le système de fichiers LittleFS

Si vous utilisez l’IDE Arduino, suivez plutôt ce didacticiel : Installez ESP8266 Filesystem Uploader dans l’IDE Arduino.

Présentation de SPIFF/LittleFS

Il existe deux systèmes de fichiers que vous pouvez utiliser pour le flash ESP8266 intégré : SPIFFS et LittleFS.

SPIFFS et LittleFS vous permettent d’accéder à la mémoire flash comme vous le feriez dans un système de fichiers normal de votre ordinateur, mais plus simple et plus limité. Vous pouvez lire, écrire, fermer et supprimer des fichiers.

SPIFF :

  • système de fichiers d’origine ;
  • idéal pour les applications limitées en espace et en RAM qui utilisent de nombreux fichiers ;
  • ne prend pas en charge les répertoires – tout est enregistré sur une structure plate ;
  • la surcharge du système de fichiers sur le flash est minime ;
  • SPIFFS est actuellement obsolète et peut être supprimé dans les futures versions du noyau.

LittleFS :

  • récent;
  • se concentre sur des performances plus élevées ;
  • prend en charge les répertoires ;
  • système de fichiers et surcharge par fichier plus élevés (4K minimum par rapport à l’unité d’allocation de fichiers minimale de 256 octets de SPIFFS).

Pour plus d’informations sur SPIFFS et LittleFS, reportez-vous au Documentation du noyau Arduino ESP8266.

SPIFFS est actuellement obsolète et peut être supprimé dans les futures versions de l’ESP8266
coeur. Il est recommandé d’utiliser LittleFS à la place.

LittleFS est en cours de développement actif, prend en charge les répertoires et est plusieurs fois plus rapide pour la plupart des opérations. Les méthodes utilisées pour SPIFFS sont compatibles avec LittleFS, nous pouvons donc simplement utiliser l’expression LittleFS à la place de SPIFF lors de la conversion d’un code de SPIFFS en LittleFS.

Par exemple, convertir la plupart des applications de SPIFFS en LittleFS nécessite simplement de changer le SPIFFS.begin() à LittleFS.begin() et SPIFFS.open() à LittleFS.open().

Utilisation du système de fichiers avec le Carte ESP8266 est particulièrement utile pour :

  • Créez des fichiers de configuration avec des paramètres ;
  • Enregistrer les données de façon permanente ;
  • Créez des fichiers pour enregistrer de petites quantités de données au lieu d’utiliser une carte microSD ;
  • Enregistrez les fichiers HTML, CSS et JavaScript pour créer un serveur Web ;
  • Enregistrez des images, des chiffres et des icônes ;
  • Et beaucoup plus.

Télécharger des fichiers sur ESP8266 NodeMCU LittleFS

Les fichiers que vous souhaitez télécharger sur le système de fichiers ESP8266 doivent être placés dans un dossier appelé Les données sous le dossier du projet. Pour que vous compreniez comment tout fonctionne, nous allons télécharger un .SMS fichier avec du texte aléatoire. Vous pouvez télécharger n’importe quel autre type de fichier.

Si vous n’êtes pas familier avec VS Code + PlatformIO IDE, suivez d’abord le tutoriel suivant :

Utilisation de LittleFS comme système de fichiers par défaut

SPIFFS est actuellement obsolète et peut être supprimé dans les futures versions du noyau ESP8266. Il est recommandé d’utiliser LittleFS à la place. LittleFS est en cours de développement actif, prend en charge les répertoires et est plusieurs fois plus rapide pour la plupart des opérations. Nous utiliserons donc LittleFS dans ce tutoriel.

Dans VS Code + PlatformIO, lors du téléchargement de fichiers, nous devons spécifier que nous voulons utiliser le système de fichiers LittleFS au lieu de SPIFFS (par défaut), vous devez donc ajouter la ligne suivante à l’ESP826 platformio.ini fichier de configuration.

board_build.filesystem = littlefs
Utiliser LittleFS comme système de fichiers par défaut ESP8266 VS Code + PlatformIO

Création d’un dossier de données

Créez un dossier appelé Les données dans votre dossier de projet. Cela peut être fait sur VS Code.
Avec votre souris, sélectionnez le dossier du projet sur lequel vous travaillez. Clique sur le Nouveau dossier icône pour créer un nouveau dossier.

Ce nouveau dossier doit s’appeler Les données, sinon, ça ne marchera pas.

Créer un dossier de données VS Code PlatformIO ESP8266

Ensuite, sélectionnez le nouveau Les données dossier et créez les fichiers que vous souhaitez télécharger en cliquant sur le Nouveau fichier icône. Dans cet exemple, nous allons créer un fichier appelé texte.txt. Vous pouvez créer et télécharger tout autre type de fichier comme .html, .css ou .js fichiers, par exemple.

Créer des fichiers sous le dossier de données VS Code avec PlatformIO ESP8266

Écrivez du texte au hasard à l’intérieur .SMS déposer.

le Les données dossier doit être sous le dossier du projet et les fichiers que vous souhaitez télécharger doivent être à l’intérieur du Les données dossier. Sinon, ça ne marchera pas.

Créer un fichier texte VS Code PlatformIO ESP8266

Téléchargement de l’image du système de fichiers

Après avoir créé et enregistré le ou les fichiers que vous souhaitez télécharger sous le Les données dossier, suivez les étapes suivantes :

  1. Cliquez sur l’icône PIO dans la barre latérale gauche. Les tâches du projet doivent s’ouvrir.
  2. Sélectionner env:nodemcuv2 (cela peut différer selon la carte que vous utilisez).
  3. Élargir le Plate-forme menu.
  4. Sélectionner Créer un système de fichiersm Image.
  5. Enfin, cliquez Télécharger l’image du système de fichiers.
Télécharger l'image du système de fichiers VS Code PlatformIO ESP8266

Important: pour télécharger l’image du système de fichiers avec succès, vous devez fermer tous les ports série
connexions (Serial Monitor) avec votre carte.

Au bout d’un moment, vous devriez recevoir un message de réussite.

Télécharger l'image du système de fichiers ESP8266 VS Code PlatformIO message de réussite

Dépannage

Voici une erreur courante :

Impossible d’ouvrir le port « COMX » L’accès est refusé.

Télécharger l'image du système de fichiers ESP32 VS Code PlatformIO Access Denied Error ESP8266

Cette erreur signifie que vous avez une connexion série ouverte avec votre carte dans VS Code ou dans tout autre programme. Fermez tout programme susceptible d’utiliser le port série de la carte et assurez-vous de fermer toutes les connexions série dans VS Code (cliquez sur l’icône de la corbeille sur la console du terminal).

VS Code PlatformIO Fermer la fenêtre du terminal

Essai

Maintenant, vérifions simplement si le fichier a bien été enregistré dans le système de fichiers ESP8266. Copiez le code suivant dans le main.cpp fichier et téléchargez-le sur votre tableau.

/*********
  Rui Santos
  Complete project details at https://Raspberryme.com/esp8266-nodemcu-vs-code-platformio-littlefs/  
*********/

#include <Arduino.h>
#include "LittleFS.h"
 
void setup() {
  Serial.begin(9600);
  
  if(!LittleFS.begin()){
    Serial.println("An Error has occurred while mounting LittleFS");
    return;
  }
  
  File file = LittleFS.open("/text.txt", "r");
  if(!file){
    Serial.println("Failed to open file for reading");
    return;
  }
  
  Serial.println("File Content:");
  while(file.available()){
    Serial.write(file.read());
  }
  file.close();
}
 
void loop() {

}

Afficher le code brut

Vous devrez peut-être modifier la ligne suivante en fonction du nom de votre fichier.

File file = LittleFS.open("/text.txt");

Ouvrez le moniteur série et il devrait imprimer le contenu de votre fichier.

Lecture du contenu du fichier LittleFS ESP8266 VS Code PlatformIO

Vous avez téléchargé avec succès des fichiers sur le système de fichiers ESP8266 (LittleFS) à l’aide de VS Code + PlatformIO.

Conclusion

Avec ce didacticiel, vous avez appris à télécharger des fichiers sur le système de fichiers ESP8266 (LittleFS) à l’aide de VS Code + PlatformIO. C’est rapide et facile.

Cela peut être particulièrement utile pour télécharger des fichiers HTML, CSS et JavaScript afin de créer des projets de serveur Web avec les cartes ESP8266 NodeMCU.

Nous avons un tutoriel similaire pour l’ESP32 : ESP32 avec VS Code et PlatformIO : Upload Files to Filesystem (SPIFFS)

En savoir plus sur le ESP8266 NodeMCU avec nos ressources :