epaper_templates icon indicating copy to clipboard operation
epaper_templates copied to clipboard

Option to manually trigger redraw

Open guibom opened this issue 4 years ago • 1 comments

When using a display that doesn't support partial refresh (like 3 color ones), it doesn't seem possible to change multiple variables at once.

As soon as I change one variable in MQTT, it triggers the redraw as expected. However since it's a lengthy process, if another variable changes during that time, it seems to interrupt the current drawing before it has a chance to finish. So I can't seem to find a way to use multiple retained MQTT messages for example (even when using Windowed Updates). Each variable has to be timed and sent only after each redraw is done.

I think one possible solution would be to have an option to NOT automatically redraw the display, and only do it once it receives a specific command over REST or MQTT. So the variables can be updated first, and then shortly after the redraw is triggered.

Thanks for the awesome project btw!

guibom avatar Apr 11 '21 01:04 guibom

Hey @guibom, apologies for the late reply.

The request makes sense, but I think it would be even better if the screen performed as it should when multiple variables are received within a short period. I actually intended for that to work as you would expect (updates are automatically batched), but there might be some funky edge cases that are distinctly noticeable with slow-updating screens.

Which screen are you using? I might have one laying around to test with.

Could you also share the output of /api/v1/settings? (⚠️⚠️sensor any passwords that might appear! ⚠️⚠️)

sidoh avatar Apr 19 '21 17:04 sidoh