No description
Find a file
Dennis Reimann 58b8052dce
🔖 Release v0.2.2
2020-07-05 12:51:50 +02:00
.github/images 🎉 Initial commit 2020-04-14 17:01:46 +02:00
kindle 🎉 Initial commit 2020-04-14 17:01:46 +02:00
server 🔖 Release v0.2.2 2020-07-05 12:51:50 +02:00
.gitignore 🛠 Various updates 2020-06-30 10:44:25 +02:00
README.md Add notes regarding USB Network 2020-07-01 15:21:52 +02:00

Kindle Status Display

My Bitcoin Status Display made with a jailbroken Kindle. Original idea and setup taken from @naltatis' kindle-display.

Framed

General

This is a two part setup: The hacked Kindle pulls a screenshot that is taken from the webpage the server displays. The server updates this screenshot in regular intervals and the Kindle also updates regularly.

+------+   update X minutes    +------+
|      |  ------------------>  |      |
|      |         wifi          |      |
|      |  <------------------  |      |
+------+    greyscale image    +------+
 kindle                         server

Server

The code in this repository is my personal setup which pulls in data from my own network. I recommend you fork this repository and modify the ./data.sh and visual representation to fit your needs.

Prerequisites

  • Node.js (assembles the data and runs the webserver)
  • firefox (takes the screenshot of the webpage)
  • pngcrush (converts the screenshot to a greyscale image)
  • jo (to generate the JSON data file)

Installation

# Clone the repository
git clone git@github.com:username/kindle-display.git

# Go to the server directory
cd kindle-display/server

# Copy sample env file and adapt the settings
cp .env.sample .env

# Install the dependencies
npm install

# Start the server
npm start

# Update data and create the screenshot
./cron.sh

# Preview the greyscale in your browser
open http://localhost:3030/display.png

Once everything works, deploy the server app and setup a cronjob to trigger the cron.sh script regularly.

Kindle

Prerequisites

You need to jailbreak your Kindle using the packages from the mobileread forum.

I installed these according to the info in their particular READMEs:

  1. Jailbreak
  2. USBNetwork
  3. MKK
  4. KUAL

Installation

# Connect your Kindle via usb and ssh into it
ssh root@kindle

# Make the Kindle file system writable
mntroot rw

# Create the mnt/base-us scripts according to the files in the kindle directory
vi /mnt/base-us/RUNME.sh

# Set the BASE according to your local network setup to address the server
vi /mnt/base-us/update.sh

# Create a cronjob to run the update script in regular intervals
#
# For instance:
# */5 6-22 * * * /mnt/us/update.sh
# 0 23,0,5 * * * /mnt/us/update.sh
vi /etc/crontab/root

# Execute the init script and trigger an the first render
sh /mnt/base-us/RUNME.sh

Notes regarding USB Network (via openoms)

Unmount and eject your Kindle (You might also want to unplug it, some devices behave strangely when toggling usbnet/usbms while plugged in).

You'll need to be in debug mode to run private commands. So, on the Home screen, bring up the search bar (by hitting [DEL] on devices with a keyboard, or the keyboard key on a K4, for example), and enter:

;debugOn

# now we can enable usbnet
~usbNetwork

On the desktop:

dmesg | grep usb0

# example output
> [367478.835928] cdc_subset 1-2:1.1 enp0s20u2i1: renamed from usb0

Use ifconfig enp0s20u2i1 192.168.15.201

To log in ssh root@192.168.15.244 and just press enter.

Images

Framing

Jailbreak 1

Jailbreak 2

Credits

naltatis

Matthew Petroff

hahabird