Picture of Raspberry Pi Wall Mounted Google Calendar
Recently I purchased my first home. In the kitchen there was a small TV wall mounted however the TV itself was faulty so I was wondering, what should I do with this wall bracket since I didn’t really want a TV in the kitchen area. Then it dawned on me, instead of using a paper calendar with tiny little boxes to write things in I want my Google calendar on the wall.

To tackle this instructable you should have a general understanding of home networking and computing, some linux experience wouldn’t go astray but is not really necessary. If you run into something you don't understand just remember google search is your friend.

Equipment you will need
  • Home network (wireless if you can't run a cable to the Pi)
  • Raspberry Pi (I've used the model B)
  • SD card 2GB or larger
  • AC Adaptor (I used a USB wall charger for mobile phones check here http://elinux.org/RPi_VerifiedPeripherals#Power_adapters)
  • Micro USB cable
  • USB keyboard and mouse
  • USB wireless adaptor (MAKE SURE IT IS COMPATIBLE OUT OF THE BOX http://elinux.org/RPi_USB_Wi-Fi_Adapters)
  • HDMI cable
  • Wall mountable HDMI capable monitor or any monitor with some kind of HDMI converter
  • Wall bracket for your monitor

*I will not be showing how to wall mount your monitor as the bracket was already on my wall*
1-40 of 113Next »
posborne11 year ago
Will the same thing work with iCloud calendars, or will iCloud require you to keep entering your password again any time the computer restarts?
Personally, i have my iphone calendar automatically synced up to my Google calendar so that by default any new events i make on my phone are synced there. Consider that.
Usually, iCloud does not require my password when i restart my PC.
Just mark "remember me" and you're good to go.

But, sometimes, it does require my password while i'm using it.

And i saw somewhere someone syncing iCloud with GCalendar. Can't remember where.
Piney (author)  posborne11 year ago
I don't have icloud, it should behave exactly as it does of your computer.
This would be awesome if done with a touch screen, not that it already isn't!
Agreed! It would be so much easier to add events! I wonder, how easy is it to get a touch screen to work with Raspberry Pi?
A lot of ELO's touchmonitors have open source drivers, I assume one could work them into working with the pi's ARM CPU.
Piney (author)  Muniosi1 year ago
Definitely doable but pricey and I didn't see if any screens had mounting holes.
sudo apt-get install matchbox-keyboard
You could use a touch screen adapter.
I don't know where you can buy outside my country (Brazil), but i found this: http://www.magictouch.com/addon.html

Maybe you can get the idea.
Piney (author)  downeysyndrome1 year ago
I agree a touch screen would be awesome. You can just add events with your phone, tablet or computer and they pop up on the screen after several minutes.
takasli10 days ago

I really enjoy doing this project. Thank you for clear instructions :)

I am Currently working on this project and wanted to say that on the latest version of raspbian, it will automatically detect a wifi dongle and show you a list of networks in the top right corner when you right click on the wifi symbol. Also, in the version that this tutorial was made with, there is a wifi configure application. Perhaps setting up wifi should be done before you try to fetch updates from the Internet. This is a great idea that I can't wait to finish!

oliverp223 days ago


done straight through first time, excellent guide

has anyone thought about toggling through different webpages on a loop?

maybe different tabs of IceWeasel/Chromium ?

abeveridge made it!25 days ago

I've just done this and to make the screen usage work better for Google Calendar on a really large screen (60 inches) for our office calendar, I created a user stylesheet which you can easily install with Stylish:


2015-08-08 16_46_09-Greenshot.png
brianfroelund made it!6 months ago

Great guide! Here are some of the things I did differently:

- Used chromeium which has support for command line args so that i could do:

@chromium --noerrdialogs --kiosk --homepage 'https://www.google.com/calendar/render#h%7Cmonth'

- Wrote css to make the calendar take up the entire screen. I have no mouse or keyboard connected so I don't need the controls. I use the custom view feature of google calendar to always show the this week and the 3 next.


- Bought a relay and a PIR sensor and wrote a small python script to make the monitor motion activated with a timeout of 5 minutes. Relay is not strictly necessary but I save a little standby power that way.

I still need to create a frame for it as i stripped the old casing of the monitor as it was quite ugly :)

2015-02-15 10.45.37.jpg

Hi Brian, I build it too, but I would love to get ride of the google stuff around the calendar. Unfortunately I don't know how to use your css file. I made a calendar.css file out of the code, but how to activate....

Hope you are still looking at these pages

I created a Stylish (CSS user stylesheet) my my purposes, which may help!

GarethT18 months ago

This is fab. I run a group who meets twice a week and uses google calendar to record what we're doing each week. The regular calendar view is therefore quite empty. Is there a way to list just the next few events in a large font so it's more like an airport departure board?

If you go to the mobile version of google calendar, its just a list of events and the ability to add new ones.

PwnPower1 month ago
rivery3 months ago

Sorry to post on an old instructable. This is a great idea especially with all the parts I have lying around. I just can't seem to get Iceweasel to start on boot. Tried several things but no joy. Any ideas?

PatrickW12 rivery3 months ago
Use this code at the autostart section
sudo nano /etc/xdg/lxsession/LXDE-pi/autostart
Notice the -pi
PatrickW123 months ago
I have made this wonderfully without flaws. Thanks a lot. But two questions though, is this project considered an IOT project and why. Thanks again.
noneil3 months ago

What can I do to modify this if I only have access to older computer monitors with VGA and don't want to buy the adapter?

AndersL made it!3 months ago

Done! Nice tutorial! However, with step 5b, I got some problems. When rebooting, the Pi never started the GUI (could not see the OS). I only got a blank screen with a blinking cursor. To fix this issue, I skipped step 5b, i.e. I never edited the lightdm.conf with the "xserver-command=X -s 0 –dpms". Instead, I installed xscreensaver, and rebooted:

sudo apt-get install xscreensaver

sudo reboot

Then, I opened the xscreensaver settings via the GUI (top right corner menu button > Preferences > Screensaver) and disabled the screensaver. I added some pictures to show the steps.

AndersL AndersL3 months ago

ooops... I meant the top LEFT corner menu button. Sorry. :)

DavidR278 months ago

Step 5(b) has torpedoed this project for me three times now (what's the definition of insanity, again?). Upon reboot, I get a blank screen with a flashing cursor in the upper left-hand corner. Any help would be *greatly* appreciated!

AndersL DavidR273 months ago

Same here! The Raspberry Pi starts, gives some code as it use to do (code flashing by on the screen) but instead of loading the GUI, I get a blank screen with cursor. I have tried via HDMI and via s-video and I get the same results. What kind of Pi do you have, and have you sorted it out? Mine is the old rev 2 model (i.e. not the new 1 gb version). It's the third time I'm trying this now, and I have created a backup of my SD-card where I've done all the steps except 5b. Saves some time anyway... :P I'll continue trying till I get rid of that damn blank screen with the blinking cursor!

EricC184 months ago

I have been searching for a way to get iceweasel to either pause and wait for an internet connection or continually retry to obtain an internet connection when rebooting and have been unsuccessful. Anyone know of a good way to do this?

jliberman4 months ago
I'm having a problem when I try to download ice weasel it gives me a bunch of 404 messages. I'd love some help!:)
JoeT95 months ago

This appears to be working great.

But how often does it refresh? and can i control that in iceweasel?

bobdub195 months ago
I followee the steps and everything works fine apart from the iceweasel browser does not start when the pi boots up. I have to manually open it from the desktop. Any help?
JoeT9 bobdub195 months ago

This happened to me too.

There are two places where you may have to put it into autostart.

the one listed and also

sudo nano /etc/xdg/lxsession/LXDE-pi/autostart

notice the "-pi", this fixed it for me.

cmurzanski6 months ago

How are you running the wires behind the wall for the raspberry pi? Where are you tapping for 5v dc? I'm looking to do a clean wall mount like the first picture and need some ideas on how to power everything.

Piney (author)  cmurzanski6 months ago
its actually an illusion. The monitor is powered by a kettle plug that was already in the wall. The pi was plugged into a wall socket below but I used photoshop to remove the cables :D. Now that you mention it the monitor has a lot of room in it's housing. I think I'll open it up and try to tap power from it and pit the pi in there too.
AndyPoms made it!1 year ago

Thanks for this, it was really helpful. I adapted it to display Google Analytics on a large display in our office (by simply changing the IceWeasel start page).


So, apparently IceWeasel doesn't play nice with Google Analytics... I switched to Chromium today. It was an easy change, set the start page in Chromium and instead of putting "@iceweasel" in /etc/xdg/lxsession/LXDE/autostart, put in "@chromium --kiosk" (to force full screen at startup).

how is the CPU utilization in Chromium? I am currently doing the same thing with Midori but it is constantly maxing out the CPU.

I had some time this week to work on this... I changed to the new Raspberry Pi 2 Model B & due the better processor & more RAM, the system runs much smoother & with more headroom on the resources.

I kept the CRON Job in there for the reboot, because - well, why not?

There is one big change, the LXDE settings move to /etc/xdg/lxsession/LXDE-pi/autostart

The other thing I noticed is that there is a warning on boot about cgroups (easy fix if you Google the error, but not necessary), and an intermittent error when starting LXDE (again, easy fix if you Google the error).

It was pretty high... High enough were I setup a CRON Job to reboot the system each night.

Ran into a problem where the Pi driving the system won't connect to the network (wired) - tried to re-flash the card (I took an image once it was working), tried a different physical Pi... Haven't had a lot of time to troubleshoot it (several much more important projects at work).

1-40 of 113Next »