My girlfriend wanted a digital calendar on the kitchen wall; I made one with a 24" monitor, a Raspberry Pi and DAKboard.

DAKboard?

DAKboard is a customizable display for photos, calendar, news, weather and so much more! DAKboard makes it easy to get organized so you won’t miss a thing.

Sounds pretty much like exactly what I needed. They have a free plan, but I went with the Essential plan at $5 per month. This gave me access to templates, increased the calendar limit from two to five, and photo changes and calendar refresh happens more often.

I would probably have been fine with the free plan, but I like the service and think it’s worth $5 per month. I went with the “Big Calendar” template, as this has pretty much everything we want and is in portrait mode.

We use it to show…

  • the current weather and 4-day forecast
  • time and date
  • photos of the kids from a Google Photos album
  • monthly rolling calendar

Parts

I used the following parts:

  • BenQ 24" monitor BL2480
  • B-Tech wall mount
  • Raspberry Pi 4 with case and power supply

I made sure to get an IPS monitor, to get good viewing angles. It also has a thin frame and is relatively stylish looking.

Raspberry Pi setup

I used the Raspberry Pi OS, the obvious choice.

We don’t need the cursor, unclutter will hide it after a few seconds of inactivity.

$ sudo apt-get install unclutter

Since my screen is in landscape orientation, I needed to rotate the display.

$ sudo vim /boot/config.txt

# Display orientation. Landscape = 0, Portrait = 1
display_rotate=1

We also want the browser to auto start, in full screen, on the DAKboard URL.

$ vim ~/.config/lxsession/LXDE-pi/autostart

@lxpanel --profile LXDE-pi
@pcmanfm --desktop --profile LXDE-pi
#@xscreensaver -no-splash
point-rpi
@chromium-browser --kiosk --noerrdialogs --disable-session-crashed-bubble --disable-infobars --check-for-update-interval=604800 --disable-pinch --app=https://your-private-url

There isn’t any need for this monitor to be on at night, or when we are at work. So let’s turn off the HDMI output when we don’t need it.

$ crontab -e

# Turn off every night
0 23 * * * vcgencmd display_power 0
0 6 * * * vcgencmd display_power 1

# Turn off on daytime weekdays
0 9 * * 1-5 vcgencmd display_power 0
0 14 * * 1-5 vcgencmd display_power 1

Mounting

The monitor I got had the VESA mount in the center, which I like. I used a cable duct for the monitor power and HDMI cables, I plan on painting the duct the same color as the wall.

The cables in the corner are pretty hidden away, but I may clean it up at some point.

The Raspberry Pi is just dangling by the HDMI cable for now, may fix that also — someday.

Resources