Introduction: The Pill Reminder

About: A guy who likes to learn things. A lot of things. As fast as possible. In a jumble of activity if need be.

Back in January 2014 I was at a meetup of Baby Boomer Makers at TechShop in San Carlos, California. We were going around the table, each taking a turn to talk about projects we'd like to do. Bob spoke up to describe a problem his elderly mother was having - she couldn't remember to take her medicines on time every day. Each week Bob found that his mother had either forgotten to take her pills one day, or she had run out too soon because she had double-dosed. Both these problems are frightening. Bob is a retired electrical engineer and said to the group, "I have an idea for a device to help elderly people keep on their medicine schedule. I can make the electronics, but I don't have a way to make a case for the project."

His story really resonated with me. I've been a member of TechShop for several years and have learned to use a number of the sophisticated computer controlled fabrication machines that they have for members to use. I looked at Bob. "I can do that. If you make two sets of electronics, I'll make two cases and we can trade." Smiling at each other we started a great collaboration.

Six months and many prototypes later, the Pill Reminder was born. Bob set up his mother with one of the first units. Each week after that he checked and found that his mother was taking her pills twice a day as she should! There were no more cases of double-dosing or forgetting to take them. She was 100% compliant! It's now been two months and his mother continues to take her pills as she should. Bob and I are very pleased.

We decided early on to share our final designs with the world using one of the Creative Commons licenses. And now we want to share the Pill Reminder with the world through this Instructable.

We have detailed plans and assembly instructions and the Arduino source code available on the web at

http://www.shrimpware.com/pillreminder/

And the complete package of instructions and software is included in the last step of this Instructable.

In this Instructable I will highlight some of the build process so that you have a good idea of what needs to be done.

Let's get started!

p.s. Since we created the pill reminder I have also done an investigation of pill reminder apps for smart phones. I evaluated a number of them and came up with one that I feel is the best. You can read my analysis of the best pill reminder app. The article also explains the criteria I used to evaluate the apps.

Step 1: What Exactly Does the Pill Reminder Do?

The Pill Reminder is an Arduino controlled device to prompt a person when it is time to take their pills. The Pill Reminder has 14 pill compartments. Each compartment corresponds to one day of the week. Each day of the week has two compartments, one for morning pills and one for evening pills. Each pill compartment has an LED above it. Twice each day, morning and evening, the Pill Reminder will turn on the appropriate LED to indicate which pill compartment should be taken.

The Pill Reminder has a real time clock to keep track of the day and time.

It also has a proximity sensor. During each pill taking interval, the first time a person approaches the Pill Reminder it will cause the currently illuminated LED to blink. We hope this attracts the user's attention.

The Pill Reminder is intended to be used by someone who has trouble remembering to take their pills each day. We intend for someone else to fill the pill compartments each week. To make this easier the pill compartments are on trays that can be removed. This allows the care giver to have a second set of pill compartments that they fill up and then can quickly replace the empty ones.

Released under a Creative Commons license, you are free to make one yourself.

Step 2: Make the Case

The Pill Reminder can be made from acrylic plastic or Baltic birch plywood. In either case use 3mm material. This Instructable will use the acrylic case for discussion. The only difference with the wood version is how you glue it together (obviously).

Our documentation includes the cut files in CorelDraw and PDF format. I highly recommend using a Epilog Laser Cutter to make these precision parts. TechShop members have access to these devices. If you don't belong to TechShop you can also get the parts cut by one of the many laser cutter job shops that are springing up. (For example, www.prawndesigns.com)

The first step is to dry fit all the pieces together. If you don't do this, then you're sure to make an oops that you might not be able to correct. Note that the ends of every piece has a letter on it. Note that every slot also has a letter on it. By matching the two up you can easily assemble the case. Now take it apart again.

Use bar clamps to hold the big side pieces in place and apply a small amount of acrylic glue (solvent really). It doesn't take much! If you drip solvent where it doesn't belong DO NOT wipe it up; this just makes a mess. Your best option is to wait and let the solvent dry. Be careful to place the bar clamps away from the slots so that solvent does not get on the rubber pads of the clamps.

Once the sides dry a bit move the clamps to assemble the front and back. I found that my acrylic sheet was a little thinner than 3mm. You can see in the photo how I used tooth picks in each slot under the base to lift it up. Once the solvent dried I could remove them and the case dried to be rock solid.

You can remove the clamps and assemble the rest of the cross pieces that hold the pill trays. There are several parts to put in, but each has a letter on the end - be sure to match it with the corresponding slot or groove. The only other trick to these cross pieces is to make sure they sit all the way down against the base; push them in and hold them while you apply solvent to them.

Now locate the two slide carriers for the pill dispensers. If your carriers are made from wood, then press a pill dispenser into each until they sit as shown in the photo. If your carriers are made from acrylic, then do not press them into place; you will break the plastic carriers. Instead you must gently file the slot in each carrier until it just fits the pill dispensers. Then use a few dabs of hot glue to hold the pill carriers in place.

