Vote for this board, with enclosure format
The size is as follow


Enclosure reference and datasheet
http://evatron.com/enclosures/sensor-cases/pp42m/
Vote for this board, with enclosure format
The size is as follow


Enclosure reference and datasheet
http://evatron.com/enclosures/sensor-cases/pp42m/
Vote for current board
The size is as follow

@AuFilElec
Géniale ton interface WEB pour les zones, c'est cool 
Pour l'interface WEB je viens de tout passer en AsyncTCP (merci à @me-no-dev) et je t'assure qu'au niveau performance, c'est juste le jour et la nuit, avant au 1er refresh le temps de charger bootstrap ça prenait genre 3/4 secondes, maintenant en moins d'une seconde c'est bouclé!
En plus j'ai tout migré en WebSockets et j'ai ajouté une console série WEB pour passer des commandes, la config et voir les LOG, ça commence à donner un truc qui me plait.
Plus qu'a finaliser et intégrer ça dans le remora car pour le moment c'est pour un autre projet.

Tu peux déjà regarder l'exemple de la console Web Serial to Websocket si tu veux c'est ici car il y a aussi un dossier intéressant (webdev) qui contient :
J'utilise le même principe sur remora et WiFinfo avec qui scripts plus avancés car ils minifient les js et css non minifiés, et en plus ils les concatène tous en 1 seul fichier pour un chargement plus rapide depuis l'ESP vers le browser.
Bonjour,
Pour ceux qui rencontrent des soucis de commande de fils pilote avec les optos blanc (TLP168J), il faut essayer d'alimenter les optocoupleurs en 3.3V en lieu et place du 5V, pour cela il faut :
Une photo valant mieux que des explications, la voici :

Je vous souhaite à tous un très joyeux noël.
@scalz
ouais c'est compliqué (voir même complètement fou) de vouloir gérer le hard et le soft, nous sommes que des humains, notre gros soucis c'est que le temps est le même pour tout le monde et il nous faudrait des journées de 48H, une soft, une hard hahahaha
En plus tout le socle Arduino ESP8266 ça bouge tout le temps, l'équipe est super active et réactive, ça avance vite et une version OK peu ne plus compiler 6 mois après car tout à changé mais que en bien !
Ah oui je ne vous ai pas dit aussi, j'ai tout passé le JSON avec la super librairie ArduinoJSon de Benoit (encore un Frenchy), la encore trop de la balle à tel point que la AsyncWeb socket de @me-no-dev inclue tout ce qu'il faut pour s'intégrer avec cette lib.
Après je suis pas super calé en C++ (class, template, virtual) et parfois je galère pour contribuer aux codes de ces super dev. En revanche le C ça va très bien 
@AuFilElec
Pour la partie du code dont tu parles, tu as du voir mais je fais un rappel, plus on aura d'yeux sur le soucis plus vite on le trouvera (bien que je suis pas certain que ça vienne du code, je l'utilise sous linux depuis des lustres sans le moindre soucis). Donc
La structure de la liste chaînée _ValueList contient pour chaque élément (je fais grace du premier (root) qui est vide)
// Linked list structure containing all values received
typedef struct _ValueList ValueList;
struct _ValueList
{
ValueList *next; // next element
uint8_t checksum;// checksum
uint8_t flags; // specific flags
char * name; // LABEL of value name
char * value; // value
};
Donc pour chaque élément, tu as:
*next un pointeur sur la même structure du prochain élément, sauf si nous sommes sur le dernier élément bien sûr auquel cas ce pointeur est NULLchecksum la checksum du couple LABEL/VALUE de l'élémentflags des drapeaux servant a savoir su l'élément vient d'être ajouté, ou juste modifié, .. (par exemple une valeur IINST modifiée)*name un pointeur sur la chaine qui va contenir le nom du label (ex IINST)*value un pointeur sur la chaine qui va contenir la valeur (ex 23)Ce qu'il faut bien comprendre c'est que quand tu alloues un élément de la liste chaînée (parce que viens de recevoir une nouvelle étiquette) tu n'as pas la taille pour stocker le nom de l'étiquette ainsi que sa valeur, ce ne sont que des pointeurs *name et *value il faut donc allouer l'espace mémoire nécessaire et c'est la qu'interviennent les lignes dont tu parles.
Donc dans un 1er temps on crée un node vide de la taille de la structure auquel on ajoute la taille de l'étiquette+1 et de sa valeur+1 (les 2 +1 pour les fins de chaine \0) newNode
// Our linked list structure sizeof(ValueList)
// + Name + '\0'
// + Value + '\0'
size_t size = sizeof(ValueList) + lgname + 1 + lgvalue + 1 ;
// Create new node with size to store strings
if ((newNode = (ValueList *) malloc(size) ) == NULL)
return ( (ValueList *) NULL );
else
// get our buffer Safe
memset(newNode, 0, size);
// Put the new node on the list
me->next = newNode;
Ensuite on positionne les valeurs de la structure, et la, c'est la ruse on stocke la chaîne du nom à la fin de la structure (car y on a réservé plus de place), donc son pointeur est l'adresse du noeud + la taille de la structure
newNode->name = (char *) newNode + sizeof(ValueList);
et enfin le pointeur de la valeur juste après la valeur du nom
newNode->value = (char *) newNode->name + lgname + 1;
D'ou le code suivant:
// First String located after last struct element
// Second String located after the First + \0
newNode->checksum = checksum;
newNode->name = (char *) newNode + sizeof(ValueList);
newNode->value = (char *) newNode->name + lgname + 1;
Et après on y copie label + valeur
// Copy the string data
memcpy(newNode->name , name , lgname );
memcpy(newNode->value, value , lgvalue );
Voilà j'espère avoir pu éclairer sur le sujet 
Et Tadaaaaaaaaaaaa , la vache, en écrivant ça je viens de percuter sur un truc, je crois comprendre ce qu'il se passe et je pense avoir trouvé le bug !!!!!
L'ESP aligne par défaut les structures et leur contenu sur 4 octets et donc en fonction des tailles label/value tout peut changer et on se retrouve avec des alignement foireux (j'ai déjà rencontré ce souci en sauvant des config sous forme de structure en flash) que j'ai réglé avec des directives pragma pour aligner sur 1 octet.
Peux-tu essayer de changer le code de déclaration de la structure en y ajoutant les pragma avant et après déclaration de la structure? Si ça ne suffit pas il faudra aussi tenter d'aligner malloc pour label/value sur 4
#pragma pack(push) // push current alignment to stack
#pragma pack(1) // set alignment to 1 byte boundary
// Linked list structure containing all values received
typedef struct _ValueList ValueList;
struct _ValueList
{
ValueList *next; // next element
uint8_t checksum;// checksum
uint8_t flags; // specific flags
char * name; // LABEL of value name
char * value; // value
};
#pragma pack(pop)
Bon tests 
Charles
Merci pour le lien, et oui @Barbu-Dor à fait un boitier génial justement pour le wemos teleinfo, peut être il peut partager les fichiers, je peux même les mettre sur le repo git dédié si il veut bien (ou faire une PR pour ça il maitrise le sujet)


