Pulse classification (pulse meter/counter use case)

Hey all,
appologies if this was discussed before. I have a simple use case and wonder if someone has experience and a recommendation for the ESPHome based solution.

My device in question has an LED that is either on, off, or blinking. I want ESPHome to observe a digital input pin and expose a sensor that has one of the four states:

  • “off” - pin LOW
  • “on” - pin HIGH
  • “slow_blinking” - blinking at 500ms on, 500ms off, 500ms on, …
  • “fast_blinking” - blinking at 200ms on, 200ms off, 200ms on, …

Any ideas would be appreciated! I might get around to some testing later this week.

Thanks and best!

Any help would be appreciated! Thanks