Bonjour à tous,
J'utilise un ESP32 avec les librairies usuelles (WiFi, WebServer, WebClient etc.)
Et j'utilise pour la matrice de LEDs (64x64) la librairie RGBmatrixPanelGP.
Jusque là pas de soucis, tout fonctionne.
Mais lorsque je veux accéder au SPIFFS pour mes pages Web et images, l'ESP32 reboot sans préavis.
J'ai essayé d'arrêter le chien de garde, mais ça plante quand même.
Je n'ai aucune interruption dans mon programme (il y en a surement dans les librairies)
Je cherche en vain, mais je ne trouve rien sur le sujet.
L'erreur relevé par "ESP Exception Decoder" est:
HTTP - Autentification ok.
/index.htm
Ouverture du fichier
Guru Meditation Error: Core 1 panic'ed (Cache disabled but cached memory region accessed).
Ce qui donne:
PC: 0x400e2e3c EXCVADDR: 0x00000000 Decoding stack results 0x400e2e39: delay at C:\Users\jlnap\AppData\Local\Arduino15\packages\esp32\hardware\esp32\2.0.4\cores\esp32*esp32-hal-misc.c* line 178
En effet, j'avais zappé...
Ça n'est pas une erreur dans ton code. Peut-être que l'ESP32 est mal installé dans l'IDE.
Je suggère de vérifier que tu as les bonnes URL dans les paramètres de l'IDE et de ré installer les packages ESP32. Voir ici ESP32 Thing Hookup Guide - SparkFun Learn.
Bonjour,
Merci pour vos réponses.
Pour le lien JSon je l'avais dans ma liste de SDK, j'ai même la DEV (beta je pense).
Je suis en version 1.8.19 de l'IDE Arduino, mais depuis quelques mises à jour de l'IDE on n'a plus accès (pas proposé) dans le menu de choisir la fragmentation Flash.
Je ne suis donc pas maitre du partitionnement de la mémoire Flash, ni même de pouvoir remplacer pendant le chargement l'ensemble de la Flash comme auparavant.
Comme la gestion de la matrice est faite en SPI il doit y avoir des interruptions de niveau supérieur au "loop" qui a un niveau très bas d'après ce que j'en sais et j'avoue ne pas avoir regardé le contenu de la librairie, ce que je compte faire aujourd'hui.
Je continu mes investigations et si j’aboutis, je viens poster, ça intéressera surement ceux qui rencontreront le problème.
Suite...
Bon je viens de fouiller rapidement la librairie RGBmatrixPanelGP et en fait elle s'appuie sur la librairie FreeRTOS pour la gestion des Cores et de la vitesse du "Timer 0" qui se retrouve à 40Mhz donc à la moitié de la vitesse du processeur, il y a également une interruption.
Je crois que mon problème est insoluble, quand j'affiche le contenu de la Flash avant le "begin" de RGBmatrix dans "setup", tous les fichiers (envoyé avec "ESP32 Sketch Data Upload") sont bien là.
Si je les affichent la ligne suivant le "begin", ça reboot sans arrêt.
Le problème est donc bien lié à cette librairie.
Je vais signaler ce point au développeur, on verra ce qu'il dira sur le sujet.
@+
Il doit exister d'autres bibliothèques pour piloter ces matrices 64x64 avec un ESP32. Je pensais qu'Adafruit en avait une mais elle semble limitée à 32x32. Ici, il y en a une autre :
Merci, j'ai effectivement constaté qu'il en existait d'autres, mais je ne voulais pas réécrire mon programme qui tourne très bien hormis l'accès au SPIFFS.
Je vais encore fouiner, mais sinon je me résoudrai à tout repenser avec une autre librairie.
Merci encore pour les suggestions.