@arthurlutz
Merci pour ton commentaire.
Alors, je te répondrais, oui, j'ai vu un tas de choses bizarre avec emoncms et je t'avouerais que parfois la mise en oeuvre et la compréhension des graphes relève de la magie vaudou !
En plus ils ont récemment mis à jour la version sur le site officiel et je ne suis pas persuadé que ça n'ai pas ajouté des soucis.
Peux-tu nous copier ta liste de feed et d'input ?
Essayes ça
http://hallard.me/blog/wp-content/uploads/tasmota-sensors.bin.gz
si tu veux le faire en OTA tu dois faire en 2 étapes
Bonjour,
Comme vu dans ce post, il se peu que dans certains cas après quelques mois d'utilisation, que la réception de la téléinfo ne fonctionne plus correctement.
Ayant eu entre les mains le cas, et pour rappel le schéma est le suivant

J'ai donc commencé par:
Etant donné que le 3eme composant sur lequel le signal arrive est le RXD du chip FTDI FT230SX, j'en ai déduit (peut être à tord) que la resistance de pull-up interne devait varier avec le temps et qu'en fonction des compteurs électriques, sortir de la plage de fonctionnement.
J'ai donc testé en ajoutant une pull-up de 10K comme le montage ci dessous et tout rentre dans l'ordre.

Le montage final devient alors le suivant avec R7 rajoutée.

La prochaine révision V1.2 contiendra le fix.
@stephane-petit je viens de tester le module sur mon Linky en Standard, idem ça fonctionne direct

