3

I'm leaving this here for others that may be looking for this.

IT CAN'T BE DONE

You need an ASIC (Applicaiton-Specific Integrated Circuit) to drive the display.

IT CAN BE DONE - read the comments below!

================

What I need to know is where to start doing research in how to render stuff on a replacement Kindle (preferably a paperwhite) screen.

What I want to achieve: Make a rather expensive bed-side alarm clock.

What will make it unique: It'll have a nice big e-ink display screen

Why?
2 reasons.
1: Right now I use my cellphone as an alarm clock and I think that having that next to my bed is keeping me awake at night, so I want to move my cellphone out of the bedroom completely. This means that I need another alarm clock next to my bed.
2: I sleep in total pitch-black darkness. Even a very dim LED bugs me and will keep me from falling asleep.

So the idea, is to hook up a Pi to a new replacement Kindle screen so that there's no light. But it'd be nice to be able to touch the screen and the back-light will come on for a few seconds and then go off again so that I can see the time if I want to.

The question is: Where should I start figuring out how to insert tab A (Kindle Screen) into slot B (Raspberry Pi) and then get them to start talking to each other.

I've found people that have turned a working Kindle into a WiFi Pi terminal. But I don't want to (1) buy a whole new kindle to just be a bed-side alarm clock and (2) I don't want to void warranties by rooting any devices just to do so.

Also, I've looked at the PaPiRus, but it's way too small, even the big 2.7" one. I want something chunkier.


UPDATE!

I bought myself the 800x600 6" epaper dispaly from Waveshare. https://www.waveshare.com/wiki/6inch_e-Paper_HAT

It dislpays an 800x600px .bmp file.

I'm busy developing the code to make a really nice clock interface. Currently there are 2 modes; Analogue and Digital.

The Analogue has 2 hands and the relevant hour and minute tick marks around the 12-hour clock face.

The Digital currently supports 2 fonts, (Digital Monospace, and Roboto Thin Italic). The digital also has the date in <day, month, date, year> format ("Saturday, August 15, 2020"). Currently also working on adding the current weather and temperature, and a 24-hour and 7-day forecast using the OpenWeatherMap API.

Here's a slightly out-of-date video (showing some of the older fonts and no date info) on YouTube


UPDATE 2!

I've got the clock at v0.7 now (Here's a Youtube video ov v0.6).

Current information displayed on screen:

• Current meterological conditions
• Current Temperature
• Current Humidity
• 24h forecast graph showing:
    o Temperature
    o Precipitation
    o Cloud cover
• Current Time
• Today's Sunrise and Sunset times
• Today's Day and Date (Mon, Jan 25, 2021)
Jim
  • 429
  • 1
  • 5
  • 16

7 Answers7

9

I am not sure why people are being so negative. There are at least two people out there who have worked out how to drive these screens.

http://essentialscrap.com/eink/

https://www.circuitvalley.com/2017/03/kindle-e-ink-eink-driver-microcontroller-project-msp430-low-power-display-epaper.html

The only thing is that the Pi may not be able to deliver the timings needed for controlling the device so you may need a microcontroller in between.

Given how long this information has been available, I'm fairly surprised we haven't seen modules for sale for this already.

Rich
  • 106
  • 1
  • 1
2

Nope.

This is effectively identical to the many questions that pop up on reusing screens from phones, tablets and anything else with pixels. Without access to detailed information, parts specifications and Pi-appropriate driver software from Amazon (none of which exists in the public domain) there's no way you're going to be able to interface a Pi with the Kindle screen. The best you can hope for is to send signals from a Pi to a whole Kindle, per the existing projects you mention in your question.

goobering
  • 10,750
  • 4
  • 40
  • 64
1

If you want an expensive alarm, try using 640x384, 7.5inch E-Ink display HAT for Raspberry Pi https://www.waveshare.com/7.5inch-e-paper-hat.htm

Or KindleBerry Pi - http://ponnuki.net/2012/09/kindleberry-pi/

Alex_Krug
  • 121
  • 2
1

There is this page at Raspberry Pi, evidently they've thought of doing it. https://www.raspberrypi.org/documentation/hardware/raspberrypi/dpi/README.md

It's done at a GPU level, no serial stuff involved.

So it comes down to finding a display with enough information. Once you're sure of the logic levels some of it could be explored or confirmed by touching wires to places to see what happens. Then again, can you tell if you're seeing a 2^4 or a 2^5 colorwise? The Pi can do 24 bit color over DPI it seems but that's a lot of wires to guess at. If you can find documentation for the display you're trying to connect it would save time and frustration.

Alan Corey
  • 201
  • 1
  • 6
0

You won't be able to re-use the kindle display, but you could use something like this:

http://www.pervasivedisplays.com/kits/mpicosys102

This is a relatively inexpensive e-paper display with a controller board that identifies itself as a usb-mass storage system. You upload images and the controller board takes care of displaying them.

chasm
  • 101
  • 3
0

The issue is not so much in the hardware you may need (you mention ASIC), but rather in the absence of spec/schematic for display modules used in commercial products. They might as well be using the same interface as Raspberry pi (DSI, SPI), but you won't know that, and the pinout will certainly be different. Reverse-engineering is simply not viable in terms of time, equipment and effort needed for such little gain.

There certainly are bigger e-ink displays than 2.7" (here's one measuring 4.5"), and there's no technical limitation on SPI displays you can connect to the RPi. The only thing you need is enough dedication to write a framebuffer driver for a display, if it isn't marketed as RPi-compatible.

Dmitry Grigoryev
  • 28,277
  • 6
  • 54
  • 147
-3

Just jailbreak it, get root, set up a daemon, or hijack the existing one that handles the screensavers, have the pi put up the picture and maybe set up a poller to look for a dif. If one is detected on the image file, then execute the display refresh routine.