Linux Format

Digital wall calendar

With a little cunning, you can transform your Pi into the perfect date-checker.

-

Nate Drake is the most organised man you’ve never met, discover his secret and build your very own Pi-based digital wall calendar.

One staple in films such as BacktotheF­uture and TimeCop is that everyone has a handy digitalpla­nner panel in their living room showing their appointmen­ts for the day. While we already have calendars on our smartphone­s and tablets, but now, thanks to the Raspberry Pi, it’s possible for you to have an economic wallmounte­d calendar in your home or office too.

Given that we have just tacitly admitted we could use the calendar app on our phones instead, is this project merely a novelty, or are there any advantages to it? Well, there’s always the look of the thing. A calendar mounted on a wall can certainly be more aesthetica­lly pleasing than many mobile phone displays. Some people on the internet have gone to great lengths in this direction, such as mounting it tastefully in a wooden frame or building it into a mirror.

The main advantage, however, is that it enables you to share a calendar with other people, by putting it in a public place, such as your living room. Your family can see your own appointmen­ts, and you can make sure to schedule your commitment­s around theirs.

In the workplace, you can use calendar views, such as Agenda in Google Calendars, to organise meetings and assign tasks to your colleagues.

Crafting your calendar

For this project, you need a Raspberry Pi with internet access. In the interests of saving on cabling and space, it’s best to use the Raspberry Pi 3, which has integrated Wi-Fi.

You also need to choose a monitor. One excellent option is the Official Raspberry Pi Touchscree­n Display ( see Choosing a Monitor, over the page) but ultimately any compatible monitor will do. This isn’t a DIY tutorial, so please only attempt to mount the Pi and display if you are comfortabl­e with using a drill and installing brackets. If the display comes with a stand, there’s no reason it can’t be placed on a desk or table.

This is also a good time to start measuring cable lengths, so you can be sure both the monitor and the Pi will have power wherever they’re mounted.

Once your equipment is in order, you need to consider the type of calendar you wish to use. If you and your family or colleagues already have a calendar you share, you can start following the tutorial right away.

If that’s not the case, you may wish to create a single calendar for this purpose. If you’re using Google Calendars, follow the steps at http://bit.ly/1HKeoCL to do this. For Mac users, visit http://apple.co/2nz2w1v to create a new iCloud Calendar. Outlook users can also create a calendar by visiting http://calendar.live.com.

It’s not that important which calendar service you use, provided it can be displayed in MozillaFir­efox, which we’re using for this project. Try to give the calendar a distinctiv­e name, such as Smith Family Calendar, so everyone using it knows it’s distinct from their personal calendar.

Importing calendars

If you do have an existing calendar, you may wish to import your personal appointmen­ts, birthdays and so on into the new one. It may not be necessary, because providers such as Google and iCloud allow multiple calendars. Events are colour-coded to show which calendar they belong to.

However, if one of the people using your new calendar previously used a different platform – for example, you have

decided you’ll all use a Google Calendar and one person used an iCloud one on their iPhone – you need to import it.

To import events from an iCloud Calendar into Google, first export them into an ICS file by following the steps at http://apple.co/1I0wS0p. Then import the file by following step 2 at http://bit.ly/1mMXSIA.

To export a Microsoft Outlook Calendar to Google Calendar, follow the steps at http://bit.ly/2cI17lN.

Customisat­ion

Once you have a single, shared calendar, take some time to set it to a format with which you’re comfortabl­e. Most providers have the option of a daily, weekly or monthly view.

Next, feel free to fine-tune the calendar’s appearance. You can make changes to the iCloud Calendar – for example, to change the viewable time period – by following the instructio­ns at http://apple.co/2oeuCm2.

Google Calendar’s default look and feel is somewhat spartan. If you would like to experiment with different themes, there are a number available at http://bit.ly/ 2oeD7O6. You need the Stylish Firefox extension in order to install them. Visit https://mzl.la/1fe2Nwr, then click Add to Firefox to install this.

Full-screen ahead

As you’ll be using a much smaller screen than you’re used to, space will be at a premium, so consider installing the Real Kiosk (r-kiosk) add-on for MozillaFir­efox.

Real Kiosk does what it says on the tin: it’s designed to turn your browser into the equivalent of an internet kiosk. This means the menus, toolbars and even the right-click function are disabled. The chief advantage of this is that Firefox always opens in full-screen mode, making your calendar much easier to see. This also makes sure your device can only be used as a calendar, as people trying to view other websites are bounced back.

If you do need to close down Firefox for any reason, you can do this by connecting a keyboard, holding down the Alt key, then pressing F4.

Editing your calendars

Reading this project so far, it would seem that viewing the calendar in the web browser is passive. However, if you have a central calendar on your wall, wouldn’t it be ideal to let people add and edit appointmen­ts as well?

If you are using the official Raspberry Pi Touchscree­n Display, tapping anywhere with your finger simulates moving the mouse and left-clicking in that place. You can use this to edit the time of events and even create new ones.

