Ankündigung

Einklappen
Keine Ankündigung bisher.

Stromzähler -> Tasmota -> MQTT -> SmartHomeNG

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    Stromzähler -> Tasmota -> MQTT -> SmartHomeNG

    Hallo zusammen,

    leider bekomm ich die Items nicht richtig konfiguriert, könnte mir da jemand mal unter die Arme greifen?

    Meine items sieht im Moment folgendermaßen aus:
    Code:
    Hausstromzaehler:
            type: bool
            tasmota_topic: tele/Hausstromzaehler
            tasmota_sml_device: ED300L
            tasmota_attr: online
            enforce_updates: true
    
            Zaehlerstand:
                type: num
                tasmota_topic: ..:.
                tasmota_sml_device: ..:.
                tasmota_sml_attr: Total_in
                enforce_updates: true
    Das Topic im MQTT-Explorer ist:
    Code:
    tele/Hausstromzaehler/SENSOR
    und hat folgenden Wert:
    Code:
    {"Time":"2023-12-31T15:40:42","ED300L":{"Power_curr":0,"Total_in":8213,"Total_out":0}}
    Ob das Tasmota-Plugin genutzt wird oder direkt über MQTT wär mir egal, aber ich bekomms einfach nicht hin

    Bitte helft mir

    PS: Falls sich jemand fragt wie man den Zähler auslesen kann bzw. wie ich das gemacht habe... hier gibts alle Infos!
    cu Yfkt5A
    DALI(ABB DG/S1.1), KODI Odroid, TrueNAS, Zehnder ComfoAir 200 L Luxe
    microk8s-Cluster: HomeAssistant, MusicAssistant, mosquitto, TVHeadend, jellyfin

    #2
    Zitat von Yfkt5A Beitrag anzeigen
    Bitte helft mir
    Ich schieße mal ins blaue und sage, dass "tele/" aus dem tasmota_topic entfernt werden muss.

    Kommentar


      #3
      Mit dem Tasmota-Plugin bin ich nicht bewandert genug, das Folgende sollte gehen:

      Code:
      item:
          type: dict
          mqtt_topic_in: tele/Hausstromzaehler/SENSOR
      
          total_in:
              type: num
              eval: sh...()['Total_in']
              eval_trigger: ..
      Wird ggf. Exceptions werfen, wenn der Key "total_in" nicht im dict ist, ansonsten ist das wahrscheinlich der einfachste Weg...

      Kommentar


        #4
        Funktioniert leider beides nicht

        Morg dein Item wirft eine Warnung aus:
        Code:
        WARNING  lib.item.item       Item item.total_in: problem evaluating 'sh.item()['Total_in']': 'Total_in'
        Schade, hätte das gerne dieses Jahr noch hinbekommen...
        cu Yfkt5A
        DALI(ABB DG/S1.1), KODI Odroid, TrueNAS, Zehnder ComfoAir 200 L Luxe
        microk8s-Cluster: HomeAssistant, MusicAssistant, mosquitto, TVHeadend, jellyfin

        Kommentar


          #5
          Yfkt5A,

          du kannst dies einfach mit dem Mqtt Plugin machen.

          werte im mqtt_in: 'Time': '2023-12-31T22:52:41', 'DWS7612': {'energy': 1111.11, 'power': 111.11}}

          Code:
                 Zaehlerstand_temp:
                      type: dict
                      mqtt_topic_in: tele/tasmota_sml2mqtt/SENSOR    
                      on_change:
                      - ..Zaehlerstand = value['DWS7612']['energy']
                      - ..Wirkleistung = value['DWS7612']['power']
                  Zaehlerstand:
                      type : num
                      name: Zählerstand Elektro
                  Wirkleistung:
                      type : num
                      name: Wirkleistung Elektro
            ​

          Kommentar


            #6
            Vielen Dank MarcoLanghans

            sieht aus als würds so funktionieren:
            Code:
            Hausstromzaehler:
                    name: Tasmota mit IR-Lesekopf an Hausstromzaehler
                    
                    online:
                        name: Tasmota Hausstromzaehler
                        remark: Onlinestatus
                        type: bool
                        mqtt_topic_in: tele/Hausstromzaehler/LWT
            
                    SENSOR:
                        name: Topic SENSOR
                        type: dict
                        mqtt_topic_in: tele/Hausstromzaehler/SENSOR
                        on_change:
                        - ..gesamt.Verbrauch = value['ED300L']['Total_in']
                        - ..gesamt.Erzeugung = value['ED300L']['Total_out']
                        - ..gesamt.Wirkleistung = value['ED300L']['Power_curr']
            
                    gesamt:
                        name: Messungen gesamt
                        Verbrauch:
                            name: Verbrauchszähler gesamt [kWh]
                            remark: Gesamte verbrauchte Wirkenergie aus dem Netz, kWh
                            type: num
                            database: init
                            struct:
                                - db_addon.verbrauch_1
                                - db_addon.verbrauch_2
                                - db_addon.zaehlerstand_1
                        Erzeugung:
                            name: Erzeugungszähler gesamt [kWh]
                            remark: Gesamte eingespeiste Wirkenergie ins Netz, kWh
                            type: num
                        Wirkleistung:
                            name: Wirkleistung gesamt [W]
                            remark: aktuell verbrauchte/eingespeiste Leistung W
                            type: num
                            database: init
            Jetzt brauch ich nur noch den PIN vom Netzversorger
            cu Yfkt5A
            DALI(ABB DG/S1.1), KODI Odroid, TrueNAS, Zehnder ComfoAir 200 L Luxe
            microk8s-Cluster: HomeAssistant, MusicAssistant, mosquitto, TVHeadend, jellyfin

            Kommentar


              #7
              Sorry, hab das geschachtelte dict übersehen... aber jetzt gehts ja

              Kommentar

              Lädt...
              X