Raspberry Pi Kiosk
A WEB KIOSK OPERATING SYSTEM FOR YOUR RASPBERRY PI
Binary Emotions provides an operating system designed for kiosk installations on the Raspberry Pi: it displays a full-screen browser view restricted to a specified resource, showing web resources from Internet, local network or local folders.
For example, you can display your own advertising site, electronic signs, booking site, queue or timetable management web application or create superb web presentations with Google Slides (Powerpoint compatible) or similar software.
The proper name for such a system is a “digital signage” system, this is why it’s named after: this page is for search engines purposes.
On the other hand, a proper (web) “kiosk” system is suitable for usage in kiosks and multi-user web workstations environments (cafès, offices, schools, hotels, hospitals, libraries), where people can freely surf the web, so the address bar is visible. The behaviour is accomplished by the Web Kiosk “plugin”.
Raspberry Digital Signage 21.0 released
Raspberry Digital Signage 21.0 released
Raspberry Digital Signage is an operating system designed for digital signage installations on the Raspberry Pi: it displays a full-screen browser view restricted to a specified resource. It shows web resources from Internet, local network or local folders (so you can use the Pi itself as the source webserver).
Raspberry Digital Signage comes with the latest Chromium builds (featuring HTML5 capabilities), so you can display more attractive resources, more easily.
System has been updated to the latest Raspberry Pi OS Lite – this contains important security fixes. Chromium 130 and latest rpi-chromium-mods packages are amongst the others.
Download here the release build.
For donors: you should own already the link where to download the donors’ build from; otherwise, just drop me an email.
Signage Orchestrator
SIGNAGE ORCHESTRATOR
Signage Orchestrator is a centralized web interface you can use to schedule Raspberry Digital Signage and Raspberry Slideshow players to display URLs/slide media in a calendar-based timetable.
More information, installation and howto available on GitHub.
Sources
Project is GPL v3 licensed, feel free to contribute.
If interested, please email me for personalized developments.
Raspberry Pi 5 Digital Signage
DIGITAL SIGNAGE FOR RASPBERRY PI 5
Raspberry Digital Signage is an operating system designed for digital signage on the Raspberry Pi 5. A full-screen browser view displays your web resources from Internet, LAN or local folders (a WordPress plugin is also available). For example, you can display your own advertising site, electronic signs, booking site, queue or timetable management web application or create superb web presentations with Google Slides (Powerpoint compatible) or similar software.
A couple of nice ideas…
Read more on the project home page.
Raspberry Digital Signage 19.0 has been released
Raspberry Digital Signage 19.0 released
Raspberry Digital Signage is an operating system designed for digital signage installations on the Raspberry Pi: it displays a full-screen browser view restricted to a specified resource. It shows web resources from Internet, local network or local folders (so you can use the Pi itself as the source webserver).
Raspberry Digital Signage comes with the latest Chromium builds (featuring HTML5 capabilities), so you can display more attractive resources, more easily.
Changelog for v.19.0: the underlying base system has been updated to the latest Raspberry Pi OS Lite, v.11, Bullseye with Chromium 113.
Enjoy! 🙂
A Magic Mirror for Raspberry Pi (MagicMirror²)
A Magic Mirror for Raspberry Pi
MagicMirror² is an open source modular smart mirror platform. With a growing list of installable modules, the MagicMirror² allows you to convert your hallway or bathroom mirror into your personal assistant. MagicMirror² is the winner in the official Raspberry Pi magazine’s 50th issue celebration feature voted by the Raspberry Pi community.
This plugin installs in a few steps the MagicMirror² project on top of Raspberry Digital Signage. Code is built by the creator of the original MagicMirror with the incredible help of a growing community of contributors.
Quite cool actually.
See the plugin page for more.
Raspberry Digital Signage 18 released
Raspberry Digital Signage 18.0 released
Raspberry Digital Signage is an operating system designed for digital signage installations on the Raspberry Pi: it displays a full-screen browser view restricted to a specified resource. It shows web resources from Internet, local network or local folders (so you can use the Pi itself as the source webserver).
Raspberry Digital Signage comes with the latest Chromium builds (featuring HTML5 capabilities), so you can display more attractive resources, more easily.
Changelog for v.18.0 follows:
- Chromium settings persistence logic more intuitive;
- underlying base system has been updated to the latest Raspberry Pi OS Lite, v.11, Bullseye. Chromium 98 and rpi-chromium-mods 20220111 packages are amongst the others.
Download here.
Raspberry Slideshow 15.0 has been released
Raspberry Slideshow is an operating system for the Raspberry Pi microcomputer lineup used for digital signage when you need images’ or videos’ slideshows.
It plays all media contained in a USB key, fetched from a network share, from a webserver, from a folder of your Dropbox account and loaded via scp as well.
The operating system can refresh the media list in order to slide images and videos according to any remote change (addition or deletion of a media file). An optional photos’ rotation based on embedded EXIF informations is available.
Version 15.0 changelog (maintenance release)
- Dropbox feature restored (it was broken since Dropbox changed their API – again);
- system has been updated to the latest Raspberry Pi OS Lite (formerly known as Raspbian Lite).
You can download the operating system and have a look at its manual in the download page.
Raspberry Digital Signage 17.0 released
Raspberry Digital Signage 17.0 released
Raspberry Digital Signage is an operating system designed for digital signage installations on the Raspberry Pi: it displays a full-screen browser view restricted to a specified resource. It shows web resources from Internet, local network or local folders (so you can use the Pi itself as the source webserver).
Raspberry Digital Signage comes with the latest Chromium builds (featuring HTML5 capabilities), so you can display more attractive resources, more easily.
Changelog for v.17.0 follows:
- Chromium settings persistence logic changed: browser is kept back to default settings or last-persisted settings only when user asks for and not upon every reboot (maybe a more balanced behavior in regard to security vs. user experience);
- settable DPI feature returns to work (the feature has been removed in the latest builds for some issues of the underlying OS);
- a new, better, virtual keyboard extension has been installed by default (just remove it if unneeded);
- lowercase URLs issue fixed;
- system has been updated to the latest Raspberry Pi OS Lite – this contains important security fixes. Chromium 92 and rpi-chromium-mods 20210212 packages are amongst the others.
In memory of my father Giovanni.
Download here.
Raspberry Digital Signage FAQ
RASPBERRY DIGITAL SIGNAGE
About | Download | Donation | Docs | FAQ | Changelog | Plugins | Signage Orchestrator
UPDATE THE UDERLYING RASPBERRY PI OS OPERATING SYSTEM
In order to udpate the Raspberry Pi OS (formerly Raspian), login via SSH as root, then:
apt update
apt upgrade
Please note that it may happen that a system update brakes the digital signage stack.
WTF IS THAT LIGHTING BOLT NEAR THE TOP-RIGHT CORNER?
If a lighting bolt is displayed near the top-right corner of the screen, your Raspberry Pi is complaining about the power supply, which probably is not powerful enough.
HOW TO EXPAND THE FILESYSTEM SPACE [see for AW SNAP CHROME ERROR]
How can I expand the Raspberry Digital Signage filesystem space in order to fill the whole SD card/USB key space?
This also can prevent the Aw Snap error on Chrome in the cases where system logs become too big.
Just install and use raspi-config:
login as rds-user via SSH, then sudo -i;
apt update
apt install raspi-config
raspi-config
follow the easy instructions.
MODIFY THE SPLASH SCREEN
For this, please have a look at Raspbian Plymouth.
CHANGE THE SYSTEM HOSTNAME
Default hostname for the operating system is rds.
You can change it by modifying the /etc/hostname and /etc/hosts files.
cd /rds/home/rds-user/
tar -xf chromium-default-settings.tar
rm chromium/Singleton*
tar -cf chromium-default-settings.tar chromium/
rm -R chromium
chown rds-user:rds-user chromium-default-settings.tar
Thanks to Stepan Kocourek.
CHANGE TIME ZONE
login as rds-user via SSH, then sudo -i;
dpkg-reconfigure tzdata
PLAY CONTENT FROM THE INTERNAL SD CARD/USB key: DIY SITE INSTALLATION
Raspberry Digital Signage admin interface allows you to type in the URL of the web resource to be displayed; it can be an Internet one (https://www.binaryemotions.com), a LAN URL (http://192.168.1.100/booking; http://booking.lan), or even a resource located internally, inside the Raspberry Pi’s filesystem.
To simplify the management of the internal site setup, the WordPress plugin adds a WordPress installation to the system (/rds/var/www/wordpress) – see the plugins page for more.
If you however want to add your own site (and/or don’t use the WordPress installation), just copy your website files with scp to /rds/var/www/mySite (create the folder, first), then change the ownership:
and set the URL: http://127.0.0.1/mySite in the admin interface.
Also, you need to allow your www folder to be reached without authentication: add the following to /etc/apache2/sites-enabled/rds.conf:
and restart apache:
systemctl restart apache2
This way you can natively serve plain HTML and PHP files.
Disable network check
Upon boot, the system checks for the availability of the network, in order to display the proper admin interface if no network is available. However, with an internal site installation, the network check could be undesired: in case, modify /rds/home/rds-user/.rds-xinitrc as:
connectionCheck() {
return 0
}
Note: how to use scp
1. [on the Pi’s shell] Enable the SSH login via root directly: change the password for the root user while SSH’d in as rds-user (sudo passwd root), then modify /etc/ssh/sshd_config with PermitRootLogin yes (sudo mc -e /etc/ssh/sshd_config). Finally restart ssh (sudo systemctl restart ssh).
2. [on your host system] Copy your files: scp /path/to/my/local/files/* root@RASPBERRY_IP:/path/to/destination/
While for *nix users this is trivial, for Windows users this step could be a pain, without the right tools: use mobaxterm or similar.
FALLBACK RESOURCE IN THE CASE OF NO-NETWORK
In the case where Raspberry Digital Signage is loading content from the network and the network goes down, in which way can I display a fallback resource in the meanwhile network goes up again?
Usually web pages built for signaging contain a Javascript code which continues checking for network availablity (once loaded). In the case the network goes down, the Javascript code should redirect the internal browser to a locally hosted resource (/rds/var/www). The local resource will do the same job, inverted.
Also, have a look at this page.
HOW TO INSTALL A SCREENSAVER
Install xscreensaver with apt as root, configure it and launch it from /rds/home/rds-user/.rds-xinitrc, before the main cycle.
SYSTEM SCREEN ROTATION
You can set the screen orientation via Raspberry Digital Signage GUI, and this is fine. However, the system boot process runs always in “landscape mode”.
To obtain a “full system rotation”, modify the /boot/cmdline.txt file and add the following directives for 90 rotation at the end of the line:
video=HDMI-A-0:1920x1080M@60,rotate=90 video=HDMI-A-1:1920x1080M@60,rotate=90
So, complete kernel parameters line would be something like:
console=serial0,115200 console=tty1 root=PARTUUID=ae1f6d64-02 rootfstype=ext4 fsck.repair=yes rootwait splash quiet plymouth.ignore-serial-consoles logo.nologo vt.global_cursor_default=0 video=HDMI-A-0:1920x1080M@60,rotate=90 video=HDMI-A-1:1920x1080M@60,rotate=90
Change resolution and rotation according to your needs. Resolution should be the same you see/set in the Raspberry Digital Signage GUI and it must be always specified… and so the rotation 😉
Modify the file via SSH or mount the SD-CARD into a running operating system and modify the file with a text editor.
IS A DUAL OUTPUT POSSIBLE (HDMI0 AND HDMI1)?
No 🙂