Skip to content

Instantly share code, notes, and snippets.

@gabeio
Forked from adtac/README.md
Created August 5, 2024 14:50
Show Gist options
  • Save gabeio/089f0fd918a8e1a1d77f509bf70dcb2f to your computer and use it in GitHub Desktop.
Save gabeio/089f0fd918a8e1a1d77f509bf70dcb2f to your computer and use it in GitHub Desktop.
Using your Kindle as an e-ink monitor

using your Kindle as an e-ink monitor

demo: https://x.com/adtac_/status/1820127470613622950 (Paperwhite 3)

step 1: jailbreak your Kindle

mobileread.com is your best resource here, follow the instructions from the LanguageBreak thread

I didn't really follow the LanguageBreak instructions because I didn't care about most of the features + I was curious to do it myself, but the LanguageBreak github repo was invaluable for debugging

it doesn't matter how you jailbreak your device as long as you get to a root shell somehow

step 2: listener server on the Kindle

I wrote a Go program to receive files on port 8000 and then invoke eips, which is Kindle's built-in utility to draw images on the screen

for example, if the Go program received a JPG file and saved it under /tmp/img.jpg, the following command would draw the image with a partial update (full update looks awful):

eips -g /tmp/img.jpg -w gc16 -x 128 -y 0

read the eips wiki for details on what the flags mean

unfortunately I lost the Go source code, but it was pretty simple, like under 30 lines

step 3: screencapture + imagemagick

I wrote a script to use screencapture on macOS to repeatedly capture the screen into a png file, which is then converted into a shape, size and color the Kindle likes, and then transferred over usbnet

/usr/sbin/screencapture -C -x /tmp/orig.png
magick /tmp/orig.png -rotate 270 -resize '810x1448!' -type GrayScale -depth 8 -colors 256 /tmp/gray.jpg
cat /tmp/gray.jpg | nc -w 0 192.168.15.244 8000

change the resolution to match your device and port to match the listener server

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