obscreen/README.md
2024-03-15 10:26:14 +01:00

2.5 KiB

Obscreen

About

Use a RaspberryPi to show a full-screen slideshow (Kiosk-mode)

  • Dead simple chromium webview
  • Clear GUI
  • Fleet view to manage many devices easily
  • Very few dependencies
  • JSON database files
  • Plugin system
  • No stupid pricing plan

Obscreen Screenshot

Installation

sudo apt-get update
sudo apt-get install -y git chromium-browser unclutter

git clone https://github.com/jr-k/obscreen.git 
cd obscreen && pip3 install -r requirements.txt && cp data/db/slideshow.json.dist data/db/slideshow.json && cp config.json.dist config.json

Configure

  • Server configuration is available in config.json file.
  • Application configuration is available in http://localhost:5000/settings page.

Run

Cli mode

./obscreen.py

Forever with systemctl

sudo ln -s "$(pwd)/system/obscreen.service" /etc/systemd/system/obscreen.service
sudo systemctl daemon-reload
sudo systemctl enable obscreen.service
sudo systemctl start obscreen.service

To troubleshoot you can check logs

sudo journalctl -u obscreen -f 

Usage

You are done now :)

If everything is set up correctly, the RaspberryPi shall start chromium in fullscreen directly after boot screen and after some seconds of showing the date & time (default.html) your slideshow shall start and loop endlessly.

Additional

A. Hardware checks

However, I used this one: (2,82) = 1920x1080 60Hz 1080p

B. Nginx server to serve pages (useful for gzip compression for instance)

  1. Install
sudo apt isntall -y nginx
sudo rm /etc/nginx/sites-enabled/default 2>/dev/null
sudo ln -s "$(pwd)/system/nginx-obscreen" /etc/nginx/sites-enabled
sudo systemctl reload nginx
  1. Set reverse_proxy_mode to true in settings page