Bonjour à toutes et à tous,
J'essaie de développer ce qu'on appelle un routeur photovoltaïque. C'est un système qui redirige le surplus de production de panneaux photovoltaïques vers un consommateur potentiel : un chauffe-eau par exemple.
Ce système se compose :
- d'une partie électronique pour la gestion du surplus : c'est fait.
- d'une interface de communication des infos électriques au travers d'un système client serveur WEB. Le serveur est un ESP32 ; le client est un PC ou un smartphone : c'est mon problème.
A ce jour, j'ai réussi à transférer des fichiers (qu'ils soient en mémoire vive, dans la flash ou dans une carte SD) vers mon PC pour soit :
- les visualiser,
- les enregistrer,
- tracer des courbes.
Le problème : je ne maitrise pas du tout le mode de transfert de ces données.
Par exemple, dans mon interface, j'ai un bouton qui me permet d'afficher le contenu d'un fichier. Le problème est que ce fichier s'affiche dans une nouvelle page. Il faut que je revienne sur la page précédente pour retrouver mon bouton. Cela correspond au code suivant :
le bouton dans la page HTML :
<a href="view-data"><button class="button button-data">Historique Puissance</button></a>
Le code de gestion :
server.on("/view-data", HTTP_GET, [](AsyncWebServerRequest *request){ // Handle the View Data button
request->send(LittleFS, "/data.txt", String(), false);
});
Ce que je voudrais, est que ce fichier s'affiche sur la même page que celle où il y a mon bouton ; dans un espace réservé à des affichages de données, de courbes.
A mon sens, c'est ce qui se trouve dans la partie server.on("/view-data", ..., qu'il faut modifier. Peut-être autre chose. Là, je ne vois pas du tout ce qu'il faut faire.
D'une manière plus globale, ce que je souhaite avoir est page WEB unique dans laquelle j'ai des boutons permettant de choisir ce que je veux visualiser et un espace - plus bas dans cette page - dans lequel vont s'afficher les résultats (données ou courbes).
A suivre pour des problèmes équivalents.
Cordialement.
Pierre.

