Project Partners: Sidra Manzoor and Gabriela Naumnik
We wanted to help older people quickly and easily notify their family member in case of an emergency. We were inspired by a “Grace and Frankie” episode in which both older ladies fell, could not get up and had no possibility of calling for help as their phones were in different rooms. Based on this episode, our idea was to create a bracelet with a button, which, once pressed, would trigger an email message to be sent to a family member with information that help is needed as well as the location of the person. In order to better visualise the target users, we thought of “Grandma Edith”: an old lady in her 70s who lives by herself in New York.
1st stage of development:
We started off by creating a Temboo for Gmail API. To do this, we had to verify one of ours Gmail accounts to get the verification key (which required activating Gabriela’s Polish phone number since our Chinese numbers did not work for some reason). Then, we set the title of the alert email to “HELP ALERT!” and the body to “I need help. Please, come as soon as possible.” We decided that the email is going to be sent when the button is pressed from “Grandma’s” account: firstname.lastname@example.org to Sidra’s account (“close relative”). The next step included generating the code and connecting MRK1000. Initially, we had problems connecting MKR1000. It turned out the the one we checked out was broken. Thus, we managed to obtain another MKR1000 which worked just fine. The second problem was that the working MKR100 was not connecting to the WIFI because we did not include the WIFI password in the code. Finally, after fixing that issue, we run the Temboo choreo request and it worked! The Serial monitor showed the following request:
After a minute, the HELP ALERT email showed up in Sidra’s inbox:
However, later on we encountered some problems. Our email was sent out once and we could not make it send again. So, to solve this, we decided to set up an entirely new gmail account called email@example.com. This time we went through Google’s Developer’s Console to obtain our gmail account’s client Id and Secret and run the Temboo Choreo through that process. This time, our choreo requests were successful! At this point we added in a push button to control when the help email would be sent. The following video shows that once the button is pressed, Sidra receives an email from firstname.lastname@example.org:
2nd stage of development:
This week we experimented with the Grove GPS module to get location data for the alert message. In order to see what values were given out from the module, we used example code from class. After connecting the module we received the following readings indoors:
After making sure we connected it properly, we took the module outside and we got readings!
While using the module, we had a hard time understanding the data that was given through it. In order to only get the latitude and longitude values, we used the tinyGPS++ library. Through that we were able to directly call latitude and longitude without much difficulty. After successfully getting the GPS data, we tried to get the module to work with the MKR1000. The main problem here was that the software serial did not work with the MKR1000 therefore we had to use the hardware serial which did not give us immediate feedback. Due to this, it was very difficult to keep track of the GPS data that was being recorded through the GPS module. Our work around for that was that we first connected the module to an Arduino Uno to see the GPS readings. Through this, we found that they were floats logged in as 0.00 (The value was zero since we were indoors and could not get accurate location). After knowing that it was a float, we tried to send that 0.00 as a string in an email through Temboo. However, after many failed attempts we realised that zero by itself cannot be sent through the server since it reads as a null value. To solve this problem, we wrote a string in the email body “My location is at: ” and concatenated the latitude and longitude values to a google maps url to finally be able to send the values in an email.
After getting the code to work, we soldered all the different parts onto a perfboard and powered the bracelet with a lipo battery. We then sewed a bracelet with a pocket to place the board within. Here’s what the board and bracelet looked like. We used the foam hand because why not be extra?
3rd stage of development:
This time, we started running tests on our device. At this point, we were confident that our device would work properly; however, things don’t always go as planned. Unfortunately, while getting the GPS module onto the perfboard, we accidentally damaged it. Due to which, we were no longer able to get location data. Since this was the last module we had, we could not work with GPS any longer.
However, as an alternative solution, we decided to replace the module with three push buttons, each of which would send out a different location in the email on being pressed. As our target group are older people living alone, with health problems, it makes sense to assume that they do not move much around the town during the day. They may either be at home, at friend’s home, grocery store or, for example, a park. Therefore, we linked the three locations (her home, friend’s house, and central park) to the three push buttons. We also linked the buttons to three different LED’s so that once the button is pressed, the user would get feedback from the bracelet i.e. an LED would light up.
All feedback given by other IMA friends indicated that our project is useful and indeed needed. Within a short time frame we created a wearable which works and serves its purpose of making sure that older people can get help if they find themselves in a hopeless situation alone. Even though GPS Grove broke down, we found another solution and demonstrated a developed product which can be used. We feel that we learned a lot from the process which helped us better understand how devices can be networked and how knowledge gained in the classroom can be applied to solve real world problems.