We were inspired to make a smart pill dispenser due to having relatives that could really use to be reminded to take their medication and monitored accordingly. This led to discussions on how pill boxes are a pain to load every week and merged with some absolutely terrible Nickleback lyrics to blossom into the awesome build idea that is Smart Dose.
What it does
Smart Dose at its most basic is an easier way to take your medicine on a schedule, without manually loading a pillbox.
Conventional smart medicine dispensers either require preloading by the user, or are giant bulky countertop units that you can't travel with. We're trying to bridge that gap with a "simple" PEZ dispenser style design. This won't work for all medications, but provides a clean solution for hard pills.
Smart Dose enables healthcare providers to control the schedule around addictive or controlled medication.
Smart Dose provides an interface to healthcare providers to choose when a device dispenses. This is incredibly helpful for patients on judgement impairing substances
Smart Dose provides more independence for the elderly, while giving peace of mind to those who care for them.
Smart Dose's internet connectivity can be used to track pill dispenses over time, and optionally alert via the webapp if a user has stopped taking their medication. This automates a roll of traditional senior caregivers monitoring patients who might forget their medicine or dosage and provides functionality that a traditional loaded pill dispenser does not.
How we built it
Smart Dose Consists of a custom PCB with drivers for individual solenoids to operate Pez style dispensers and open a door locking solenoid. We started by gathering features and requirements around sensors. From here we mapped pins on the microcontroller, determined power requirements, developed a CLI, developed boost and buck circuits for the power we needed, designed the PCB, wrote a custom bootloader and OTAFU implementation, and then used node red and MQTT to give it a web app dashboard for control.
Our final sprint wound up rewriting a lot of the application itself as well as the overall node red flow to get basic functionality working in time for submission.