 
template:
  - sensor:
    - name: "Plant 1 Moisture Percent Calibrated"
      unit_of_measurement: "%"
      state: >
        {% set v = states('sensor.plant_guardian_input_1') | float(0) %}

        {% if v <= 0.0 %}
            0

        {% elif v <= 1.1 %}
            {{ (v - 0.0) / (1.1 - 0.0) * (10 - 0) + 0 | round(1) }}

        {% elif v <= 1.3 %}
            {{ (v - 1.1) / (1.3 - 1.1) * (15 - 10) + 10 | round(1) }}

        {% elif v <= 1.82 %}
            {{ (v - 1.3) / (1.82 - 1.3) * (40 - 15) + 15 | round(1) }}

        {% elif v <= 2.2 %}
            {{ (v - 1.82) / (2.2 - 1.82) * (50 - 40) + 40 | round(1) }}

        {% elif v <= 3.0 %}
        {{ (v - 2.2) / (3.0 - 2.2) * (100 - 50) + 50 | round(1) }}

        {% else %}
            100
        {% endif %}
    - name: "Plant 1 Comfort"
      unit_of_measurement: "%"
      state: >
        {% set p = states('sensor.plant_1_moisture_percent_calibrated') | float(0) %}
        {% set dry = 10 %}
        {% set wet = 30 %}
        {% set minimum_out = 20 %}

        {% if p <= dry %}
          {{ minimum_out }}
        {% elif p >= wet %}
          100
        {% else %}
          {{
            (
              minimum_out
              + (p - dry) / (wet - dry) * (100 - minimum_out)
            ) | round(0)
          }}
        {% endif %}
