Skip to content

display: Use partial refresh for status#874

Draft
sonnyp wants to merge 7 commits intomainfrom
epd-refresh
Draft

display: Use partial refresh for status#874
sonnyp wants to merge 7 commits intomainfrom
epd-refresh

Conversation

@sonnyp
Copy link
Collaborator

@sonnyp sonnyp commented Mar 2, 2026

It works but there are concerns.


For partial updates to work, the display needs to stay powered (no epd.sleep()) between the initial epd.display_Partial and the subsequent partial refreshes.

⚠️ Waveshare advises not to leave the display powered on for a long time

Note that the screen cannot be powered on for a long time. When the screen is not refreshed, please set the screen to sleep mode or power off it. Otherwise, the screen will remain in a high voltage state for a long time, which will damage the e-Paper and cannot be repaired!


ℹ️ Waveshare advises not to always use partial refresh

For e-Paper displays that support partial refresh, please note that you cannot refresh them with the partial refresh mode all the time. After refreshing partially several times, you need to fully refresh EPD once. Otherwise, the display effect will be abnormal, which cannot be repaired!

https://www.waveshare.com/wiki/2.9inch_e-Paper_Module_Manual#Precautions

This could be mitigated by doing a full refresh once in a while.


Neither is well defined; how long is too long? how many partial refreshes are acceptable before full refresh?

Partial refresh is nice to have but not worth risking damaging the display. We should run extensive tests before we enable it.

It seems like a better use case for partial refresh is short lived animations.

@sonnyp sonnyp marked this pull request as draft March 2, 2026 10:55
@sonnyp
Copy link
Collaborator Author

sonnyp commented Mar 2, 2026

@babo989 I know you've used this display in the past. Do you have experience to share with partial refresh?

// await setTimeout(1000)
}

// 10:54
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've run this test for 3h didn't notice anything wrong.

I'll try a longer run.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant