The other day, @[email protected] posted an awesome article about Zigbee network performance and it brought attention to something I was unaware of, which is that my devices aren’t supposed to shout all day, everyday about doing mostly nothing. I immediately followed the advice in the article and tried to debounce everything. But then everything stopped working like it should 😂 Can the community pool your collective knowledge and walk me through debouncing so I can not get MQTT spam but still have all my motion, presence and temperature sensors work please?

  • CondorWonder
    link
    fedilink
    English
    arrow-up
    4
    ·
    9 months ago

    First thing - exclude recording of the devices. My method was to use a glob so I name devices/entity IDs specifically and they don’t get recorded (in my case I used f_ as in “filtered” so devices become like “F Source Presence”), but you can add specific entities or use your own glob. In configuration.yaml I have this:

    recorder:
      exclude:
        entities:
          - sensor.excluded_entity_1
        # AND/OR this (then of course rename entities as needed)
        entity_globs:
          # exclude all sensor entities that start with f_
          - sensor.f_*
    

    Then I created templates for my presence sensors, that just copy the state so I get history (yaml here, but can do through UI now too in the Helpers section, the import part is the template in the state key below):

    template:
      - binary_sensor:
          - name: Real presence
            unique_id: my_presence
            state: >-
              {{ states('binary_sensor.f_source_presence}}
            availability: >-
              {{
                not (
                  states('binary_sensor.f_source_presence') == 'unknown' or
                  states('binary_sensor.f_source_presence') == 'unavailable'
                )
              }}
            device_class: presence
    

    You could also use a statistics sensor to get a moving average for numeric values and get history from them too (and reduce the noise by reducing the precision and having a larger time window). This is also available through the UI - Helpers.

    • sabreW4K3@lazysoci.alOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 months ago

      Random one, but do you think it’s possible to use the new label system to create the filter group?

        • sabreW4K3@lazysoci.alOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          9 months ago

          I went to create an enhancement request, but it’s just creating a thread on their forums 😮‍💨

          • CondorWonder
            link
            fedilink
            English
            arrow-up
            2
            ·
            9 months ago

            Iirc that’s where they start ERs yes - it’s easier to see, vote, and comment on them there compared to GitHub. It’s also the source for the month of WTF where it seemed like a lot of the easier ERs get addressed.