Seite 1 von 1

MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 12:35
von Undertaker
Ich schon wieder.
Die Aufgabe ist es einen eingehenden MQTT Wert, an einen Sensor zu übergeben
Das funktioniert schon mal in der config yaml:

Code: Alles auswählen

 - platform: mqtt
    name: "mqtt wohnzimmer"
    state_topic: "homeassistant/test"
    unit_of_measurement: "Grad"
Ich möchte jetzt diesen Sensorwert an einen Helfer übergeben:

Code: Alles auswählen

alias: ' Wbebhook von Homey'
description: ''
trigger:
  - platform: mqtt
    topic: home-assistant/test
condition: []
action:
  - service: input_number.set_value
    data:
      value: |
        {{ states('sensor.mqtt_wohnzimmer') | int }}
    target:
      entity_id: input_number.webhook_homey
mode: single
Das funktioniert leider nicht. Kann mir jemand helfen, wo mein Fehler ist ?

Re: MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 13:09
von Osorkon
Mal eine blöde Frage. Warum willst einen Sensor Wert (sensor.mqtt_wohnzimmer) in einen Helfer schreiben?
Du kannst doch direkt Deinen MQTT Sensor verwenden?!

Zum Verständnis. Du hast Dir in HA einen MQTT Sensor angelegt, gefüttert wird dieser aus Homey heraus, richtig?

Was funktioniert den nicht? Das publishen von Homey aus?
Löst die Automatisierung nicht aus, wenn neuer Wert eingeht?
Welchen Wert spuckt den Dein Template im Template Editor aus?

Code: Alles auswählen

{{ states('sensor.mqtt_wohnzimmer') | int }}

Gruß
Osorkon

Re: MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 15:16
von Undertaker
Ich benutze im Moment gerne die Helfer, um meine berechneten Variablen von Homey zu HA zu übertragen. Ich weiß, HA kann das auch, aber zuviel auf einmal ist ungesund.

Es funktioniert nicht, dass sich der Wert des Helfers ändert.
Der Temperlate Editor zeigt den richtigen Wert an.
Screenshot_20220530-150752_Home Assistant.jpg
Screenshot_20220530-150752_Home Assistant.jpg (268.43 KiB) 629 mal betrachtet
Ich habe irgendwo da einen Fehler drin

Code: Alles auswählen

alias: ' Wbebhook von Homey'
description: ''
trigger:
  - platform: mqtt
    topic: home-assistant/test
condition: []
action:
  - service: input_number.set_value
    data:
      value: |
        {{ states('sensor.mqtt_wohnzimmer') | int }}
    target:
      entity_id: input_number.webhook_homey
mode: single
Ich glaube die Automatisierung löst einfach nicht aus. :?:

Re: MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 15:28
von Osorkon
Was ist jetzt richtig?
Einmal verwendust Du
homeassistant/test
Und einmal
home-assistant/test

Gruß
Osorkon

Re: MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 15:53
von Undertaker
Ich hab es selber gelöst. Der Auslöser war schuld.
Wenn ich es so mache, wird der Wert an den Helfer weiter gegeben:

Code: Alles auswählen

alias: ' Wbebhook von Homey'
description: ''
trigger:
  - platform: state
    entity_id:
      - sensor.mqtt_wohnzimmer
condition: []
action:
  - service: input_number.set_value
    data:
      value: |
        {{ states('sensor.mqtt_wohnzimmer') | int }}
    target:
      entity_id: input_number.webhook_homey
mode: single
Jetzt habe ich nur noch ein letztes Problem. Obwohl ich beim Helfer den Schtittwert auf 3 Dezimalstellen konfiguriert habe, werden nur ganze Zahlen angezeigt.
Screenshot_20220530-155134_Chrome.jpg
Screenshot_20220530-155134_Chrome.jpg (13.89 KiB) 625 mal betrachtet

Re: MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 16:14
von Osorkon
Undertaker hat geschrieben: Mo 30. Mai 2022, 15:53 Ich hab es selber gelöst. Der Auslöser war schuld.
Wie schon geschrieben:
für den MQTT Sensor verwendest Du das topic: homeassistant/test
Und in Deiner Automation topic: home-assistant/test
Der Auslöser kann nicht funktionieren , da es das topic: home-assistant/test nicht gibt!!

Undertaker hat geschrieben: Mo 30. Mai 2022, 15:53 Jetzt habe ich nur noch ein letztes Problem. Obwohl ich beim Helfer den Schtittwert auf 3 Dezimalstellen konfiguriert habe, werden nur ganze Zahlen angezeigt.
Du hast ja auch die Zahl als INTEGER formatiert -> Ganzzahl

Code: Alles auswählen

 {{ states('sensor.mqtt_wohnzimmer') | int }}
Du musst die Zahl al float -> Gleitkommazahl definieren aufgerundet auf 3 Stellen nach dem Komma.

Code: Alles auswählen

 {{ states('sensor.mqtt_wohnzimmer') | float | round(3) }}
Gruß
Osorkon

Re: MQTT Wert mit Übergabe an einen Helfer

Verfasst: Mo 30. Mai 2022, 16:29
von Undertaker
Ohne dich hätte ich HA schon zum Fenster hinaus geworfen :lol: :lol:
Du siehst aber, ich bin lernwillig.