Bonjour à tous,
J'ai à nouveau (ou pas encore vu) un plantage sur mon ESP32 mais pas le même que le précédent.
Au moins j'arrive à le reproduire assez précisément, c'est déjà ça...
Serveur réalisé classiquement avec
#include <AsyncTCP.h>
#include <ESPAsyncWebServer.h>
#include <LittleFS.h>
Le plantage
E (46034) task_wdt: Task watchdog got triggered. The following t00000000 0x00000000 0x00000000 0x00000000 0x00000000
3fcbee00: 0x00000004 0x00000003 0x3fcd07a8 0x00000002 0x3fcb1000 0xffffffff 0x3fcd07a8 0x4200f6c6
3fcbee20: 0x3fcb1000 0xffffffff 0x3fcd0780 0x42035f94 0x00000000 0x00000000 0x00000000 0x3fcd0780
3fcbee40: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x4038e200
3fcbee60: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000
3fcbee80: 0x00000000 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xbaad5678
3fcbeea0: 0x00000a0c 0xabba1234 0x00000a00 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5
3fcbeec0: 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5
3fcbeee0: 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5 0xa5a5a5a5
a lieu systématiquement quand, depuis le navigateur, je recharge la page et le cache du navigateur (CTRL-MAJ-R ou MAJ-F5)
l'IHM web comporte pas mal de fichiers (.html, .css, .js, .png et trois polices .ttf)
J'ai l'impression que c'est là que ça coince, je vais essayer d'être clair.
Point 1 : Je suis obligé de servir ces fonts :
- l'IHM n'est pas à priori relié à internet (pas possible d'utiliser les googlefonts par exemple)
- deux sont peu courantes et pas forcément sur le PC de l'utilisateur (OK c'est un caprice esthétique), la troisième est totalement perso
Point 2 : Les fonts sont « appelées » par le CSS :
@font-face {
font-family: oxanium;
font-style: normal;
src: url("./Oxanium-Regular.ttf");
}
@font-face {
font-family: oxanium;
font-weight: bold;
src: url("./Oxanium-Bold.ttf");
}
@font-face {
font-family: icons;
font-style: normal;
src: url("./icons.ttf");
}
body {
font-family: oxanium, Helvetica, Arial, sans-serif;
font-size: 1.5rem;
}
// couic la suite du CSS
Point 3 : si je commente la partie
// polices de caractère
server.on("/Oxanium-Bold.ttf", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(LittleFS, "/Oxanium-Bold.ttf", "application/octet-stream");
});
server.on("/Oxanium-Regular.ttf", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(LittleFS, "/Oxanium-Regular.ttf", "application/octet-stream");
});
server.on("/icons.ttf", HTTP_GET, [](AsyncWebServerRequest *request){
request->send(LittleFS, "/icons.ttf", "application/octet-stream");
});
C'est moche (bascule sur les polices par défaut du CSS) mais ça ne plante plus !
Point 4 : Ce qui m'a mis la puce à l'oreille, c'est qu'en accédant à l'IHM avec un smartphone qui n'a pas la police installée, le plantage est immédiat au premier chargement. Mon ordi l'a, c'est peut-être pour ça que je n'ai pas vu très vite le bug.
Est-ce que quelqu'un a une idée de l'origine et/ou d'une solution ?
