Hello,
I am considering building a digital picture frame to display today's date and inspiring quotes. The display should be the size of A5 paper and the whole frame should run on batteries.
- Are there any simple to use eInk/ePaper displays or this size with existing MicroPython drivers?
- Can the power consumption of the MicroPython board be lowered enough to run on AA or AAA batteries for at least 2 months? (1 update per day)
I know that there are other boards with a lower power consumption, but since I already have MicroPython boards I'd prefer to use them - and of course Python.
Components for digital picture frame
Re: Components for digital picture frame
I think the cheapest and easiest to get is the e-ink screen that Kindle uses -- you can get them for around $20. However, they are a little bit complex to power and drive -- there is some reverse-engineered documentation available on the web, though.
I think the easiest way that people have done it is to find or buy a used or even damaged Kindle, install Debian on it, and write the program for that, without extra electronics.
I think the easiest way that people have done it is to find or buy a used or even damaged Kindle, install Debian on it, and write the program for that, without extra electronics.
Re: Components for digital picture frame
This link might be helpful: https://hackaday.io/page/1674-best-way- ... nk-display
- pythoncoder
- Posts: 5956
- Joined: Fri Jul 18, 2014 8:01 am
- Location: UK
- Contact:
Re: Components for digital picture frame
ePaper is poor for displaying pictures because pixels are either on or off. To show grey scales you'd need to use dithering but with real world displays the pixels are too large for this to be effective - unless someone knows better. There is a driver for 2.7 inch displays here https://github.com/peterhinch/micropython-epaper.git. It can display images but don't expect photo-realism! You might like to glance at the code to get a feel for the size of the task of writing a driver for other displays. One issue is the size of the framebuffer. It could become a problem with an A5 display unless you can find a module with a built-in framebuffer.
If you do write a driver consider using the framebuffer class: this didn't exist when I wrote the above driver.
Your power requirements are entirely possible. I have a project which uses a 2.7 inch display and runs for three months on four AA cells. It wakes from standby once an hour and communicates with three outlying units by radio before updating the display. If you stripped out the radio comms, which keep it awake for about 3 minutes, I'd expect substantially longer run times. The mean consumption with a V1.1 Pyboard is dominated by the ratio of (time awake)/(time in standby).
For low power applications I suggest reading this https://github.com/peterhinch/micropyth ... opower.git.
If you do write a driver consider using the framebuffer class: this didn't exist when I wrote the above driver.
Your power requirements are entirely possible. I have a project which uses a 2.7 inch display and runs for three months on four AA cells. It wakes from standby once an hour and communicates with three outlying units by radio before updating the display. If you stripped out the radio comms, which keep it awake for about 3 minutes, I'd expect substantially longer run times. The mean consumption with a V1.1 Pyboard is dominated by the ratio of (time awake)/(time in standby).
For low power applications I suggest reading this https://github.com/peterhinch/micropyth ... opower.git.
Peter Hinch
Index to my micropython libraries.
Index to my micropython libraries.