initial commit
This commit is contained in:
@@ -0,0 +1,129 @@
|
||||
# esp32_littlefs_test
|
||||
|
||||
Test verbeux de LittleFS sur ESP32-S3 avec PlatformIO (framework Arduino, espressif32@6).
|
||||
|
||||
## Cartes supportées
|
||||
|
||||
| Environnement PIO | Carte physique | Flash | PSRAM |
|
||||
|---|---|---|---|
|
||||
| `esp32s3_zero` | Waveshare ESP32-S3-Zero | 4 MB QIO | — |
|
||||
| `esp32s3_n16r8v` | Generic ESP32-S3 N16R8V | 16 MB QIO | 8 MB OPI |
|
||||
|
||||
## Prérequis
|
||||
|
||||
- [PlatformIO Core](https://docs.platformio.org/en/latest/core/installation/) installé (`pip install platformio`)
|
||||
- Driver USB-JTAG / USB-CDC selon la carte (pas de driver externe sur la plupart des ES32-S3)
|
||||
|
||||
## Utilisation avec le Makefile
|
||||
|
||||
```bash
|
||||
# Afficher l'aide
|
||||
make
|
||||
|
||||
# Compiler uniquement
|
||||
make BOARD=esp32s3_zero
|
||||
|
||||
# Compiler + flasher le firmware
|
||||
make flash BOARD=esp32s3_zero
|
||||
|
||||
# Uploader la partition LittleFS (contenu de data/)
|
||||
make flashfs BOARD=esp32s3_zero
|
||||
|
||||
# Tout en une commande
|
||||
make all BOARD=esp32s3_n16r8v
|
||||
|
||||
# Ouvrir le moniteur série
|
||||
make monitor BOARD=esp32s3_zero
|
||||
|
||||
# Nettoyer les artefacts
|
||||
make clean
|
||||
```
|
||||
|
||||
### Spécifier un port série manuellement
|
||||
|
||||
```bash
|
||||
make flash BOARD=esp32s3_zero PORT=/dev/ttyACM0
|
||||
```
|
||||
|
||||
## Utilisation directe avec PlatformIO
|
||||
|
||||
```bash
|
||||
# Build
|
||||
pio run -e esp32s3_zero
|
||||
|
||||
# Flash firmware
|
||||
pio run -e esp32s3_zero -t upload
|
||||
|
||||
# Upload partition LittleFS
|
||||
pio run -e esp32s3_zero -t uploadfs
|
||||
|
||||
# Moniteur série
|
||||
pio device monitor -e esp32s3_zero
|
||||
```
|
||||
|
||||
## Séquence de tests effectués
|
||||
|
||||
| Étape | Description |
|
||||
|---|---|
|
||||
| 1 | Montage de LittleFS (avec formatage automatique si nécessaire) |
|
||||
| 2 | Affichage des infos de la partition (total / utilisé / libre) |
|
||||
| 3 | Écriture d'un fichier texte UTF-8 |
|
||||
| 4 | Relecture et vérification du contenu (round-trip) |
|
||||
| 5 | Écriture binaire (256 octets, valeurs 0x00…0xFF) |
|
||||
| 6 | Relecture binaire et vérification byte-à-byte |
|
||||
| 7 | Listage du répertoire racine |
|
||||
| 8 | Test d'append (ajout à un fichier existant) |
|
||||
| 9 | Renommage de fichier |
|
||||
| 10 | Suppression de tous les fichiers de test |
|
||||
| 11 | Vérification de l'absence des fichiers supprimés |
|
||||
| 12 | Démontage propre |
|
||||
| 13 | Résumé PASS / FAIL |
|
||||
|
||||
## Sortie attendue
|
||||
|
||||
```
|
||||
╔════════════════════════════════════════╗
|
||||
║ TEST LittleFS – ESP32-S3 ║
|
||||
╚════════════════════════════════════════╝
|
||||
Compilé le : Jun 8 2025 12:00:00
|
||||
CPU Freq : 240 MHz
|
||||
Flash size : 4 MB
|
||||
Free heap : 346120 octets
|
||||
|
||||
── Étape 1 : Montage de LittleFS
|
||||
[ OK ] LittleFS.begin()
|
||||
|
||||
── Étape 2 : Informations de la partition
|
||||
[INFO] Taille totale : 1376256 octets (1344 KB)
|
||||
...
|
||||
|
||||
── Étape 13 : ...
|
||||
╔════════════════════════════════════════╗
|
||||
║ RÉSUMÉ DES TESTS ║
|
||||
╠════════════════════════════════════════╣
|
||||
║ PASS : 20 FAIL : 0 ║
|
||||
╠════════════════════════════════════════╣
|
||||
║ ✔ Tous les tests sont PASSÉS ! ║
|
||||
╚════════════════════════════════════════╝
|
||||
```
|
||||
|
||||
## LED de statut
|
||||
|
||||
Après les tests, la LED intégrée (`LED_BUILTIN`) clignote :
|
||||
- **Lentement (500 ms)** : tous les tests sont passés ✔
|
||||
- **Rapidement (100 ms)** : un ou plusieurs tests ont échoué ✘
|
||||
|
||||
## Structure du projet
|
||||
|
||||
```
|
||||
esp32_littlefs_test/
|
||||
├── platformio.ini # Configuration PlatformIO (2 environnements)
|
||||
├── Makefile # Makefile avec paramètre BOARD=
|
||||
├── default.csv # Table de partitions 4 MB (esp32s3_zero)
|
||||
├── default_16MB.csv # Table de partitions 16 MB (esp32s3_n16r8v)
|
||||
├── src/
|
||||
│ └── main.cpp # Code de test LittleFS
|
||||
├── data/ # Contenu uploadé sur LittleFS (vide = OK)
|
||||
│ └── .gitkeep
|
||||
└── README.md
|
||||
```
|
||||
Reference in New Issue
Block a user