Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Choix d'options / fonctionnalités avant téléchargement et maj OTA
#1
Bonjour 
Sujet largement abordé avec certains d'entres vous et pas sûr pour ma part que ce soit facilement réalisable.
Face aux nombreuses évolutions et personnalisations que ne peut retenir/gérer immédiatement André dans le suivi des évolutions du routeur, 
l'idée ici serait de pouvoir proposer un choix d'options aux utilisateurs lors du téléchargement de la version XX du routeur depuis le site web.
Par exemple, choix du mode de connexion shelly ou bien emphase ( si pas emphase concerné pourquoi charger le code correspondant qui ne sera jamais utilisé !)
autres choix : 
- écran OLED
- connexion Ethernet
- ...
Un choix d'option à la carte qui une fois sélectionné, permettrait de générer le .bin correspondant et qui serait téléchargé pour maj OTA afin de préserver une procédure de maj la plus simple possible.
Il s'agit là d'une suggestion de dev qui ouvrirait la portes aux dev parallèles et spécifiques (connexion ethernet, écran oled, choix du type de connexion ...)  tout en préservant l'arbitrage et le choix de la mise à disposition des évolutions par André.

Si c'est faisable, c'est surement pas si simple....   vos réactions et avis d'André ?
Config : 3 routeurs F1ATB en V13_01 - mode Triacs 
PV 3kw (8 panneaux TrinaSolar 425W +Onduleur SunGrow 3KW) - Supervision Domotique : Home Assistant via Shelly & MQTT
Autoconsommation moyenne 95 %
Répondre
#2
Bonjour,

Je vois 2 problématiques différentes:

  1. Générer les fichiers sources.
    Ce ne sont que des fichiers texte. Ça doit pouvoir se faire en jouant avec les define et en incluant seulement les fichiers ou portions de code nécessaires. Je ne dis pas que c'est facile mais rien d'insurmontable amha.

  2. Compiler le programme.
    Là c'est plus compliqué parce qu'il faut héberger le service sur un serveur sur lequel on peut installer la solution arduino et suffisamment puissant pour pouvoir compiler les sources. Ça nécessite d'avoir accès au système et donc d'avoir un serveur dédié => ç'est rarement gratuit !
    En dehors de ça, il faut pouvoir gérer des sessions pour ne pas écrouler le serveur avec trop de compilations en parallèle.
Répondre
#3
(31-12-2024, 12:21 PM)59jag a écrit : j ai fait un fichier config.h pour choisir que les fonctions utile  cela permet de compiler a la carte et de gagner de l emplacement memoire .

mon fichier config.h:
Code :
#ifndef CONFIG_H
#define CONFIG_H

// Activer/Désactiver les options

//#define Active_Linky         // Décommente pour activer l'option
//#define Active_Enphase       // Décommente pour activer l'option
//#define Active_ShellyProEm   // Décommente pour activer l'option
#define Active_ShellyEm        // Décommente pour activer l'option
//#define Active_UxI           // Décommente pour activer l'option
//#define Active_UxIx2         // Décommente pour activer l'option
//#define Active_UxIx3         // Décommente pour activer l'option
//#define Active_SmartG        // Décommente pour activer l'option
//#define Active_MQTT          // Décommente pour activer l'option
//#define Active_Ext           // Décommente pour activer l'option
#define Active_Ejp             // Décommente pour activer l'option
//#define Active_TempoRTE      // Décommente pour activer l'option

#endif // CONFIG_H
ca permet de compiler que les fichier utiles

j ai fait sur la 12.06 ca prend une bonne heure mais faut le refaire a chaque nouvelle versions ca serai cool si André l incorpore dans une future version.

Bonjour 59jag,

Comment fais-tu pour la fonction ValJson par exemple qui fait partie du fichier Source_EnphaseEnvoy.ino si celui-ci n'est pas inclus ? Tu as déplacé le code ?

Tu arrives à une taille de combien avec les define que tu indiques ?
Répondre
#4
Ca sert a quoi d economiser de la memoire du moment que le programme complet toute option arrive pour l instant à rentrer dans les 4mb de l esp ?
Répondre
#5
(03-01-2025, 08:50 PM)Lolo69 a écrit : Ca sert a quoi d economiser de la memoire du moment que le programme complet toute option arrive pour l instant à rentrer dans les 4mb de l esp ?

ca permet d avoir plus d option et rajouter plien d code sans problème de memoire plusieurs modele ecran ,ethernet ejp ....

pour valson j ai juste palcer correctement les balises pour la compilation conditionnelle.
[Image: Screenshot-20250104-142030-Code-Editor.jpg]
 j ai modifier beaucoup  de code mais tous selectionnable dans config.h 
par exemple pour les messages comme je l utilise pour le debug
[Image: Screenshot-20250104-143601-Samsung-Internet.jpg]

pour la memoire gagner j ai pas trop regardé mais rien que linky tu crée un tableau de 10koctets qui ne seront jamais utilisé.
pour remette les message par defaut juste mettre ca devant //
[Image: Screenshot-20250104-144527-Code-Editor.jpg]
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : F6AAM, 2 visiteur(s)