A couple months ago my grandmother of 84 got a stroke. This changed her life forever, from walking five kilometers a day with her dog to being in bed and a wheelchair for the rest of her life. Since then we are trying to make her life as comfortable as possible, which seems to be working in some ways. On daily bases a lot of (older) people end up in nursing homes, where I think some basic tools could improve their life. So does the Raspberry Pi in this case.

My mom approached me a while ago to look for a so-called “Alzheimer clock”, a clock (starting at €150,-) that has large letters and display the day of the week, date and time. Because of the short-term memory that doesn’t function well at all times, she preferred to know what time she is living in. I am not a big fan of showing the time, since it could make her look at the time continuously when she’s alone. Watching television is often not an option, since most channels send out a lot of signals and that makes her dizzy. But every room in the nursing room facilitates a television, mounted on the wall across the bed. So instead of buying an expensive clock, why wouldn’t you use the available TV and an (old) Raspberry Pi to inform her about the time. Another benefit is that the television screen is a reasonable size (32”), where large letters can be displayed on. Not only for people suffered from a stroke, but also alzheimer, dementia and other people with short-memory problems could possibly benefit.

So I decided to do a small, personal hackathon and see if I could make this work. Please keep in mind that I’m not a pro-developer, so I’m pretty sure there could be more efficient ways to set this up. But it’s working for her now and will improve it over time, where needed. Followed will be a basic description of the tools I used to make this work.

After I came back from the nursing home, I got all excited to make this thing work. I grabbed my old Raspberry Pi 2 model B, a 8GB MicroSD and installed a fresh install of Raspbian Jessie Lite. The main idea was to setup a HTML page with a basic design, featuring the day of the week, part of the day (morning, afternoon, etc), date and optionally the time. I’d set the Raspberry Pi up as a kiosk, hooking up with wifi to sync the time (and more) and implant some failsafe procedures in case of power outage and a schedule to turn off the screen.

Before I started configuring the Raspberry Pi, it was time to set up a basic webpage that would work offline and online, with white letters on a black background and basic and large letters design.

It took me about an hour or two to figure out how to make this simple website working. I’ve never really worked with Javascript before in this way, so especially figuring out the “Morning”, “Afternoon”, “Evening” and “Night” was tricky for me. I split the website up in three files, klok.html, main.css and date.js . You can preview the current version of the website on http://joshuan.nl/klok.html and view the source at https://github.com/JosLazet/alzheimer-clock . Please note that I used Dutch terms, making my grandma’s life easier. Feel free to fork it and translate it!

Done! I have to admit that I was already a tiny bit proud that the little project was already going to look like something. Now it was time to configure the Raspberry Pi and live up the clock!

I hooked up the Raspberry Pi to the TV through HDMI and connected the ethernet. Later I found a Humax WLAN adapter that I could make work, since I figured that internet was needed if the power went out and the time would be reset. Because of course, there is no ethernet connection available in a nursing home. After basic configuration as static IP and timezone, it was time to get the kiosk mode working. The Raspberry would need to boot fully autonomous, including not scaring grandma with the startup proces lines, logging into user “pi”, booting up Chromium in kiosk mode (hiding menu bar, url field etc) and opening up the local-saved webpage. This seemed easier said than done, but it worked in the end. I actually did another fresh install when I got it working, to get rid of all the unnecessary tools installed.

So, since I was running Raspbian Jessie Lite, I needed a desktop screen instead of command lines only. For this I installed LXDE, which seemed to do the job. In the LXDE configuration file you can disable the screensaver, sleeping of the screen, prevent any error messages and of course open up Chromium on the webpage in kiosk mode. I’ve tried to make it work with other (more lightweight) browsers, but none seemed to function as easy as Chromium.

After doing all this, finding some small workarounds for minor problems, the Raspberry Pi was functioning well! The next day I implanted an optional tool, to turn off the display between set hours. Over time I will try to figure out which options work the best, such as displaying time or not and the times to have the display on or off.

I’m really glad I got this to work with a Raspberry Pi I wasn’t using anymore and make grandma happy with it. Please let me know if you got any comments or tips, I’d love to hear them!