denysdovhan / vacuum-card

Vacuum cleaner card for Home Assistant Lovelace UI
https://denysdovhan.com/smart-home
MIT License
919 stars 530 forks source link

value template not used after values get updated #560

Closed mindgam3s closed 11 months ago

mindgam3s commented 1 year ago

Before submitting a bug

[X] I updated to the latest version available [X] I cleared the cache of my browser

Describe the bug

while the vacuum is running it updated values like 'current cleaning area' which gets updated in the custom:vacuum-card BUT it does not use the value template after an update and displays the plain data coming from the entity.

Steps to reproduce

  1. Start Robot
  2. track custom:vacuum-card data
  3. See value-template not being applied

Expected behavior Updated values appear by using the value template

Real behavior Updated values appear unchanged

Screenshots

vacuum_card_display_error

Versions:

mindgam3s commented 1 year ago

custom:vacuum-card config.yml

type: custom:vacuum-card
entity: vacuum.mr_kaplan
stats:
  default:
    - entity_id: sensor.mr_kaplan_verbleibende_sensorzeit
      value_template: ↓{{ (value | float(0) / 3600) | round(0) }}
      unit: Std.
      subtitle: Sensoren
    - entity_id: sensor.mr_kaplan_verbleibende_filterzeit
      value_template: ↓{{ (value | float(0) / 3600) | round(0) }}
      unit: Std.
      subtitle: Filter
    - entity_id: sensor.mr_kaplan_verbleibende_zeit_der_seitenburste
      value_template: ↓{{ (value | float(0) / 3600) | round(0) }}
      unit: Std.
      subtitle: Seitenbürste
    - entity_id: sensor.mr_kaplan_verbleibende_zeit_der_hauptburste
      value_template: ↓{{ (value | float(0) / 3600) | round(0) }}
      unit: Std.
      subtitle: Hauptbürste
  cleaning:
    - entity_id: sensor.mr_kaplan_reinigungszeit
      value_template: '{{ (value | float(0) / 60) | round(0) }}'
      unit: min
      subtitle: akt. Dauer ↑
    - entity_id: sensor.mr_kaplan_reinigungsbereich
      value_template: '{{ value }}'
      unit: m²
      subtitle: akt. Reinigungsbereich ↑
    - entity_id: sensor.mr_kaplan_gesamtreinigungszeit
      value_template: '{{ (value | float(0) / 3600) | round(0) }}'
      unit: Std.
      subtitle: Gesamtlaufzeit ↑
ahuffman commented 1 year ago

I am also seeing this behavior. If you refresh the page the value templates are honored. Additionally the switch from default state to cleaning works, however the stats do not update if the dashboard is left open until the state of the vacuum changes (i.e. the sensors are not continually polled/refreshed).

Here's my config for reference:

type: custom:vacuum-card
entity: vacuum.huffbot
stats:
  default:
    - entity_id: sensor.huffbot_cycle_count
      subtitle: Cycles Completed
    - entity_id: sensor.huffbot_clean_mode
      subtitle: Mode
      value_template: |
        {% if value == "ultra" %}Ultra Clean{% endif %}
        {% if value == "short" %}Fast Mode{% endif %}
        {% if value == "floor" %}Floor Only{% endif %}
        {% if value == "water" %}Water Line{% endif %}
        {% if value == "all" %}Regular{% endif %}
        {% if value == "pickup" %}Pickup{% endif %}
    - entity_id: sensor.huffbot_status
      subtitle: Status
      value_template: |
        {% if value == "init" %}Initializing{% endif %}
        {% if value == "off" %}Off{% endif %}
        {% if value == "cleaning" %}Cleaning{% endif %}
  cleaning:
    - entity_id: sensor.huffbot_clean_mode
      subtitle: Mode
      value_template: |
        {% if value == "ultra" %}Ultra Clean{% endif %}
        {% if value == "short" %}Fast Mode{% endif %}
        {% if value == "floor" %}Floor Only{% endif %}
        {% if value == "water" %}Water Line{% endif %}
        {% if value == "all" %}Regular{% endif %}
        {% if value == "pickup" %}Pickup{% endif %}
    - entity_id: sensor.huffbot_cycle_time
      subtitle: Cycle
      value_template: '{{ value | float(0) / 60 }}'
      unit: Hour
    - entity_id: sensor.huffbot_cycle_time_left
      subtitle: Remaining
      value_template: '{{ ( value | float(0) / 60) | round }}'
      unit: Minutes
    - entity_id: select.huffbot_led_mode
      subtitle: LED Mode
      value_template: |
        {% if value == "1" %}Blinking{% endif %}
        {% if value == "2" %}Always On{% endif %}
        {% if value == "3" %}Disco{% endif %}
    - entity_id: number.huffbot_led_intensity
      subtitle: LED Intensity
      unit: '%'
image: /local/robot_icon_c.svg
show_status: false
show_name: true
ChrisChapman commented 1 year ago

I am also having this exact issue

Config:


type: custom:vacuum-card
entity: vacuum.wilson_2
stats:
  cleaning:
    - attribute: cleaning_area
      unit: sq meters
      subtitle: Cleaning Area
    - attribute: cleaning_time
      unit: minutes
      value_template: '{{ (value | float(0) / 60) | round(1) }}'
      subtitle: Cleaning time
    - attribute: boost_iq
      subtitle: Boost IQ
      value_template: '{% if (value == true) %}On{% else %}Off{% endif %}'
    - attribute: auto_return
      subtitle: Auto Ret
      value_template: '{% if (value == true) %}On{% else %}Off{% endif %}'
    - attribute: do_not_disturb
      subtitle: Dnd
      value_template: '{% if (value == true) %}On{% else %}Off{% endif %}'```
github-actions[bot] commented 1 year ago

There hasn't been any activity on this issue recently. This issue has now been marked as stale and will be closed if no further activity occurs. Please, update to the latest version and check if that solves the issue. Thank you for your contributions!

github-actions[bot] commented 11 months ago

This issue was closed because it has been stalled for 30 days with no activity. Please open a new issue if the issue is still relevant, linking to this one.

mindgam3s commented 11 months ago

this is a bug, can you please just reopen it?