Skip to content
  • Blog
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Community Forum

  1. Home
  2. Categories
  3. Téléinfo
  4. Téléinfo
  5. Tasmota

Tasmota

Scheduled Pinned Locked Moved Téléinfo
525 Posts 31 Posters 476.3k Views 14 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Seb HS Seb H

    @barbu-dor Oui bien sur , setoption72 à 1, te permet de dupliquer l'index de ton compteur dans le compteur total de tasmota.
    Question : Toujours dans le cadre de la tarification HP/HC, comment cela doit se passer avec cette option active ??
    Car aujourd'hui dans la trame domoticz, c'est le compteur total tasmota qui est envoyé (du moins en v 9.4)

    Barbu DorB Offline
    Barbu DorB Offline
    Barbu Dor
    wrote on last edited by
    #268

    @seb-h
    Je me suis un peu plongé dans le code de Tasmota hier et je ne suis arrivé à pas grand chose.
    Je n'ai pas trouvé le lien entre ce qui est envoyé dans la trame Domoticz et dans la trame SENSOR. Ce ne sont pas les mêmes variables...

    Concernant les 2 tarifs, Tasmota ne gère qu'une comptabilisation basée sur des tranches horaires. Il n'est pas possible, malgré l'option SetOption72 que Tasmota prenne en compte les compteurs HC et HP du Linky.
    Sincèrement je pense qu'à court terme tu t'en sortira mieux et plus vite en récupérant les données et contruisant ton message Domoticz par Rules.

    Seb HS 1 Reply Last reply
    • Barbu DorB Barbu Dor

      @seb-h
      Je me suis un peu plongé dans le code de Tasmota hier et je ne suis arrivé à pas grand chose.
      Je n'ai pas trouvé le lien entre ce qui est envoyé dans la trame Domoticz et dans la trame SENSOR. Ce ne sont pas les mêmes variables...

      Concernant les 2 tarifs, Tasmota ne gère qu'une comptabilisation basée sur des tranches horaires. Il n'est pas possible, malgré l'option SetOption72 que Tasmota prenne en compte les compteurs HC et HP du Linky.
      Sincèrement je pense qu'à court terme tu t'en sortira mieux et plus vite en récupérant les données et contruisant ton message Domoticz par Rules.

      Seb HS Offline
      Seb HS Offline
      Seb H
      wrote on last edited by
      #269

      @barbu-dor
      Merci de t'être plongé dans le code. Il y a donc bien un soucis avec l'envoit automatique de la trame domoticz et teleinfo.. En tout cas, ça fonctionnait en v9.4, sauf qu'il fallait bien réinitialiser les compteurs à la première mise sous tension, sinon il y avait aussi un décalage...
      Bah je vais tester par les rules , je vous dirais. Donc pour la puissance ENERGY#Power, pour les index TIC#EASF01 ou EASF02 etc... par contre tu récupères comment la valeur du RSSID de ton wifi(afin de le mettre dans une VAR comme pour le reste ) pour le mettre à jour en auto dans la trame domoticz ??

      Barbu DorB 1 Reply Last reply
      • Seb HS Seb H

        @barbu-dor
        Merci de t'être plongé dans le code. Il y a donc bien un soucis avec l'envoit automatique de la trame domoticz et teleinfo.. En tout cas, ça fonctionnait en v9.4, sauf qu'il fallait bien réinitialiser les compteurs à la première mise sous tension, sinon il y avait aussi un décalage...
        Bah je vais tester par les rules , je vous dirais. Donc pour la puissance ENERGY#Power, pour les index TIC#EASF01 ou EASF02 etc... par contre tu récupères comment la valeur du RSSID de ton wifi(afin de le mettre dans une VAR comme pour le reste ) pour le mettre à jour en auto dans la trame domoticz ??

        Barbu DorB Offline
        Barbu DorB Offline
        Barbu Dor
        wrote on last edited by
        #270

        @seb-h Même chose
        Le RSSI est dans le message STATE :
        { .., Wifi: { ..., RSSI: nnn, ... } }
        Donc le trigger
        ON Wifi#RSSI DO Var3 %value% ENDON

        Seb HS 2 Replies Last reply
        • Barbu DorB Barbu Dor

          @seb-h Même chose
          Le RSSI est dans le message STATE :
          { .., Wifi: { ..., RSSI: nnn, ... } }
          Donc le trigger
          ON Wifi#RSSI DO Var3 %value% ENDON

          Seb HS Offline
          Seb HS Offline
          Seb H
          wrote on last edited by
          #271

          @barbu-dor
          Super simple, faut connaitre le groupe et le non de la variable que tu veux stocker dans une VAR. Tu as une doc qui regroupe toutes ces infos ??

          En tout cas merci beaucoup , je vais pouvoir tester ça.

          Barbu DorB 1 Reply Last reply
          • Seb HS Seb H

            @barbu-dor
            Super simple, faut connaitre le groupe et le non de la variable que tu veux stocker dans une VAR. Tu as une doc qui regroupe toutes ces infos ??

            En tout cas merci beaucoup , je vais pouvoir tester ça.

            Barbu DorB Offline
            Barbu DorB Offline
            Barbu Dor
            wrote on last edited by
            #272

            @seb-h tout Tasmota est documenté
            Après ce n'est pas toujours facile de trouver son chemin dans la doc
            Pour les rules c'est là
            https://tasmota.github.io/docs/Rules/

            1 Reply Last reply
            • Barbu DorB Barbu Dor

              @seb-h Même chose
              Le RSSI est dans le message STATE :
              { .., Wifi: { ..., RSSI: nnn, ... } }
              Donc le trigger
              ON Wifi#RSSI DO Var3 %value% ENDON

              Seb HS Offline
              Seb HS Offline
              Seb H
              wrote on last edited by
              #273

              @barbu-dor
              Je viens de tester le rule que tu m'as écrit. Ca fonctionne impeccable. Par contre j'aimerais faire une petite modif ou je ne m'en sort pas seul. La valeur que me renvoit Wifi#RSSI doit être divisé par 10 et doit être arrondi. En gros je dois avoir une valeur entre 1 et 10. J'ai tenté " tele-Wifi#RSSI do var2 %value%/10" mais en fait il ne fait pas le calcul et me rajoute "/10" tout simplement. Comment pourrais je faire stp ??

              Barbu DorB 1 Reply Last reply
              • Seb HS Seb H

                @barbu-dor
                Je viens de tester le rule que tu m'as écrit. Ca fonctionne impeccable. Par contre j'aimerais faire une petite modif ou je ne m'en sort pas seul. La valeur que me renvoit Wifi#RSSI doit être divisé par 10 et doit être arrondi. En gros je dois avoir une valeur entre 1 et 10. J'ai tenté " tele-Wifi#RSSI do var2 %value%/10" mais en fait il ne fait pas le calcul et me rajoute "/10" tout simplement. Comment pourrais je faire stp ??

                Barbu DorB Offline
                Barbu DorB Offline
                Barbu Dor
                wrote on last edited by
                #274

                @seb-h Par défaut Tasmota ne comprend pas les expressions mathématiques
                Tu as 2 choix

                • Il y a des commandes pour opérer des operations sur des variables:
                  Add<x> n : ajoute n à var<x> (equivalent à Var<x> = Var<x> + n)
                  Sub<x> n
                  Div<x> n
                  Mult<x> n
                  Donc ce que tu as besoin de Div2 10
                  Essaye ON tele-Wifi#RSSI do backlog var2 %value%; div2 10 ENDON
                • L'autre choix est de compiler Tasmota avec l'option USE_EXPRESSION (+USE_TELEINFO of course) car il n'y a pas de binaire standard avec ces 2 options
                  Dans ce cas tu pourrais écrite ON tele-WIfi#RSSI do var2 = %value% / 10 ENDON
                  Note l'usage du = dans ce cas pour que Tasmota utilise l'évaluation d'expression
                Seb HS 1 Reply Last reply
                • Barbu DorB Barbu Dor

                  @seb-h Par défaut Tasmota ne comprend pas les expressions mathématiques
                  Tu as 2 choix

                  • Il y a des commandes pour opérer des operations sur des variables:
                    Add<x> n : ajoute n à var<x> (equivalent à Var<x> = Var<x> + n)
                    Sub<x> n
                    Div<x> n
                    Mult<x> n
                    Donc ce que tu as besoin de Div2 10
                    Essaye ON tele-Wifi#RSSI do backlog var2 %value%; div2 10 ENDON
                  • L'autre choix est de compiler Tasmota avec l'option USE_EXPRESSION (+USE_TELEINFO of course) car il n'y a pas de binaire standard avec ces 2 options
                    Dans ce cas tu pourrais écrite ON tele-WIfi#RSSI do var2 = %value% / 10 ENDON
                    Note l'usage du = dans ce cas pour que Tasmota utilise l'évaluation d'expression
                  Seb HS Offline
                  Seb HS Offline
                  Seb H
                  wrote on last edited by
                  #275

                  @barbu-dor
                  ON tele-Wifi#RSSI do backlog var2 %value%; div2 10 ENDON
                  Il n'aime pas l'insertion de "backlog" et du coup il me rajoute textuellement dans l'envoie de la commande ; div2 10 😑

                  Barbu DorB 1 Reply Last reply
                  • Seb HS Seb H

                    @barbu-dor
                    ON tele-Wifi#RSSI do backlog var2 %value%; div2 10 ENDON
                    Il n'aime pas l'insertion de "backlog" et du coup il me rajoute textuellement dans l'envoie de la commande ; div2 10 😑

                    Barbu DorB Offline
                    Barbu DorB Offline
                    Barbu Dor
                    wrote on last edited by Barbu Dor
                    #276

                    @seb-h C'est pas le backlog
                    En fait je me suis planté, j'étais persuadé que Div existait
                    Seul les 3 autres existent.
                    Donc il faut

                    ON tele-Wifi#RSSI do backlog var2 %value%; Mul2 0.1 ENDON
                    
                    19:53:41.719 MQT: tele/esp32dev3/STATE = {"Time":"2022-02-10T19:53:41+01:00","Uptime":"3T21:30:06","UptimeSec":336606,"Heap":85,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":34},"Wifi":{"AP":1,"SSId":"BNETWLAN","BSSId":"88:C3:97:F2:25:EC","Channel":1,"Mode":"11n","RSSI":98,"Signal":-51,"LinkCount":1,"Downtime":"0T00:00:09"}}
                    19:53:41.774 RUL: TELE-WIFI#RSSI performs "backlog var9 98 ; Mult9 0.1"
                    19:53:41.887 MQT: stat/esp32dev3/VAR = {"Var9":"98"}
                    19:53:42.142 MQT: stat/esp32dev3/MULT = {"Mult9":"9.800"}
                    19:55:00.723 RUL: TIME#MINUTE|5 performs "seriallog 2"
                    19:55:00.742 MQT: stat/esp32dev3/SERIALLOG = {"SerialLog":{"2":{"Active":"2"}}}
                    
                    Seb HS 1 Reply Last reply
                    • Barbu DorB Barbu Dor

                      @seb-h C'est pas le backlog
                      En fait je me suis planté, j'étais persuadé que Div existait
                      Seul les 3 autres existent.
                      Donc il faut

                      ON tele-Wifi#RSSI do backlog var2 %value%; Mul2 0.1 ENDON
                      
                      19:53:41.719 MQT: tele/esp32dev3/STATE = {"Time":"2022-02-10T19:53:41+01:00","Uptime":"3T21:30:06","UptimeSec":336606,"Heap":85,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":34},"Wifi":{"AP":1,"SSId":"BNETWLAN","BSSId":"88:C3:97:F2:25:EC","Channel":1,"Mode":"11n","RSSI":98,"Signal":-51,"LinkCount":1,"Downtime":"0T00:00:09"}}
                      19:53:41.774 RUL: TELE-WIFI#RSSI performs "backlog var9 98 ; Mult9 0.1"
                      19:53:41.887 MQT: stat/esp32dev3/VAR = {"Var9":"98"}
                      19:53:42.142 MQT: stat/esp32dev3/MULT = {"Mult9":"9.800"}
                      19:55:00.723 RUL: TIME#MINUTE|5 performs "seriallog 2"
                      19:55:00.742 MQT: stat/esp32dev3/SERIALLOG = {"SerialLog":{"2":{"Active":"2"}}}
                      
                      Seb HS Offline
                      Seb HS Offline
                      Seb H
                      wrote on last edited by
                      #277

                      @barbu-dor
                      etrange chez moi ca ne fonctionne toujours pas..
                      56b6c0b7-c381-4a6c-a03a-a412b77cda79-image.png

                      Barbu DorB 1 Reply Last reply
                      • Seb HS Seb H

                        @barbu-dor
                        etrange chez moi ca ne fonctionne toujours pas..
                        56b6c0b7-c381-4a6c-a03a-a412b77cda79-image.png

                        Barbu DorB Offline
                        Barbu DorB Offline
                        Barbu Dor
                        wrote on last edited by
                        #278

                        @seb-h tu peux faire un Rule0 (tout attaché) et copier le résultat ici en texte (pas en image) ?

                        Seb HS 1 Reply Last reply
                        • Barbu DorB Barbu Dor

                          @seb-h tu peux faire un Rule0 (tout attaché) et copier le résultat ici en texte (pas en image) ?

                          Seb HS Offline
                          Seb HS Offline
                          Seb H
                          wrote on last edited by
                          #279

                          @barbu-dor
                          Aucun soucis désolé
                          20:43:46.216 CMD: rule0
                          20:43:46.221 MQT: stat/tasmota_A1AE2F/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":236,"Free":275,"Rules":"on tele-ENERGY#Power do var1 %value% endon on tele-Wifi#RSSI do backlog Var3 %value%; Mul3 0.1 endon on tele-TIC#EASF01 do publish domoticz/in {"idx":26,"nvalue":0,"svalue":"0;%value%;0.0;0.0;%var1%;0","Battery":100,"RSSI":%var3%} endon"}}
                          20:43:46.230 MQT: stat/tasmota_A1AE2F/RESULT = {"Rule2":{"State":"OFF","Once":"OFF","StopOnError":"OFF","Length":0,"Free":511,"Rules":""}}
                          20:43:46.237 MQT: stat/tasmota_A1AE2F/RESULT = {"Rule3":{"State":"OFF","Once":"OFF","StopOnError":"OFF","Length":0,"Free":511,"Rules":""}}
                          20:43:46.416 MQT: tele/tasmota_A1AE2F/STATE = {"Time":"2022-02-10T20:43:46","Uptime":"0T02:44:14","UptimeSec":9854,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":2,"Wifi":{"AP":1,"SSId":"Sylvia&Seb","BSSId":"14:91:82:FC:0E:ED","Channel":1,"Mode":"11n","RSSI":64,"Signal":-68,"LinkCount":1,"Downtime":"0T00:00:03"}}
                          20:43:46.426 RUL: TELE-WIFI#RSSI performs "backlog Var3 64; Mul3 0.1"
                          20:43:46.441 MQT: tele/tasmota_A1AE2F/SENSOR = {"Time":"2022-02-10T20:43:46","ENERGY":{"TotalStartTime":"2022-02-10T17:59:38","Total":3860.279,"Yesterday":0.000,"Today":1.335,"Period": 1,"Power":394,"ApparentPower":444,"ReactivePower":205,"Factor":0.89,"Voltage":222,"Current":2.000,"Load":33},"TIC":{"ADSC":"061961361253","VTIC":2,"NGTF":" BASE ","LTARF":" BASE ","EAST":3860279,"EASF01":2747544,"EASF02":1112735,"EASF03":0,"EASF04":0,"EASF05":0,"EASF06":0,"EASF07":0,"EASF08":0,"EASF09":0,"EASF10":0,"EASD01":2747544,"EASD02":1112735,"EASD03":0,"EASD04":0,"IRMS1":2,"URMS1":222,"PREF":6,"PCOUP":6,"SINSTS":394,"SMAXSN":2608,"SMAXSN-1":2180,"CCASN":810,"CCASN-1":268,"UMOY1":221,"STGE":"003A0001","PRM":2147483647,"RELAIS":0,"NTARF":1,"NJOURF":0,"NJOURF+1":0}}
                          20:43:46.448 RUL: TELE-ENERGY#POWER performs "var1 394"
                          20:43:46.453 MQT: stat/tasmota_A1AE2F/RESULT = {"Var1":"394"}
                          20:43:46.464 RUL: TELE-TIC#EASF01 performs "publish domoticz/in {"idx":26,"nvalue":0,"svalue":"0;2747544;0.0;0.0;394;0","Battery":100,"RSSI":70}"
                          20:43:46.469 MQT: domoticz/in = {"idx":26,"nvalue":0,"svalue":"0;2747544;0.0;0.0;394;0","Battery":100,"RSSI":70}
                          20:43:46.671 MQT: stat/tasmota_A1AE2F/RESULT = {"Var3":"64"}
                          20:43:46.872 MQT: stat/tasmota_A1AE2F/RESULT = {"Command":"Unknown"}

                          Barbu DorB 1 Reply Last reply
                          • Seb HS Seb H

                            @barbu-dor
                            Aucun soucis désolé
                            20:43:46.216 CMD: rule0
                            20:43:46.221 MQT: stat/tasmota_A1AE2F/RESULT = {"Rule1":{"State":"ON","Once":"OFF","StopOnError":"OFF","Length":236,"Free":275,"Rules":"on tele-ENERGY#Power do var1 %value% endon on tele-Wifi#RSSI do backlog Var3 %value%; Mul3 0.1 endon on tele-TIC#EASF01 do publish domoticz/in {"idx":26,"nvalue":0,"svalue":"0;%value%;0.0;0.0;%var1%;0","Battery":100,"RSSI":%var3%} endon"}}
                            20:43:46.230 MQT: stat/tasmota_A1AE2F/RESULT = {"Rule2":{"State":"OFF","Once":"OFF","StopOnError":"OFF","Length":0,"Free":511,"Rules":""}}
                            20:43:46.237 MQT: stat/tasmota_A1AE2F/RESULT = {"Rule3":{"State":"OFF","Once":"OFF","StopOnError":"OFF","Length":0,"Free":511,"Rules":""}}
                            20:43:46.416 MQT: tele/tasmota_A1AE2F/STATE = {"Time":"2022-02-10T20:43:46","Uptime":"0T02:44:14","UptimeSec":9854,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":2,"Wifi":{"AP":1,"SSId":"Sylvia&Seb","BSSId":"14:91:82:FC:0E:ED","Channel":1,"Mode":"11n","RSSI":64,"Signal":-68,"LinkCount":1,"Downtime":"0T00:00:03"}}
                            20:43:46.426 RUL: TELE-WIFI#RSSI performs "backlog Var3 64; Mul3 0.1"
                            20:43:46.441 MQT: tele/tasmota_A1AE2F/SENSOR = {"Time":"2022-02-10T20:43:46","ENERGY":{"TotalStartTime":"2022-02-10T17:59:38","Total":3860.279,"Yesterday":0.000,"Today":1.335,"Period": 1,"Power":394,"ApparentPower":444,"ReactivePower":205,"Factor":0.89,"Voltage":222,"Current":2.000,"Load":33},"TIC":{"ADSC":"061961361253","VTIC":2,"NGTF":" BASE ","LTARF":" BASE ","EAST":3860279,"EASF01":2747544,"EASF02":1112735,"EASF03":0,"EASF04":0,"EASF05":0,"EASF06":0,"EASF07":0,"EASF08":0,"EASF09":0,"EASF10":0,"EASD01":2747544,"EASD02":1112735,"EASD03":0,"EASD04":0,"IRMS1":2,"URMS1":222,"PREF":6,"PCOUP":6,"SINSTS":394,"SMAXSN":2608,"SMAXSN-1":2180,"CCASN":810,"CCASN-1":268,"UMOY1":221,"STGE":"003A0001","PRM":2147483647,"RELAIS":0,"NTARF":1,"NJOURF":0,"NJOURF+1":0}}
                            20:43:46.448 RUL: TELE-ENERGY#POWER performs "var1 394"
                            20:43:46.453 MQT: stat/tasmota_A1AE2F/RESULT = {"Var1":"394"}
                            20:43:46.464 RUL: TELE-TIC#EASF01 performs "publish domoticz/in {"idx":26,"nvalue":0,"svalue":"0;2747544;0.0;0.0;394;0","Battery":100,"RSSI":70}"
                            20:43:46.469 MQT: domoticz/in = {"idx":26,"nvalue":0,"svalue":"0;2747544;0.0;0.0;394;0","Battery":100,"RSSI":70}
                            20:43:46.671 MQT: stat/tasmota_A1AE2F/RESULT = {"Var3":"64"}
                            20:43:46.872 MQT: stat/tasmota_A1AE2F/RESULT = {"Command":"Unknown"}

                            Barbu DorB Offline
                            Barbu DorB Offline
                            Barbu Dor
                            wrote on last edited by
                            #280

                            @seb-h C'est Mult3 0.1 , pas Mul

                            Seb HS 1 Reply Last reply
                            • Barbu DorB Barbu Dor

                              @seb-h C'est Mult3 0.1 , pas Mul

                              Seb HS Offline
                              Seb HS Offline
                              Seb H
                              wrote on last edited by
                              #281

                              @barbu-dor
                              Rohh le blaireau qui a de le m.... dans les yeux.
                              Effectivement ca fonctionne !! 😊
                              En revanche, maintenant domoticz m'ennuye car il y a une virgule... Tu aurais pas une fonction qui me permet d'arrondir l'ensemble sans virgule stp ?

                              21:25:26.470 MQT: domoticz/in = {"idx":26,"nvalue":0,"svalue":"0;2747719;0.0;0.0;337;0","Battery":100,"RSSI":6.800}
                              21:25:26.671 MQT: stat/tasmota_A1AE2F/RESULT = {"Var3":"70"}
                              21:25:26.873 MQT: stat/tasmota_A1AE2F/RESULT = {"Mult3":"7.000"}
                              
                              Barbu DorB 1 Reply Last reply
                              • Seb HS Seb H

                                @barbu-dor
                                Rohh le blaireau qui a de le m.... dans les yeux.
                                Effectivement ca fonctionne !! 😊
                                En revanche, maintenant domoticz m'ennuye car il y a une virgule... Tu aurais pas une fonction qui me permet d'arrondir l'ensemble sans virgule stp ?

                                21:25:26.470 MQT: domoticz/in = {"idx":26,"nvalue":0,"svalue":"0;2747719;0.0;0.0;337;0","Battery":100,"RSSI":6.800}
                                21:25:26.671 MQT: stat/tasmota_A1AE2F/RESULT = {"Var3":"70"}
                                21:25:26.873 MQT: stat/tasmota_A1AE2F/RESULT = {"Mult3":"7.000"}
                                
                                Barbu DorB Offline
                                Barbu DorB Offline
                                Barbu Dor
                                wrote on last edited by
                                #282

                                @seb-h Désolé là je ne vois pas
                                Ou tu jette ton ESP8266 et tu passe à un ESP32 avec Berry 😂

                                Seb HS 1 Reply Last reply
                                • Barbu DorB Barbu Dor

                                  @seb-h Désolé là je ne vois pas
                                  Ou tu jette ton ESP8266 et tu passe à un ESP32 avec Berry 😂

                                  Seb HS Offline
                                  Seb HS Offline
                                  Seb H
                                  wrote on last edited by Seb H
                                  #283

                                  @barbu-dor
                                  C'est ballot ca dis donc... on peut pas faire d'arrondi avec un esp8266 !! LOL !!
                                  Pourtant dans la trame domoticz/in que tasmota te fait en renseignant un numéro idx, il te sort bien en dernier un chiffre représentatif de la qualité de réception du signal. On pourrait récupérer directement cette variable utilisé pour l'utiliser directement dans le rule au lieu de s'ennuyer a calculer ?? Dans le module xdrv_07_domoticz, la valeur qui m'interesse est stocker dans DomoticzRssiQuality. On a pas un moyen simple de la récupérer pour mon rule ??

                                  Barbu DorB 1 Reply Last reply
                                  • Seb HS Seb H

                                    @barbu-dor
                                    C'est ballot ca dis donc... on peut pas faire d'arrondi avec un esp8266 !! LOL !!
                                    Pourtant dans la trame domoticz/in que tasmota te fait en renseignant un numéro idx, il te sort bien en dernier un chiffre représentatif de la qualité de réception du signal. On pourrait récupérer directement cette variable utilisé pour l'utiliser directement dans le rule au lieu de s'ennuyer a calculer ?? Dans le module xdrv_07_domoticz, la valeur qui m'interesse est stocker dans DomoticzRssiQuality. On a pas un moyen simple de la récupérer pour mon rule ??

                                    Barbu DorB Offline
                                    Barbu DorB Offline
                                    Barbu Dor
                                    wrote on last edited by
                                    #284

                                    @seb-h Non, les messages domoticz ne passent pas par le RulesEngine, ils sont publiés directement sur MQTT

                                    Seb HS 2 Replies Last reply
                                    • Barbu DorB Barbu Dor

                                      @seb-h Non, les messages domoticz ne passent pas par le RulesEngine, ils sont publiés directement sur MQTT

                                      Seb HS Offline
                                      Seb HS Offline
                                      Seb H
                                      wrote on last edited by
                                      #285

                                      @barbu-dor
                                      Si je déclare une variable publique dans la source ou je recopie la valeur de DomoticzRssiQuality et je réutilise cette variable pour le rule ?? Bon j'avoue que ca commence a être compliqué..

                                      Sinon peut être une autre idée plus simple mais très certainement plus longue à écrire.

                                      Si Wifi#RSSI<20 DO var3=1 ENDON Si Wifi#RSSI<30 AND >20 DO var3=2 etc...
                                      

                                      En fait, le but est de d'obtenir un chiffre unique entre 1 et 10 à partir du RSSI sur 2 chiffre.. Je vais regarder pour essayer de m'en sortir, sinon je viendrais demander de l'aide. C'est beaucoup plus faisable ma 2è option ??

                                      1 Reply Last reply
                                      • Barbu DorB Barbu Dor

                                        @seb-h Non, les messages domoticz ne passent pas par le RulesEngine, ils sont publiés directement sur MQTT

                                        Seb HS Offline
                                        Seb HS Offline
                                        Seb H
                                        wrote on last edited by
                                        #286

                                        @barbu-dor
                                        Bon alors j'ai "bidouiller" mais ca ne me plait pas des masses . Voici mon rule

                                        rule1 On tele-ENERGY#Power do var1 %value% endon On tele-Wifi#RSSI<30 do If Wifi#RSSI>=20 ; Var3 2 endif endon On tele-Wifi#RSSI<40 do If Wifi#RSSI>=30 ; Var3 3 endif endon On tele-Wifi#RSSI<50 do If Wifi#RSSI>=40 ; Var3 4 endif endon On tele-Wifi#RSSI<60 do If Wifi#RSSI>=50 ; Var3 5 endif endon On tele-Wifi#RSSI<70 do If Wifi#RSSI>=60 ; Var3 6 endif endon On tele-Wifi#RSSI<80 do If Wifi#RSSI>=70 ; Var3 7 endif endon On tele-Wifi#RSSI<90 do If Wifi#RSSI>=80 ; Var3 8 endif endon On tele-Wifi#RSSI<=100 do If Wifi#RSSI>=90 ; Var3 9 endif endon On tele-TIC#EASF01 do publish domoticz/in {"idx":26,"nvalue":0,"svalue":"0;%value%;0.0;0.0;%var1%;0","Battery":100,"RSSI":%var3%} endon
                                        

                                        Voici le retour que ca me donne

                                        09:09:47.433 RUL: TELE-WIFI#RSSI<80 performs "If Wifi#RSSI>=70 ; Var3 7 endif"
                                        09:09:47.437 MQT: stat/tasmota_A1AE2F/RESULT = {"If":"Done"}
                                        09:09:47.444 RUL: TELE-WIFI#RSSI<90 performs "If Wifi#RSSI>=80 ; Var3 8 endif"
                                        09:09:47.448 MQT: stat/tasmota_A1AE2F/RESULT = {"If":"Done"}
                                        09:09:47.454 RUL: TELE-WIFI#RSSI<=100 performs "If Wifi#RSSI>=90 ; Var3 9 endif"
                                        09:09:47.460 MQT: stat/tasmota_A1AE2F/RESULT = {"If":"Done"}
                                        

                                        Dès que j'ai un trigger qui rempli ma condition, il execute la commande !
                                        En fait ce qui m'arrangerait c'est dans le TRIGGER de tester de suite la plage ou se trouve WIFI#RSSI , par exemple

                                        On tele-Wifi#RSSI>20 AND tele-Wifi#RSSI <30 do  Var3 2 endon
                                        

                                        J'ai testé cette commande , mais il ne prend en compte que tele-Wifi#RSSI>20

                                        Concernant chaque RULE , c'est limité a 10 trigger ??

                                        Barbu DorB 1 Reply Last reply
                                        • Seb HS Seb H

                                          @barbu-dor
                                          Bon alors j'ai "bidouiller" mais ca ne me plait pas des masses . Voici mon rule

                                          rule1 On tele-ENERGY#Power do var1 %value% endon On tele-Wifi#RSSI<30 do If Wifi#RSSI>=20 ; Var3 2 endif endon On tele-Wifi#RSSI<40 do If Wifi#RSSI>=30 ; Var3 3 endif endon On tele-Wifi#RSSI<50 do If Wifi#RSSI>=40 ; Var3 4 endif endon On tele-Wifi#RSSI<60 do If Wifi#RSSI>=50 ; Var3 5 endif endon On tele-Wifi#RSSI<70 do If Wifi#RSSI>=60 ; Var3 6 endif endon On tele-Wifi#RSSI<80 do If Wifi#RSSI>=70 ; Var3 7 endif endon On tele-Wifi#RSSI<90 do If Wifi#RSSI>=80 ; Var3 8 endif endon On tele-Wifi#RSSI<=100 do If Wifi#RSSI>=90 ; Var3 9 endif endon On tele-TIC#EASF01 do publish domoticz/in {"idx":26,"nvalue":0,"svalue":"0;%value%;0.0;0.0;%var1%;0","Battery":100,"RSSI":%var3%} endon
                                          

                                          Voici le retour que ca me donne

                                          09:09:47.433 RUL: TELE-WIFI#RSSI<80 performs "If Wifi#RSSI>=70 ; Var3 7 endif"
                                          09:09:47.437 MQT: stat/tasmota_A1AE2F/RESULT = {"If":"Done"}
                                          09:09:47.444 RUL: TELE-WIFI#RSSI<90 performs "If Wifi#RSSI>=80 ; Var3 8 endif"
                                          09:09:47.448 MQT: stat/tasmota_A1AE2F/RESULT = {"If":"Done"}
                                          09:09:47.454 RUL: TELE-WIFI#RSSI<=100 performs "If Wifi#RSSI>=90 ; Var3 9 endif"
                                          09:09:47.460 MQT: stat/tasmota_A1AE2F/RESULT = {"If":"Done"}
                                          

                                          Dès que j'ai un trigger qui rempli ma condition, il execute la commande !
                                          En fait ce qui m'arrangerait c'est dans le TRIGGER de tester de suite la plage ou se trouve WIFI#RSSI , par exemple

                                          On tele-Wifi#RSSI>20 AND tele-Wifi#RSSI <30 do  Var3 2 endon
                                          

                                          J'ai testé cette commande , mais il ne prend en compte que tele-Wifi#RSSI>20

                                          Concernant chaque RULE , c'est limité a 10 trigger ??

                                          Barbu DorB Offline
                                          Barbu DorB Offline
                                          Barbu Dor
                                          wrote on last edited by Barbu Dor
                                          #287

                                          @seb-h
                                          Une rule n'est pas limité en terme de triggers, juste en terme de place. A partir d'une certaine taille il compresse. Tu as 512 octet par rule, ce qui représente environ 1500 à 2000 caractères une fois que la compression est utilisée.
                                          Une rule doit démarrer par 1 trigger ON trigger[condition optionelle] DO
                                          Il faut bien comprendre qu'une rule réagit à une évenement, pas à un état. Donc mettre des AND dans le trigger n'a aucun sens. Tu n'a jamais 2 évenements qui arrivent en même temps.
                                          tele-Wifi#RSSI est un trigger qui correspond à l'évenement "Publication de Wifi.RSSI dans le message de Teleperiod"
                                          Tu peux effectivement ensuite y ajouter une condition telle que "<10".

                                          Quand un évenement survient (ex publication de STATE), Tasmota prend l'evenement et scanne les rules pour les ON xxx DO qui correspondent a ce trigger.
                                          Pour un message type STATE ou SESOR, il y a autant d'évenement que de valeurs dans le JSON.

                                          Ta solution avec des conditions sur les trigegrs et des IF est un peu trop compliquée. tu peut faire plus simple notamment en utilisant BREAK (voir https://tasmota.github.io/docs/Rules/#using-break-to-simulate-ifelseifelseendif).
                                          Dans ton cas tu devrais pouvoir écrire:

                                          rule1
                                            ON Wifi#RSSI<10 DO var3 0 BREAK 
                                            ON Wifi#RSSI<20 DO var3 1 BREAK 
                                            ... etc ...
                                            ON Wifi#RSSI<100 DO var3 9 BREAK
                                            ON Wifi#RSSI>=100 DO var3 10 ENDON
                                          

                                          (j'ai écrit sur plusieurs lignes pour la lisibilité mais bien sur il faut taper sur une seule)
                                          Le fonctionnement est que BREAK stop l'évaluation de la RULE si trigger+condition sont remplie. C'est l'équivalent de :
                                          ON Wifi#RSSI DO IF (%value%<10) var3 0 ELSEIF (%value%<20) var3 1 .... ENDIF ENDON
                                          C'est le même trigger qui est utilisé mais avec des conditions différentes.
                                          Dans la même rule tu peux avoir un autre trigger après tel que ON tele-ENERGY#Power DO var1 %value% ENDON
                                          Il s'agit d'un trigger différent donc lorsque le message SENSOR avec ENERGY#Power est envoyé, les premiers ON sont ignoré et les BREAK aussi.

                                          Seb HS 1 Reply Last reply

                                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                          With your input, this post could be even better 💗

                                          Register Login
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          0

                                          Online

                                          5.8k

                                          Users

                                          565

                                          Topics

                                          5.3k

                                          Posts

                                          Top Topics

                                          Popular Tags

                                          teleinfo
                                          25 topics
                                          arduino
                                          19 topics
                                          remora
                                          16 topics
                                          esp8266
                                          10 topics
                                          arduipi
                                          10 topics
                                          raspberry
                                          8 topics
                                          wifinfo
                                          7 topics
                                          broadcast
                                          7 topics
                                          Copyright © 2022 Charles-Henri Hallard | Return to blog page | Powered by NodeBB
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Blog
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • Users
                                          • Groups