šŸ”¹ Auto-entities - Automatically fill cards with entities

Hi All,
Iā€™ve been using this card for a while now and created quite a comprehensive list of warnings. Iā€™ve a new challenge and I canā€™t think how to solve it.
Iā€™ve created enhanced sensors for local river level sensors, adding their maximum ā€˜normalā€™ level (and locations for showing on a map).
Iā€™ve set a filter group for sensors containing the word ā€œfloodā€ but of course I get all the flood sensors regardless of their level. I want them to only appear when their state value exceeds this attribute value, Iā€™m having a mental block and canā€™t sus how to express this in a filter.

Can anyone help?

Thanks

Post a simplified code for your attempts for auto-entities-card containing your sensors.
Have you tried this?

Thatā€™s not quite what Iā€™m trying to achieve, here is some code that doesnā€™t work:


    - domain: sensor
      entity_id: /flood/
      state: ā€˜> this.entity_id.maximum_normalā€™

I know itā€™s wrong but Iā€™m not thinking clearly as to what it should be

Is it an attribute?
What possible values does it have? Are they [0ā€¦9, 10ā€¦99, 100ā€¦999], [0ā€¦9], [10ā€¦99] or ā€¦?
Also, what do you want to display - this attribute or a state?

Hi yes an attribute.
Itā€™s variable, ie flood level sensor specific and is measure in metres. It seems to vary from about 0.7 to 2.5. I only want to show flood sensors that are above the maximum normal figure that is applicable to that entity.

Maximum normal: 0.85m which is an attribute of sensor.any_Flood_level and is fixed for each sensor but different for each sensor.
Sensor.any_Flood_level: 0.75
And sensor does not showin my auto list.
Sensor.any_Flood_level: 1.1
The sensor shows in my auto list. It can just shown an icon, or the state, not bothered, but did assume it would show a state if it could be done

As far as I understood:

  1. There are some sensors.
  2. Every sensor has an attribute my_attr.
  3. There is an Entities card with these sensors.
  4. Some sensor must be displayed in the card if its state <= its attribute my_attr (or >=, whatever).

If I got your idea right - then try to adapt this code for your case:

    filter:
      template: >
        {% set GROUP = 'group.my_sensors' -%}
        {%- set MY_SENSORS = expand(GROUP) -%}
        {% for my_sensor in MY_SENSORS | sort(attribute="attributes.my_attr") -%}
          {%- set STATE_VALUE = states(my_sensor.entity_id) -%}
          {%- set ATTR_VALUE = state_attr(my_sensor.entity_id,"my_attr") -%}
          {%- if STATE_VALUE|float(default=0) <= ATTR_VALUE|float(default=0) -%}
            {{my_sensor.entity_id}},
          {%- endif -%}
        {%- endfor %}

The group.my_sensors must contain all your sensors.
This code was verified for another case, then I changed it for your case and then was not able to verify it again.

Note that sort(..) may give wrong results like ā€œ1,10, 111, 2, 3, 31, 4ā€.
But if values are like ā€œ0.4, 0.45, 0.7, 1.1, 2.3ā€ - I think that sorting will be OK.

1 Like

Hello,

itā€™s possible to attribute severity color of custom:bar-card according to an attribute sensor ?

Sorry, but how is it related to auto-entities?
Severity color is supposed to be defined for different ranges ā€œfromā€¦ toā€¦ā€ in bar-card.

1 Like

Yep i didnā€™t use Severity but style :
I try this but itā€™s not working :confused:

direction: up
type: custom:auto-entities
style: |
  ha-card {
    box-shadow: none !important;
  }
card:
  type: custom:bar-card
  title: Filaments
  show_header_toggle: false
  direction: up
  height: 709px
  stack: horizontal
  icon: mdi:printer-3d-nozzle
  attribute: state_percent
  unit_of_measurement: '%'
  positions:
    name: inside
    icon: inside
  style: |-
    bar-card-title {
      text-shadow: none;
    }
    ha-icon {
      color: white;
    }
    bar-card-card {
      text-shadow: none;
      color: white;
    }
    bar-card-currentbar {
      border-radius: 10px;
    }
sort:
  method: domain