Problems may arise when you want to edit the text of events or create names for new ones. Naturally, you could connect a small wireless keyboard and leave it near the wallmounte­d calendar in case data needs to be entered. A much less clumsy solution, however, would be to have the keyboard built into the browser itself. The MozillaFir­efox extension VKeyBoard is designed for kiosk browsers, and pops up when clicked to allow users to enter text.

Simply visit https://mzl.la/2njGePN inside the browser and click Add to Firefox to install. If you have already installed the r-kiosk add-on and can’t change your web page, restart Firefox in safe mode, as outlined above.

Sharing the dates

If you want to use any device besides the Raspberry Pi to add or change appointmen­ts in Google Calendar, you either need to sign into your Google or iCloud account on that device, or share your calendar with others.

To share your Google Calendar, follow the steps at http://bit.ly/2nzfqwG. You can send a link to only certain email addresses or make the calendar viewable to anyone with the link. You can do the same for iCloud Calendars by following the steps at http://apple.co/2bfWHk8.

If you use Outlook201­0, it’s also possible to publish a calendar to Outlook.com by visiting http://bit.ly/2oCrLzn

and following the section entitled Share a Calendar by Publishing it Online.

Once your calendar has been shared online, those people who wish to edit it will need to be able to access it from their own devices. For anyone with a computer, this is a simple matter of visiting the link as you would on the Raspberry Pi, by using the browser.

It’s also possible to view and edit the calendar on mobile phones. If the shared calendar is with Google, Android users can access it directly from their own calendar app, even if they have a different Google account, by following the instructio­ns at http://bit.ly/2nP8vBB. There is an official

Outlook app for Android, which allows for easy viewing and editing of Outlook calendars.

Sadly, iCloud Calendars aren’t so easy to make friends with, but there are a number of third-party apps, such as

SmoothSync, in the Google Play store, which enable you to synchronis­e between calendars. If you are an iPhone user, you’re in luck. There’s an official

GoogleCale­ndar app in the iTunes Store, with which you can sign in and view your calendars. There is also an official

MicrosoftO­utlook–EmailandCa­lendar app, which can be used to view and edit Outlook Calendars.

Calendar conundrums

If you create or change an appointmen­t and it doesn’t appear right away on everyone’s device, wait for five to ten minutes before attempting troublesho­oting, to let it percolate through the various layers of software. If the changes are visible on the wall calendar – that is, on the website – the issue is most likely to do with the device, not the Raspberry Pi.

The software and add-ons used to view the calendar are very easy to install, so the most problemati­c part of this project is likely to be when it comes to adding the monitor and fixing it to your wall.

You can make life much easier for yourself by buying a monitor specifical­ly designed for the Raspberry Pi, so you have somewhere to put the computer itself – in other words, tucked away tidly behind the screen.

If the place you want to install the wall calendar is hard to reach, you may be able to buy a longer micro USB cable, but bear in mind that the voltage drops as cable length grows. Consider using shorter cables and/or a powered USB hub.

If the Raspberry Pi crashes for any reason, Firefox will attempt to restore all open web pages once it reboots, which may mean you have to plug in a mouse or keyboard to close down any extra tabs. You can reduce the chance of this happening by starting

Firefox in safe mode, and then entering about:config in the address bar. Press Return to be taken to the settings screen for Firefox.

Once you’re there, scroll down to the setting marked “Browser.sessionsto­re.resume_from_crash” and doubleclic­k to change from True to False.

If you’re using Google Calendars, anyone who scrolls to the top of the screen will be able to switch from your calendar to your other Google Apps, such as Gmail. They can also use the search bar to view documents stored in your Google Drive.

If this concerns you, consider setting up a dedicated Google account, just for the calendar. You can still access and edit the calendar from your own account.

 ??  ?? Use the VKeyBoard plugin to type with a touchscree­n. You can maximise and minimise the keyboard by tapping on the yellow button to the left.
Use the VKeyBoard plugin to type with a touchscree­n. You can maximise and minimise the keyboard by tapping on the yellow button to the left.
 ??  ?? If you choose to subscribe to other calendars, public holidays in other countries and other useful informatio­n can be highlighte­d for you.
If you choose to subscribe to other calendars, public holidays in other countries and other useful informatio­n can be highlighte­d for you.
 ??  ?? Serving suggestion: this monitor is mounted on a wooden board, then layered with cork for a rustic feel.
Serving suggestion: this monitor is mounted on a wooden board, then layered with cork for a rustic feel.
 ??  ?? Google Calendar allows you to set up multiple calendars, which can be colourcode­d to help differenti­ate between them.
Google Calendar allows you to set up multiple calendars, which can be colourcode­d to help differenti­ate between them.
 ??  ?? The rear view of the Raspberry Pi Touchscree­n Display, where the Pi can be neatly housed. The stand is optional.
The rear view of the Raspberry Pi Touchscree­n Display, where the Pi can be neatly housed. The stand is optional.

Newspapers in English

Newspapers from Australia