From 1999 to 2008, the number of accidental overdoses that have lead to death quadrupled, and drug abusers can easily access prescription painkillers through friends or relatives with legitimate prescriptions. Since prescription drugs are inherently very addictive substances, self-dosing can be very dangerous and can lead to addiction or even death. The Pill Popper was made to automate the at-home drug consumption process to reduce the risk of accidental overdose and unauthorized access to prescription drugs.


Pill Popper is an automated pill dispenser with biometric access control. It verifies a patient’s fingerprint and dispenses medication based on a prescribed schedule, set by an authorized pharmacist or physician.

Use Cases

The Pill Popper system was made to prevent accidental overdoses. It also ensures that only the patient who is prescribed the drugs are able to take them, not just anyone with access to a traditional bottle.One such use case would be a patient with a opiate prescription who may be at risk of addiction. The Pill Popper system maintains a regular dosage schedule and prevents any accidental self-dosage errors, a major contributor to addiction. It also prevents any of the patient’s family or friends from taking their medication.

Requirements and Technical Specifications

  • Safe and Compact

    A core physical component of our project is having a container capable of loading, storing, and dispensing pills. This container must be compact and easy to use since the target customers are either the elderly or those possibly suffering from an illness. We have also implemented access control, to prevent the user from having access to excess medication, while allowing only physicians / pharmacists to load and schedule dosages.

  • Durable and Airtight

    With the goal of the project in mind, the device must be durable and protected against physical breakage. Since the device is going to be storing medication, it must also be safe for storing medication for extended periods of time, similar to the cases used for storing the medication without the automated dispensing facility.

  • Physician Access Control

    In order to achieve preventing access to the user to take more than the prescribed medication, we aim to have an access control mechanism that allows only authorized individuals / organizations to load the container with the right pills, and set the schedule. This feature should be easily accessible via a user app that can identify the device easily, and will only be usable by authorized entities, thereby preventing misuse.

  • User Access Control

    Our device also secures the medication from individuals other than the user of the medication. For this, we use biometric access control, which can also be setup using a user app. This app will allow the user to add their biometric markers to the device to restrict access.

  • Physician Settings and Alerts

    Only the physician will be able to set the prescription schedule for the medication on the device. This will be through the same user app as the user. One of the possible extensions to our project is to alert physicians in case medication is missed by the user or if the secure container has been breached.

  • User Reminders

    The user will be reminded on their phones (paired with the device) when it is time for their medication. The device will also keep track of when the medication is nearing exhaustion, and alert the user to refill.


Interactive Diagram



Our primary motivation when choosing a microcontroller was support for BLE (and possibly Wifi) and other standard communication protocols and an easily accessible development environment. For these reasons, we chose the Raspberry Pi Zero since it comes built in with BLE and 802.11n Wireless Support.

Fingerprint sensor

A key component of our product is the authentication step that verifies that the person who is withdrawing the medication is the person for whom it is intended for.
This prevents people from developing an addiction to medication that they should not be taking, as it does not allow them to even use it in the first place.
To do this, we will use a ZFM-20 fingerprint sensor for biometric sensing. When adding a user to the device, the sensor will be used to collect information about the user’s fingerprint and store it within itself.
Similarly, after the device has been configured, when the user goes to withdraw their medication, they will use the sensor to authenticate themselves, and the sensor will collect information about the fingerprint and send information to the processor via UART about the results of authentication.

Bolting Solenoid

In order to control access to the pills to prevent overdose, we will be using a solenoid that actuates a bolt to act as a locking mechanism. In choosing the solenoid, there is a tradeoff between how strongly the solenoid bolts and the amount of power it consumes. Since we are aiming to create a portable device, we will be operating this solenoid with a battery. The solenoid we chose is at this link.
It has a slug that is normally active i.e. the solenoid is locked when unpowered and when powered, the slug is pulled back allowing the door to be opened, making it ideal for this case, since the door is locked most of the time. For safe operation, we will also use an S1GFSCT-ND diode along with a power transistor (FQP30N06L-ND). This solenoid can be operated at 9V - 12V DC which makes it ideal to be powered with a battery.


This sensor is present in order to test if a pill has been dispensed successfully by our system. It will also help us test is the user has taken the pill according to schedule, and prevent dispensing more pills if the user has not taken their previously scheduled medication. The pill will block light from an LED, which will change the value read by the photocell, allowing us to detect if a pill is present in the dispensing area.

Servo Motor

he physical pill dispensing mechanism, one of the most important parts of our system, requires a servo motor. We required a motor that was strong enough to twist a loaded dispensing plate, without using a lot of power. The FS90R Microservo was suitable for this purpose. motor


The dispensing mechanism will only work when the entire device is upright, so we need an accelerometer to determine the orientation of the device. This will ensure that the dispensing mechanism will only work when it is upright. The requirements for the accelerometer was that it is small, low power, and able to sense orientation, so we chose the 3-Axis MEMS Accelerometer (MMA8452Q), which we interface with over I2C.

Analog to Digital Converter

Since the Raspberry Pi Zero does not have an onboard analog to digital converter(ADC), we must use an external one to be able to read the analog values output by the photocell. We are using the dual-channel MCP3002 ADC for this, which we interface with over SPI.


There are several other automated pill dispensers out there

GMS Med-e-lert Automatic Pill Dispenser

Each day’s pills must be loaded manually, and there is no biometric access control


There is no automatic dispensing or access control

Philips Automated Medication Dispensing Service

No access control, and not very portable

However, these dispensers are geared towards the elderly, to remind patients to take their medication. Our product is geared towards a more secure storage and delivery system for prescription medication. We will have built in biometric access control, which alternatives either do not provide or provide at high cost.

Device parts

User Application

Pharmacist Application


The following video shows how a client would interact with the PillPopper to get their medication.

The following video shows how a pharmacist would interact with the PillPopper to load a patient's medication.


Aishwarya Prem Renu

Systems software guru

Ashwin Raghavachari

Onsite hardware support

Isaac Manjarres

Lead manufacturer

Karthic Annamalai

Principal iOS developer