Odczyt zmiennych z ramki pieca Metal-Fach za pomocą sterownika ecoNet 300

Witam serdecznie,
Jestem nowy użytkownikiem, który od 2 tygodni pracuje nad integracją urządzeń z platformą Home Assistant.
O ile poradziłem sobie z odczynem wartości analogowych i stanem pracy pomp, utknąłem na zmiennej tryb pracy.
A mianowicie otrzymuję wynik w zakresie 0-10
obecnie na postoju wartość: 5

z czego na szybko zauważyłem ze wartościom liczbowym odpowiadają odpowiednio stany:
0 wyłączony
1 Rozpalanie
2 Stabilizacja
3 Praca
5 Postój
6 Czyszczalnie
7 Wygaszanie
8 Alarm ???
9 Ręczny

Może pytanie jest głupie, ale nie umiem znaleźć działającego rozwiązania, chciałem po stronie HA w pliku configuration.yaml
dopisać sprawdzenie zmiennej od trybu pracy: sensor.mode
i na zasadzie obsługi tablicy wartość liczbową zastąpić odpowiedzią nazwą.

Będę wdzięczny za poświęcony czas i podpowiedz jak to wykonać

Zrzut ekranu 2023-02-26 130024

Może po prostu Input Select - Home Assistant a później prosta automatyzacja i wywolanie usługi `service: input_select.select_option’, używam tego aby pokazać stan pralki : pranie, plukanie, wirowanie, wyprane.
Bardziej elagacko będzie jezeli skorzystasz z STATE BASED SENSOR MODIFYING ANOTHER SENSOR’S OUTPUT. Jak się uda udostępnij kod sensora dla potomnych.

Przy założeniu, że “tryb pracy” to encja sensor.tryb_pracy:

template:
  - sensor:
      - name: "Tryb pracy - nazwa"  #tutaj określasz nazwę powstałej encji
        state: >-
        {% if is_state('sensor.tryb_pracy', '0') %}
          Wyłączony
        {% elif is_state('sensor.tryb_pracy', '1') %}
          Rozpalanie
        {% elif is_state('sensor.tryb_pracy', '2') %}
          Stabilizacja
        {% elif is_state('sensor.tryb_pracy', '3') %}
          Praca
        {% elif is_state('sensor.tryb_pracy', '5') %}
          Postój
        {% endif %}

od numeru 6 wstawiasz analogicznie

Witam serdecznie,

w pliku sensor.yaml utworzyłem kod:

template:
  - sensor:
      - name: "Tryb_pracy_mode"  #tutaj określasz nazwę powstałej encji
        state: >-
      {% if is_state('sensor.mode', '0') %} Wyłączony
      {% elif is_state('sensor.mode', '1') %} Rozpalanie
      {% elif is_state('sensor.mode', '2') %} Stabilizacja
      {% elif is_state('sensor.mode', '3') %} Praca
      {% elif is_state('sensor.mode', '5') %} Postój
      {% elif is_state('sensor.mode', '6') %} Czyszczenie
      {% elif is_state('sensor.mode', '7') %} Wywaszanie
      {% elif is_state('sensor.mode', '8') %} Alarm
      {% elif is_state('sensor.mode', '9') %} Ręczny
      {% endif %}


jednak kompilator zwraca błąd twierdzi że znak % został źle użyty w w linii 13 czyli nasz if

@Maro76 wcięcia mają znaczenie w kodzie yaml, dostosuj je zgodnie z przykładem.

Kod który Ci zaproponowałem pochodzi z integracji template a nie sensor.
Dlatego albo wklejasz go do pliku configuration.yaml w takiej formie jak Ci go przedstawiłem albo integrację template definiujesz w osobnym pliku np:

template: !include templates.yaml

i w utworzonym pliku templates.yaml wklejasz w poniższym formacie:

- sensor:
    - name: "Tryb pracy - nazwa"  #tutaj określasz nazwę powstałej encji
      state: >-
        {% if is_state('sensor.tryb_pracy', '0') %}
          Wyłączony
        {% elif is_state('sensor.tryb_pracy', '1') %}
          Rozpalanie
        {% elif is_state('sensor.tryb_pracy', '2') %}
          Stabilizacja
        {% elif is_state('sensor.tryb_pracy', '3') %}
          Praca
        {% elif is_state('sensor.tryb_pracy', '5') %}
          Postój
        {% endif %}

Oczywiście tak jak napisał @macek pamiętaj o wcięciach.