eWuPi
(eWuPi)
18 Październik 2021 20:31
1
Mam podobny problem do:
ponieważ mam problem z zaokrąglaniem, a powyższy wątek jest oznaczony jako rozwiązany:
sensor:
- platform: mqtt
name: "Aeris temperatura wywiewu"
state_topic: "aeris/raw/274"
unit_of_measurement: "°C"
device_class: temperature
value_template: |-
{{ value | round(1) *0.1 | round(1) }}
Z topic otrzymuję wartość 227
RobinI30
(RobinI30)
18 Październik 2021 21:01
2
Spróbuj {{ value | (float*0.1) | round(1) }}
eWuPi
(eWuPi)
18 Październik 2021 21:50
3
Bez nawiasu wydaje się być OK
Co dziwne z nawiasem wywalało błąd konfiguracji
{{ value | float * 0.1 | round(1) }}
Edit:
Nie pomogło …
macek
19 Październik 2021 06:36
4
Przetestowane w Narzędziach deweloperskich:
{## Imitate available variables: ##}
{% set my_test_json = {
"temperature": 224.0000002 ,
"unit": "°C"
} %}
przed:
{{ my_test_json.temperature }} {{ my_test_json.unit }}.
po:
{{ (((my_test_json.temperature) | float ) /10) | round(2) }} {{ my_test_json.unit }}
wynik końcowy:
eWuPi
(eWuPi)
19 Październik 2021 07:44
5
@macek
Dzięki, przetestuję jeden dzień i dam znać, bo nie zawsze wyskakują te zera.
Coś mi się wydaje, że ważniejszym jest wykonać działanie “/10” niż “*0.1”
Dam znać
eWuPi
(eWuPi)
19 Październik 2021 07:54
6
Już mam odpowiedź i jest tak jak myślałem.
- platform: mqtt
name: "Test1"
state_topic: "aeris/raw/221"
unit_of_measurement: "°C"
device_class: temperature
value_template: |-
{{ value | float / 10 | round(1) }}
- platform: mqtt
name: "Test2"
state_topic: "aeris/raw/221"
unit_of_measurement: "°C"
device_class: temperature
value_template: |-
{{ value | float * 0.1 | round(1) }}
po czasie
Tak, że zaokrąglanie zmienną jest
1 polubienie
eWuPi
(eWuPi)
20 Październik 2021 10:25
7
Dodam jeszcze jedną informację, że za float od wersji 2021.12 musi być (0):
value_template: |-
{{ value | float(0) / 10 | round(1) }}
2 polubienia