Tasmota



  • Bonjour
    Je pense qu'il y a un petit probleme avec cette version, ou je ne compile pas comme il le faut :

    • Branche dev
    • J'ai decommenté #define USE_TELEINFO dans My_user_config..h
    • J'ai decommenté tasmota-sensors dans platformio.ini
    • Lancement de la compilation par platformio run -e tasmota-sensors
      et la j'ai le message d'erreur suivant :

    /home/steph/Téléchargements/Tasmota-development/tasmota/xnrg_15_teleinfo.ino: In function 'void DataCallback(_ValueList*, uint8_t)':
    /home/steph/Téléchargements/Tasmota-development/tasmota/xnrg_15_teleinfo.ino:190:21: error: 'TINFO_FLAGS_STRING' was not declared in this scope
    if (flags & TINFO_FLAGS_STRING) { c = '$'; }
    ^
    /home/steph/Téléchargements/Tasmota-development/tasmota/xnrg_15_teleinfo.ino: In function 'void ResponseAppendTInfo()':
    /home/steph/Téléchargements/Tasmota-development/tasmota/xnrg_15_teleinfo.ino:363:43: error: 'TINFO_FLAGS_STRING' was not declared in this scope
    if (!isNumber || (me->flags & TINFO_FLAGS_STRING) ) {
    ^
    Compiling .pioenvs/tasmota-sensors/libde3/ESP8266WiFi/ESP8266WiFiGratuitous.cpp.o
    *** [.pioenvs/tasmota-sensors/src/tasmota.ino.cpp.o] Error 1
    =========================================== [FAILED] Took 6.44 seconds ===========================================

    Je n'ai pas l'impression que TINFO_FLAGS_STRING soit défini quelque part, en tout cas il ne l'est pas dans LibTeleinfo.h.
    // what we done with received value (also for callback flags)
    #define TINFO_FLAGS_NONE 0x00
    #define TINFO_FLAGS_NOTHING 0x01
    #define TINFO_FLAGS_ADDED 0x02
    #define TINFO_FLAGS_EXIST 0x04
    #define TINFO_FLAGS_UPDATED 0x08
    #define TINFO_FLAGS_ALERT 0x80 /* This will generate an alert */

    Merci de votre aide.

    Steph



  • Correct

    fixé par ce pull request https://github.com/arendst/Tasmota/pull/9118

    en attendant, à supprimer

    if (flags & TINFO_FLAGS_STRING) { c = '$'; }
    

    2eme erreur, à remplacer par

    if (!isNumber) {
    

    Merci de l'info



  • Ok c'est mergé sur le repo officiel tasmota, donc pas de modif, un pull et c'est parti ;-)



  • @Charles bonjour à tous
    je continu mes essais
    j ai un compteur linky
    j ai fait le montage avec l optocoupleur et le transistor
    je branche sur la D7 de mon WEMOS le port serie

    j'ai bien corrigé les modifications comme noté ci dessus
    j ai tapé setOption102 0 dans la ligne de commande

    voici les messages que j'obtiens de WEMOS en fonctionnement

    903ba739-0e40-46bc-bc19-a9a56aa6e38f-image.png

    comment etre sur de la communication ?

    merci



  • 836cfb1c-5d7f-4322-9f3f-8a7c078b9772-image.png



  • Ton linky est bien en mode historique ?

    Si oui alors Oscillo ou vérifier 3 fois ton montage, d'ailleurs, c'est quoi le schéma du montage et valeur des resistances ?



  • bonne question c 'est quoi le mode historique et comment on y arrive ?



  • @pascal,

    Je ne vais pas détailler ici, ça a déjà été décris et partagé plein de fois par des personnes sur la toile, Google sera ton ami avec un mode historique standard linky

    Déjà un élément de réponse.
    https://lucidar.me/fr/home-automation/linky-customer-tele-information/



  • Tasmota commence à vraiment supporter beaucoup de choses mais au niveau IHM c'est jamais très folichon (bien moins bien que ton firmware Charles). Bon après il faut admettre qu'avec home assistant et autres on ne se connecte pas tous les jours directement sur les ESP pour regarder leur interface.... mais bon :D

    Sinon pour les utilisateurs de Home Assistant j'ai également un firmware très simple pour ESPhome, ça se trouve ici pour les intéressés :
    https://github.com/schmurtzm/Teleinfo-TIC-with-ESPhome



  • @pascal-Mochel
    Sinon pour savoir si ton compteur linky est en mode standard ou historique, il suffit de faire défiler les infos sur son écran LCD. Tu as un étiquette TIC qui donnera la bonne information.

    Du coup tu positionnes Setoption102 à 1 si mode standard, tu le laisse à 0 si historique...

    Et si tout est bon, les infos vont s'afficher sur le menu principal de l'interface web Tasmota.



  • @Schmurtz Je suis d'accord avec toi, mais après c'est ingérable, je l'ai vu avec WiFInfo, les librairies et les API évoluent en permanence, faut suivre et mettre à jour le Wifi, dès que tu t'y remets 6 mois après ça compile plus, le SDK, le MQTT tout change et c'est un vrai temps plein si on veut faire les choses correctement (en plus de l'IHM), du coup, Tasmota ça me va bien je n'ai à gérer que la partie Téléinfo :-) après les affichages se font dans les box domotique ou front end :-) et c'est Théo qui gère tout le reste



  • merci pour les informations
    je pense que cela vient de mon cablage
    le linky est bien en mode historique



  • Afin d'enlever des doutes sur mon mode de compilation est ce possible d'avoir un .bin avec wifinfo d'activé sur cette derniere version?
    Car avec tasmota je n'ai aucun log mais le meme montage avec mon simple wifinfo j'ai bien les trames.
    ![alt text](31ed685d-c4f7-48da-afd5-bccffd6598dd-image.png image url)

    Je n comprend plus grand chose

    Merci



  • @Steph-Flo
    pour savoir si t'as bien la bonne version avec teleinfo il faut aller dans le template et voir si tu peux associer ta pin Rx (GPIO3 ou GPIO13) à la pin TInfo Rx

    cea357b7-cbd6-44a2-9366-62e6805577c4-image.png

    ensuite au reboot tu verras des informations dans la console WEB normalement, enfin si tu as activé le debug WEB web avec le niveau Debug
    commande webLog 4 dans la console

    00:00:00 CFG: Loaded from flash at F4, Count 241
    00:00:00 QPC: Flag 7E
    00:00:00 CFG: CR 385/699, Busy 0
    00:00:00 SRC: Restart
    00:00:00 Project tasmota Tasmota Version 8.4.0.1(sensors)-2_7_3_2
    00:00:00 TIC: inferface saved settings 0 bps
    00:00:00 TIC: inferface speed 1200 bps
    00:00:00 TIC: RX on GPIO3
    00:00:00 TIC: always enabled
    00:00:00 SNS: Hardware Serial
    00:00:00 SER: Set to 7E1 1200 bit/s
    00:00:00 TIC: using hardware serial
    00:00:00 TIC: Ready
    00:00:00 SHT: Sensor did not ACK command
    00:00:00 I2C: TSL2561 found at 0x39
    


  • Oui j'ai testé sur GPIO13 et GPIO3
    ![alt text](69c4add3-77aa-4e09-ab9c-22ed6b57079c-image.png image url)

    Mais au départ je n'avais pas TinfoRx, il est apparu après avoir fait un setOption102 1 puis un setOption102 0.
    c'est pour cela que j'ai des doutes

    Steph



  • @Steph-Flo heuu normalement ça n'a rien à voir la liste des pins et fonctions dispos sont à la compilation, le setOption configure juste la vitesse du serial, curieux ton affaire



  • Bon j’ai remis ce bin : http://hallard.me/blog/wp-content/uploads/tasmota-sensors.bin.gz, puis {"NAME":"WifInfo","GPIO":[7,255,255,210,6,5,255,255,255,255,255,255,255],"FLAG":15,"BASE":18}.
    Pas de résultat sur gpio3 mais ok sur gpio13
    Le problème c’est que j’ai plus la console.
    Cela prouve que mon .bin n’était pas bon. Est ce que c’est possible du coup de me compiler 1 .bin avec la dernière version?
    Elle serai peu être plus robuste.



  • merci a tous
    cela fonctionne

    9c65bfae-538c-4556-8a5a-9b4c64884035-image.png



  • Bonjour,
    J'ai vu que dans la toute dernière version de Tasmota il y a une nouvelle option SetOption108 pour la téléinfo.
    Quand elle est activée, la trame téléinfo brute remonte en temps réel en plus de l'info d'énergie.
    C'est excellent mais j'avais 2 petites suggestions d'amélioration :

    1. Ce serait pertinent de mettre un tag "Teleinfo" sur le json envoyé pour pouvoir l'identifier.
      Au lieu d'avoir : { "ADCO":"xxxxx","OPTARIF":...
      Il faudrait : {"Teleinfo":{"ADCO":"xxxxx","OPTARIF":...
      Et éventuellement préciser historique ou standard.

    2. Les trames remontent en temps réel et pourraient saturer mqtt (surtout en mode standard).
      Pourquoi ne pas utiliser la valeur de SetOption108 comme un intervalle d'envoi de la trame teleinfo en secondes (ou dixièmes), et à 0 désactivé.



  • Bonjour,

    Merci pour le retour,

    le but du setOption108 c'est pour être compatible nativement avec tout ce que j'ai mis en place (et c'est aussi natif avec le broker emoncms). Et je ne veux pas tout refaire pour adapter la trame. En revanche si tu fais un setOption4 1 le topic contient d'ADCO de ton compteur ce qui devrait te permettre de t'abonner uniquement a tel ou tel compteur :-)

    Regarde le changement en direct ci-dessous

    7:10:14 MQT: tele/wifinfo_7B43/RESULT = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:15 MQT: tele/wifinfo_7B43/RESULT = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:17 MQT: tele/wifinfo_7B43/RESULT = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:18 MQT: tele/wifinfo_7B43/RESULT = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:20 MQT: tele/wifinfo_7B43/RESULT = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:21 CMD: setoption4 1
    17:10:21 SRC: WebConsole from 192.168.1.220
    17:10:21 CMD: Group 0, Index 4, Command "SETOPTION", Data "1"
    17:10:21 MQT: stat/wifinfo_7B43/SETOPTION = {"SetOption4":"ON"}
    17:10:22 MQT: tele/wifinfo_7B43/031428067147 = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:22 CFG: Saved to flash at F4, Count 254, Bytes 4096
    17:10:23 MQT: tele/wifinfo_7B43/031428067147 = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    17:10:25 MQT: tele/wifinfo_7B43/031428067147 = { "ADCO":"031428067147","OPTARIF":"HC..","ISOUSC":15,"HCHC":2216245,"HCHP":0,"PTEC":"HC..","IINST":1,"IMAX":1,"PAPP":150,"HHPHC":3,"MOTDETAT":0}
    

    Tu as raison pour le mode standard je n'y avait pas pensé. Que dirais-tu dans ce mode la de n'envoyer la trame qu'une fois par seconde (ca tombe bien la routine de management est executée toutes les 250ms)?


Log in to reply