When we started the balenaDash project, the main goal was to make it easy and straightforward to deploy IoT devices that display information on a screen. The project has been constantly developed, with new features such as automate the backlight timer, how to setup a dashboard or even displaying google slideshow being added and more to come.
Today we are releasing a new update to the project that we believe many people will enjoy. This update enables any device running balenaDash to run a photo slideshow hosted on Google Photo Albums, Dropbox Photo Album, or Apple Photos.
The main objective of this addition is to create a physical photo album that is easy to build, configure, and maintain. Once configured, there is nothing else you need to worry about. If you edit the album, add or remove photos, the album will automatically update to display the latest photos.
This can be the perfect gift for family and friends. Give a smart photo album to your parents or grandparents so that they can keep up with your baby pictures, for example.
Installation and configuration
This project is based on the official balenaDash project, you can follow the initial setup tutorial and the assembly of the official Raspberry Pi touchscreen display blog post to get started. Once you have your device up and running, it’s time to configure it to display our desired photos.
Updating a current setup
In case you have an older version of balenaDash already working, to update the software to the latest version, all you need to do is to re-download the code from the git repository to your computer and re-push it using our balena-cli tool. The best part, you don’t even need to visit the physical location of the device to update it 😊.
Setting up the photo album
On balenaCloud, add an environment variable called
GALLERY_URL and set the value to one of the photo galleries listed below. Note that once you setup the
GALLERY_URL variable, the Tohoroa script or
WPE_URL variables will then stop working. Then to revert back to the website display, simply delete the
GALLERY_URL variable and everything will go back to the way it was previously.
Google Photos Albums
To add a google photos photo album, go to https://photos.google.com and select the album you want to display on balenaDash.
Click on the share button at the top right corner of the screen and on the
Create link button and copy the URL. This URL will be the one you should enter as the value of
Dropbox Photo Albums
On the Dropbox website, go to the folder that contains the photos and click on
Share Folder and then
Copy link. This is the URL you will need to add to balenaCloud.
Apple iCloud Photo Album
Create a photo album and copy the share-url, similar to
https://www.icloud.com/sharedalbum/#ALBUM-ID. You can do this from a Mac or iOS device.
Out of the box, as soon as you add the
GALLERY_URL variable with the right URL, your device should automatically fetch all the images and start the photo slideshow. In case you want to further configure the gallery, you can add the following environment variables:
|GALLERY_URL||Gallery URL for google photos, dropbox images, or apple photos|
|GALLERY_SLIDESHOW_DELAY||Slideshow delay in milliseconds||10000|
|GALLERY_IMAGE_STYLE||Contain shows the entire image on the screen. Cover zooms the image filling the entire screen.||contain, cover||cover|
|GALLERY_EFFECT||Transition effects||fade, horizontal, vertical, kenburns, false||fade|
|CRON_SCHEDULE||Cron scheduler to reload images to get changes||0 */12 * * *|
|RESIZE_WIDTH||* Resize image width or height (larger side) in pixels||1000px|
|COMPRESS_QUALITY||* Image compression||0 – 100||90|
* Variable only available for iCloud photos.
Note that after some performance tests on the Raspberry Pi 2 & 3, the combination of
GALLERY_IMAGE_STYLE = contain and
GALLERY_EFFECT = fade or kenburns can make the transition effects choppy. We are currently waiting for the support of the Raspberry Pi 4 in which we believe all the transitions will become smoother.
Thanks for reading! If you decided to build your own balenaDash photo album, we’d love to hear how it went, similarly if you got stuck or have any questions, let us know in our forums at https://forums.balena.io, on Twitter @balena_io, on Instagram @balena_io or on Facebook.