I was originally aiming to find an easy method to help a family member to track her daily dosage of prescribed medication as she sometimes forgets to take her medicines. Alarm clocks, digital pillboxes, app based reminders, and voice assistance devices are main solutions based on my research but they introduce some issues or they don't provide a complete solution.

Available solutions

A simple alarm clock cannot be very useful if you are taking multiple medicine and there is no way to get a reminder about the refill time.

The digital pillboxes provide feedback through alarm clock to the patients but they don’t offer an automated method to track pills individually in case of multiple medicines with audio feedback and again there is no way to get a reminder about the refill time.

The current app based medicine reminders and trackers require the patients to go through a complicated process and many patients are not able to use them due to their mental or physical state. It would also require the patient to have a mobile device around all the time which may not be the best specifically during night.

Voice assistance devices are expensive and again many patients are not able to use them due to their mental or physical state. They also can’t track the medicine usage of patients.

It is very important for many patients to keep their medical information private and they will avoid entering their medical information into a third-party smartphone application.

Proposed solution

The goal of this project is to create a simple, secure and affordable tool to remind patients to take their medicines and track their daily dosage of medicines to remind them about the refill time. A single button/switch interface provide intuitive solution that can be used by most patients in different mental or physical states.


The main hardware components of the system consists of an Amazon dash button, a Raspberry Pi Zero W, a raspberry pi camera module, and a speaker.

How it works?

The Raspberry Pi and a node.js server running in raspberry pi will be used to store all the medicine information such as daily dosages, time to take pills, and time to refill the pills based on pills left. The required medical data are stored in a mongoDB database running in the Raspberry pi.

A web application is used to enter and edit the medicine information of the patient which can be accessed from any computer or smartphone in private home network. The patient medicine data are entered or edited by a friend or family member and data are kept locally due to privacy and protection of patient ‘s medical history.

An alternative smartphone application installed in patient’s smartphone can be used by a pharmacist to enter the medicine information. The medicine information is stored in the application and synced with the main system once the patient’s smartphone connects to the private home network through Wi-Fi.

Once it’s time for the patient to take his/her medicines according to data stored, the system reminds the patient with an alarm sound or previously selected music through an USB speaker that it is time to take the necessary medicine.

An Amazon dash button is then used to provide the patient an input method to approve she/he has received the reminder through speaker.

The system will then use a raspberry pi camera module to track movement in pillbox/Square-Shaped Pill organizer and the labels on each of compartments using an image processing algorithm in python.

The raspberry pi camera should have a good view of the pillbox in order to work successfully.3D printing a raspberry pi zero case with a camera module mount/holder and a place to hold the pillbox can be the ideal mounting solution.A tripod or raspberry pi camera mount can be used as an alternative solution.

The system will send another reminder if the camera has not tracked any movement or the patient has not used dash button in 5 minutes. The reminder time can be changed in settings of web application.

The system...

Read more »