filter:
  include:
    - entity_id: sensor.filament_*
      options:
        type: custom:bar-card
        name: test
        style: |-
          bar-card-currentbar {
            --bar-color: #FF0000 !important;
          }
          bar-card-value{         
            color: black;
          }
  exclude:
    - entity_id: sensor.filament_select
view_layout:
  grid-area: filament

EDIT : when i use color attribute itā€™s work
But if you use state_attr it doesnā€™t work :confused:

image

It is not loaded correctly :confused:

EDIT 2 : I have found solution :

  template: |
    {% for state in states.sensor -%}
      {%- if state.entity_id | regex_match('sensor.filament_',ignorecase=False) -%}
      {%- set NAME = state_attr(state.entity_id,"friendly_name") -%}
      {%- set COLOR = state_attr(state.entity_id,"color") -%}
        {{
          { 'entity': state.entity_id,
            'name': NAME,
            'color': COLOR
          } }},
      {%- endif -%} 
    {%- endfor %}

Hello all,
Iā€™m strugling with list of tasmota devices.
it is possible to create hyperlink from list with ip?
image

tap_action:
  action: url
  url_path: this.entity_id

Happy Bew Year to you! Iā€™ll give it a go tomorrow. Thanks for your help

1 Like

only now starting with dark mode, I stumble upon this issue of not being able to set options for it using the auto-entities card with Map. Filed (edit: and closed, see below) an issue in the repo options not functional on Map card Ā· Issue #241 Ā· thomasloven/lovelace-auto-entities Ā· GitHub but thought it might be good to post/ask here too:

        - type: custom:auto-entities
          card:
            type: map
          show_empty: false
          filter:
            include:
              - domain: person
                options:
                  hours_to_show: 48
                  dark_mode: true
                not:
                  state: home

card works fine, with the exception of the options, which are simply not applied.

please have a look? thanks!

EDIT

o dear, how stupid of me. this is all there is to it:

        - type: custom:auto-entities
          card:
            type: map
            hours_to_show: 48
            dark_mode: true

nvm me.

Yes, these are card-wide options.

new challengeā€¦

replace:

        filter:
          include:
            - entity_id: sensor.*_actueel
              state: '>30'

with a state following an input_number.power_threshold

        filter:
          include:
            - entity_id: sensor.*_actueel
              state: '> input_number.power_threshold' # or states('input_number.power_threshold')

would be awesome ofc (like we can do with numeric state triggers, but I believe we need to use the template option, which is still a bit more complexā€¦

anyone with a quick fix, that doesnt iterate over all states|sensor ?

hi i try to make a card with a tap action. The tap action need a id that is in the attribute of the sensor.
{{state_attr("this.entity_id", "id")}}
how can i do this?
This code dont work - it works if i insert 1 instead of ā€˜{{state_attr(ā€œthis.entity_idā€, ā€œidā€)}}ā€™, but the id is different for every one of the sensores.

card:
  show_header_toggle: false
  title: Fryser
  type: entities
filter:
  include:
    - entity_id: sensor.*template_grocy_stk_*
      options:
        tap_action:
          action: call-service
          service: grocy.consume_product_from_stock
          service_data:
            product_id: '{{state_attr("this.entity_id", "id")}}'
            amount: 1
            transaction_type: CONSUME
  exclude:
    - state: unavailable
sort:
  method: state
  numeric: true
  reverse: true
type: custom:auto-entities

I do not think that product_id supports templates. Also, this.entity_id is not supposed to be used in quotes.

ok do you have any idea how i can do this with auto entities?

Use ā€œtemplateā€ option of the card.

i have tryed this and a lot more :slight_smile:

action: call-service
          service: grocy.consume_product_from_stock
          service_data:
            product_id:
              template: '{{state_attr("this.entity_id", "id")}}'
            amount: 1
            transaction_type: CONSUME

but this dont work. how would you do it?

Does the ā€œproduct_idā€ option has a ā€œtemplateā€ option?
I guess - NO.
Use only options accordingly to Docs.
Earlier I advised to use a ā€œtemplateā€ option of ā€œauto-entitiesā€ card. This option allows to specify lists by using jinjia.