EInk time_to_refresh bypass

CircuitPython on hardware including Adafruit's boards, and CircuitPython libraries using Blinka on host computers.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
CR34T0R
 
Posts: 24
Joined: Wed Aug 31, 2022 8:58 am

EInk time_to_refresh bypass

Post by CR34T0R »

Hello,

I'm building a menu displayed on a eInk that is meant to be set up and leave, 2-3 interactions and that's it, but time_to_refresh makes it impossible to do any sort of functional menu interaction. I can wait while epd.busy but there's no way to make any menu with 3 minutes delay for the feedback.

It is a nightmare to debug and test too.

How can I bypass this restriction?

Thank you.

User avatar
tannewt
 
Posts: 3298
Joined: Thu Oct 06, 2016 8:48 pm

Re: EInk time_to_refresh bypass

Post by tannewt »

When you construct the eink driver class pass `seconds_per_frame=<number>`. That's the time `time_to_refresh` is enforcing.

User avatar
CR34T0R
 
Posts: 24
Joined: Wed Aug 31, 2022 8:58 am

Re: EInk time_to_refresh bypass

Post by CR34T0R »

tannewt wrote: Tue Jan 31, 2023 3:14 pm When you construct the eink driver class pass `seconds_per_frame=<number>`. That's the time `time_to_refresh` is enforcing.
Thank you again tannewt, it indeed let's me refresh more often, love it.

Now I have another question, there was a way to wait until refresh was completed right? I'm sure there was a method for this, but I'm unable to find it, do you know what I mean?

Meanwhile I'll just sleep for 1s

User avatar
tannewt
 
Posts: 3298
Joined: Thu Oct 06, 2016 8:48 pm

Re: EInk time_to_refresh bypass

Post by tannewt »

The display class has a busy attribute that will check the busy pin or wait the specified refresh time. So you can do:

Code: Select all

while display.busy:
    pass

User avatar
CR34T0R
 
Posts: 24
Joined: Wed Aug 31, 2022 8:58 am

Re: EInk time_to_refresh bypass

Post by CR34T0R »

tannewt wrote: Mon Feb 06, 2023 1:41 pm The display class has a busy attribute that will check the busy pin or wait the specified refresh time. So you can do:

Code: Select all

while display.busy:
    pass
Yes! I was sure I've seen something along those lines but couldn't remember nor find it, thanks!

Locked
Please be positive and constructive with your questions and comments.

Return to “Adafruit CircuitPython”