@stephane-petit carte bien reçue, rien flashé, juste branché et mise sur mon wifi via la console série, puis branchée sur mon compteur de test (historique Bleu Blanc Rouge) ex tempo et enfin configuré la téléinfo en mode historique
00:00:00.002 HDW: ESP32-PICO-V3-02 v3.1 (PSRAM)
00:00:00.051 UFS: FlashFS mounted with 5064 kB free
00:00:00.064 CFG: Loaded from File, Compte 106
00:00:00.067 I2C: Bus1 using GPIO22(SCL) and GPIO21(SDA)
00:00:00.109 BRY: Berry initialized, RAM used 3293 bytes
00:00:00.134 TIC: Serial UART 2 démarré à 1200bps (buffer 256)
00:00:00.134 TIC: Teleinfo driver enabled
00:00:00.147 CFG: Energy loaded from file
00:00:00.147 NRG: Init driver 15
00:00:00.150 Projet tasmota - Teleinfo Version 15.5.0(tasmota)-3.3.8(2026-06-27T10:03:53)
00:00:00.178 HLP: Run homie to set Homie auto-discovery [0]
00:00:00.178 HLP: Run domo to get help on Domoticz integration
00:00:00.178 HLP: Run hass <0/1> to disable/enable Home Assistant auto-discovery
00:00:00.189 HLP: Run hass_publish to force auto_discovery publication
00:00:00.200 HLP: Run thingsboard <0/1> to set ThingsBoard publication
00:00:00.201 HLP: Run tcp to get help on TCP Server commands
00:00:00.271 HLP: Run forecast to get help on Solar Production Forecast
00:00:00.272 HLP: Run ifx_tic <0/1> to manage InfluxDB publication
00:00:00.283 HLP: Run ifx_ver <1/2> to set InfluxDB version
00:00:00.301 HLP: Run rte to get help on RTE integration
00:00:00.302 RTE: Private key missing (base64)
00:00:00.305 REL: Loaded linky relay association
00:00:00.305 HLP: Run relai to get help on Linky & relay
00:00:00.316 HLP: Run cpuload to display average load graph on main page
00:00:00.317 TIC: Partition mounted
00:00:00.328 HLP: Run energyconfig to get help on all Teleinfo commands
00:00:00.490 BRY: Successfully loaded 'autoexec.be'
00:00:00.765 TIC: Change LED from [0,0,255] to [255,255,0]
00:00:00.983 TIC: 1er message reçu après 0.9s
00:00:01.168 TIC: Compteur Historique
00:00:03.218 TIC: Contrat en kVA
00:00:03.218 TIC: Changement de période Pleines Bleu (index 2, level 1, hchp 1)
00:00:03.374 TIC: Numéro de série 701201460328
00:00:03.374 TIC: Fabricant Landis & Gyr (export) (2012)
00:00:03.374 TIC: Modele Bleu Mono. BBR
00:00:04.949 WIF: Connexion à l'AP1 CH2I-HOTSPOT Channel 6 BSSId 8A:04:39:D3:29:DB (Strongest) en mode HT20 comme denky-053DB0-7600...
00:00:07.382 WIF: Connecté
00:00:07.638 HTP: Web server active on denky-053DB0-7600 with IP address 192.168.1.148
20:19:32.610 MQT: Tentative de connexion...
20:19:32.615 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 10 s
20:19:34.063 TIC: Change LED from [255,255,0] to [0,0,255]
20:19:44.161 MQT: Tentative de connexion...
20:19:44.166 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 20 s
20:20:05.257 MQT: Tentative de connexion...
20:20:05.261 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 30 s
20:20:36.190 MQT: Tentative de connexion...
20:20:36.195 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 40 s
20:21:17.166 MQT: Tentative de connexion...
20:21:17.172 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 50 s
20:22:08.174 MQT: Tentative de connexion...
20:22:08.179 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 60 s
20:23:09.204 MQT: Tentative de connexion...
20:23:09.209 MQT: Échec de connexion à 192.168.1.10:1883, rc -2. Nouvelle tentative dans 70 s
bien sur il connecte pas en MQTT czar c'est ta config pas la mienne

@Stephane-Petit Je te propose donc de me le retourner pour un échange standard, on passe en MP
@Stephane-Petit bon tout est bon coté config, tu peux essayer de tourner doucement le petit potentiomètre a coté du connecteur vert dans un sens puis dans l'autre voir si ça change qq chose (j'imagine que tu as déjà testé) ?
Attention il faut un tout petit tournevis et il est assez fragile.

@Stephane-Petit la configuration du "modèle" donne quoi ?

Stephane,
Serait-il possible de nous mettre une capture de la configuration de l'écran du menu principal et du menu de configuration / téléinfo comme ceux ci ?


@Yves30290 ils servent à connecter des capteurs optionnels au format QWIIC ou Stemma sonde de temperature, de luminosité, capteur de la qualité de l'air, ... bref toute une panoplie en fonction des besoins.
Concernant les données, et les automations pour apple home il faut passer par home assistant par exemple.
@Arnaud-R ça devrait être mieux j'ai changé un paramètre 
Si quelqu'un pouvait modifier mon post et ne garder que la première question. Qui d'ailleurs, m'étonne toujours. Les courbes conso / reventes sont étonnament identiques.
Normalement tu peux éditer/modifier ton post sans aucun soucis.