You can slide the two assembled pill carriers into your Pill Reminder case. They slide in from right to left. Note that one is labeled AM and one PM. They are made differently so that you cannot insert them in the wrong spot.

Finally, assemble the catches that hold the top closed. Each catch is held in place with one screw and a nut. Tighten the nut until the catch has some friction but can still be rotated. Apply a second nut to lock the first one in place. You could also put a drop of Locktite on the nuts.

The Pill Reminder case went through many iterations as I tried different design ideas. For those of you who are interested in the evolution of the case, I'm including a link to a short video I made of the design process.

Step 3: Assemble the Arduino Shield

Bob made a very cool shield to make it easy to connect all the pins from the Arduino to the Pill Reminder LEDs and other components. Our documents include the Gerber files for the printed circuit board so you can get it made anywhere. We also have all the necessary files uploaded at www.oshpark.com and you can just order your PCB from them. The documentation includes a complete parts list with a source for each item. Some of the items are much cheaper if you buy 30 instead of 5; if you team up with a couple of friends then the cost per unit is much cheaper.

You have to read the detailed step-by-step instructions to solder your Arduino shield together, but I'll point out some key tips here.

It is critical that the Arduino header pins are correctly aligned. If not, then your shield will never mount on the Arduino. I've found that best way to assure the alignment is to put the header pins through the shield and then press them into a real Arduino before soldering them in place. Turn the shield - Arduino assembly over so that the header pins are sitting on the bench top. Now carefully solder one or two pins on each header to the shield. Gently pull the shield away from the Arduino and solder the remaining header pins. You are now guaranteed that they are aligned correctly!

Getting the eight terminal blocks aligned is not necessary, but I like my PCBs to look neat. In this case I used a cheap ball point pen to hold them in a line while I soldered them. I placed a strip of masking tape to hold the PCB in place. I probably should have put a piece of tape on each end of the pen as well, but facing the other direction to give it all some tension. In the end you can see that the terminal blocks were placed pretty well.

Step 4: Add Electronics to the Case

In this step we will merge the electronics with the case. As always, more detailed instructions are found in the documentation.

Mount your Arduino in the back of the case using four screws. Then press the shield onto it - be sure the pins are all correctly aligned.

Locate the bezel and the panel mount pieces. Mount the LCD panel, the PIR, and the power LED to the panel mount piece using plastic screws. We use plastic screws to avoid any unintentional short circuits.

Now add four screws to the corner holes of the bezel and secure each with a nut.

The panel mount will slide onto the four screws of the bezel. Secure it with four nuts.

Attach the ribbon cable from the LCD panel, PIR, and power LED to the shield as detailed in the documentation. Now attach a cable from the real time clock to the shield and mount the RTC in the case.

The next step is tedious, but easy to do if you pay attention to the assembly document. Put one LED in each of the LED tray holes. Note that one LED tray is labeled AM and the other PM. Take the leftmost LED from the AM and PM trays. Twist the positive lead of one LED with the negative lead of the other LED and add one of the short pigtail wires. Solder them together. Do the same with the other two leads from these LEDs. Now do the same operation on the other six pairs of LEDs. Put a piece of shrink tubing over each connection.

Paying close attention to the instructions, connect the pigtail leads to the screw terminals on the shield.

Now lay the two LED trays in place on the case. Gently work the LED leads down into the slots in the case. When you are done secure the two LED trays with four screws.

Step 5: Load and Go

Bring up the Arduino IDE and attach a cable from the Arduino to your computer. Open the provided software and load it into the Pill Reminder. You will also have to get some specific libraries, but those are all noted in the documentation.

Taking medication at the correct times is a serious business. We cannot stress enough how important it is for you to test your project to make sure it works. You also must read through the Arduino software we have provided to make sure it is bug free and suitable for you to use. As the maker of this project you are ultimately responsible to make sure the Pill Reminder works the way you want.

We have released the project under a Creative Commons license. We would really enjoy hearing from anyone who builds this project. Since the project is open source you can make improvements.

  • Wouldn't it be great to add a WiFi module so that the Pill Reminder could email a care giver in the PIR isn't triggered twice a day?
  • It would be great to get an email if the user has not taken their pills, but how to know that? Well an accelerometer could detect that the Pill Reminder had been moved. If it hasn't been moved then we can be fairly certain that no pills have been taken.
  • Could you design a latching pill dispenser so that the dispenser popped open at the correct time?
  • Maybe someone could add a sensitive scale so that the Pill Reminder could sense that pills had been removed by the user.

There are so many ways to extend this project. We look forward to hearing what you have done to improve our project.

Microcontroller Contest

Second Prize in the
Microcontroller Contest