Any way to update multiple input helpers in one prompt/dialog?

I created a handful of input helpers for manually tracking my whole-house water filter:

  • input_datetime - for the last date it was changed
  • input_number - for how many days it should last
  • input_text - for tracking the brand/model
  • input_number - for tracking the pressure drop.

I then created a template sensor to bring all that in one place and include some calculations:

- sensor:
  - name: "Whole House Water Filter Status"
    unique_id: 'a2726167-fb6c-434e-b204-83208035ead9'
    attributes: 
      expire_date: >
        {% set span = timedelta(days=(states('input_number.whole_house_water_filter_lifetime')) |int(0)) %}
        {% set expireDate = span + as_datetime(states('input_datetime.whole_house_water_filter_last_replaced')) %}
        {{ expireDate.strftime('%x') }}
      days_remaining: >
        {% set span = timedelta(days=(states('input_number.whole_house_water_filter_lifetime')) |int(0)) %}
        {% set expireDate = span + as_datetime(states('input_datetime.whole_house_water_filter_last_replaced')) %}
        {{ (expireDate - as_datetime(states('sensor.date'))).days }}
      last_changed: "{{ as_datetime(states('input_datetime.whole_house_water_filter_last_replaced')).strftime('%x') }}"
      pressure_drop: "{{ states('input_number.whole_house_water_filter_pressure_drop') | int }}"
      notes: "{{ states('input_text.whole_house_water_filter_notes') }}"
    state: >
      {% set span = timedelta(days=(states('input_number.whole_house_water_filter_lifetime')) |int(0)) %}
      {% set expireDate = span + as_datetime(states('input_datetime.whole_house_water_filter_last_replaced')) %}
      {% if expireDate > as_datetime(states('sensor.date')) %}
        Ok
      {% else %}
        Expired
      {% endif %}

Next, I plan to build some automation to remind me when the filter needs to be changed. I think I have a pretty good handle on how to do that, but what I’m struggling with is that once the filter is changed, I’d like a streamlined way of capturing the new input values - preferably, all at once in a single dialog.

I’ve scoured the forums and internet but have come up empty so far…any suggestions or pointers where to look?

Thank you!

What do you mean by this?

May be I understood you in a wrong way - then please correct me:

  1. There are some settings (specified by input helpers).
  2. There is a sensor which gives “Expired” (filter must be changed) or “OK” - defined based on:
    – those settings;
    – current date.
  3. If it is “Expired” - then some automation reminds you to change a filter.
  4. Since a new filter may differ from the replaced one (not to mention the “last date it was changed”) - you may need to re-define settings. So you need a “shortcut” to a dialog to set new values for helpers.

In a similar case what I did is:

  1. Use a binary_sensor with “device_class: problem” instead of a sensor (mainly for presentation purpose - icon, icon color etc).
  2. Separate view containing card(s) to set settings (defined by helpers) (with “subview: true”, but this is up to your design).
  3. Automation monitors a value of my binary_sensor and notifies me via Telegram. The notification includes a link to that view with settings.
  4. When I get this notification, I may do necessary actions (like replacing a filter) and then go to the view via the link).
1 Like

By “capturing the new input values”, I mean I want to have a targeted UI (like a popup dialog) to have the user enter new values into the four input helpers above.

Thank you, Ildar_Gabdullin - it sounds like you understood my question fairly well and a separate view (subview) may be just the thing I’m looking for…I’ll start researching how to build one.

In the meantime, I just used the legacy entity grouping in yaml to at least bring those all together:

whole_house_water_filter:
  name: "Whole House Water Filter"
  entities:
    - sensor.whole_house_water_filter_status
    - input_datetime.whole_house_water_filter_last_replaced
    - input_number.whole_house_water_filter_lifetime
    - input_text.whole_house_water_filter_notes
    - input_number.whole_house_water_filter_pressure_drop

image