I modified my cat feeders so they run off an esp32 with ESPHome. They're quite simple, just the motor driver and rotation stop switch, an IR LED and its phototransistor. I have a simple string entity with a list of hours "0, 3, 6..." and each hour they check the list and dispense food if the current hour matches.
The dispensing part is just "turn on the motor", the rotation stop switch transitions from high -> low while it spins, dispenses the food, then when the switch goes back low -> high I turn off the motor with an on_press.
It works, but I still have to keep an eye on it. Sometimes the motor jams, and I didn't wire it to go in reverse (I hardwired the motor driver to go in one direction and just enable/disable). I have to fix this by turning the feeder upside down and running the motor until it unjams. It doesn't happen often, but it's easy to miss, so I have this card so I can keep an eye on the relevant parameters. However, this card is hard to read. The main problem is the history graph. I need to watch the last 12-24 hours to spot any problems, but the motor/switch only change states for like 3 seconds every 3 hours. The main annoyance is that "unavailable" looks exactly like a dispensing cycle at this scale, it's impossible to get my mouse over the tiny little sliver that's out of place to see if it was a proper transition or just an unavailable.
In a perfect situation, whenever the motor is "off" the switch should be "on" and vice-versa. What I need to notice is when they're both off for longer than like, a second, it means something is stuck and the motor stopped spinning before getting back to the stop switch. Anyway, that's a question for #1284980040940912641 , I think, this one is about the card.
Can anyone think of a good way to display this on/off transition state so that I can easily see just when my cats were fed and not when the device disconnects. Ideally without needing to update the ESPHome yaml, because I can't OTA them 🙁