justini

Just in time info when entering or exiting your home. Raspberry Pi Zero W + Waveshare e-paper display.

Usage no npm install needed!

<script type="module">
  import justini from 'https://cdn.skypack.dev/justini';
</script>

README

Juistini - Just in time info at your doorstep

WIP. E-paper info board with different information that could be useful for when entering or exiting your home.

Building on Waveshare e-paper and Raspberry Pi Zero W, but should be created to work with other screens and Linux computers as well. So I guess the push of images to the screen should only be described, but not be a part of this module.

weather screen

Hardware

Packages to install

Chromium for headless screenshot

sudo apt-get install chromium-browser

GraphicsMagick

sudo apt-get install graphicsmagick

Python

I don't remember how I set up this, but using Python v2. Anything that will make the Waveshare display work is okay. It can be used from a C library too.

Node.js - latest version (v14 for now)

audstanley / NodeJs-Raspberry-Pi

wget -O - https://raw.githubusercontent.com/audstanley/NodeJs-Raspberry-Pi/master/Install-Node.sh | sudo bash;
node -v;
sudo node-install -v 14;

Justini

npm i justini

Running Justini

Basically, you do three things to get the weather onto the display.

  1. Create a screenshot of justini.htm
  2. Convert it to a 1 bit .bmp file
  3. Update the screen

In crontab

@reboot pi sleep 30 && chromium-browser --headless --virtual-time-budget=10000 --disable-gpu --screenshot=/home/pi/node_modules/justini/img/screenshot.png --window-size=800,480 /home/pi/node_modules/justini/justini.html && gm convert -depth 1 /home/pi/node_modules/justini/img/screenshot.png /home/pi/node_modules/justini/img/screenshot.bmp && python /home/pi/node_modules/justini/python/justini.py

Screenshot of HTML page

chromium-browser --headless --virtual-time-budget=10000 --disable-gpu --screenshot --window-size=800,480 ./justini.html

Convert it to 1 bit black and white BMP file

gm convert -depth 1 screenshot.png screenshot.bmp

Waveshare python screen update

python justini.py

... need to add python and waveshare install