5.3 million people in the US are living with Alzheimer's, 1 out of 9 people over 65 years of age have Alzheimer's, and 1 out of 3 seniors die with Alzheimer's or a form of Dementia. We were shocked by these statistics, and wanted to do something to help people with Alzheimer's and their families. After thinking about the best way to help people with Alzheimer's, we saw potential in using the Amazon Alexa Dot for becoming an assistive device that can help people remember things. Easy and convenient to use because of its voice command feature, the Amazon Dot was integrated into the Companion system to help people with memory problems (Alzheimer's and Dementia).
What it does
The Alzheimer's Companion system uses the Amazon Alexa Dot to get information from a database and remind people of their personal information and scheduled activities through intuitive voice commands. The Alzheimer's patient can recall the following through Alexa by saying "Alexa, ask my brain...": scheduled events, family members and their descriptions, personal information such as name, memories, and set/get the locations of different objects.
Through a website (which a family member of the patient will have access to), you can set/edit all of these categories. The family member can also monitor how often a request is made through Alexa and see the history of requests, allowing them to monitor in real time the mental state of the patient. The Companion system also connects to the Pebble watch worn by the patient, displaying the most recent Alexa request and answer, making it easier for the patient to understand where an object is located, what a memory is, etc. The pebble watch also constantly sends its location to the website. On the website this long-lat data is computed and displayed on a google map. Using the Google Maps Distance Matrix API, the distance is calculated and if it is larger than 5 miles a text is sent to the caretaker. This allows the caretaker to ensure their loved ones are safe.
How we built it
We used Amazon Web Services Lamda functions to communicate with Alexa and Alexa schema's to be able to store and access information. This information was sent and retrieved from our NoSQL database(DynamoDB) which is hosted by Amazon Web Service. The Pebble provided data on geolocation through its connection with the internet and its sensors. When the location of the user becomes too far from home, a warning message will be sent to the caretaker on Twilio (coded in python and running on a local server). This information was sent to the database. The Pebble also displays the last requested answer from Alexa with a HTTP GET request. The website uses bootstrap and lots of manipulating data arrays to display/add to the data. The database communicates with Alexa/web portal by using php.
Challenges we ran into
So much data! We have never taken up a project with this much data before. We had to create functions to display/add to every data set (there are 5 main data sets, then a couple minor ones such as location data). We had to manipulate all this data in the multiple data pages on the website. We also never programmed in C so we have to find a way to program Pebble with C. C is so confusing! This took some improvising and a lot of frustration to understand what is going on in Pebble world. We also never used the Google Maps API, so that took a while as well.
Accomplishments that we're proud of
We were able to create a fully working skill for Alexa and locally host the website. We managed to use Google Maps to display the data sent from the Pebble, as well as calculate distance and send a SMS via Twilio. All the data is also really easy to view and edit which we are very proud of. The website is very clean looking, and we are proud of how well everything syncs together.
What we learned
We learned to use C and connect the Pebble with a database. We also learned how to use the Google Maps api, how to create inputs from entered data on the website, how to quickly display a lot of data is a somewhat efficient way, and how to integrate everything in a server.
Future improvements for Alzheimer's Companion
Test it out with Alzheimer's patients and get feedback. Then improve the application and help even more people! The website is currently local with only a default login so it can be hosted and a login database can be created. There can be a on/off slider for location services so if the patient is on a trip, the alarm system can be deactivated.