Hi, my name is Golden, and I am a rising senior at Gateway High School in San Francisco. My final project for this program is a Smartwatch (Retrowatch) that can connect to any smartphone (Android OS only) via Bluetooth. My starter project was a MintyBoost v3.0 portable charger for any device that charges via USB connection. These two projects go well together. I can combine these two projects and charge my phone or my watch with my starter project. Overall, this program has helped me gain tons of hands on experience in the electrical and mechanical aspects of engineering as well as some experience in software engineering as well. The skills I have learned in the six week program has given me the confidence to start on my own projects at home and has given me the opportunity to get a taste of what being an engineer is like.
Below is my final video and reflection on the program. In brief, this final video displays my final project. Since my last milestone, I was able to get my watch to fully function in a 3D printed case, external battery source, and on a wristband. Watch the video for more details!
In the following Github link, you will find all the software required for the smartwatch.
List of Materials
Please refer to the following link to view the list parts of I used for this project.
Below is a simple schematic of my smartwatch, without the button of course. Click on the thumbnail to enlarge.
Smartwatch Milestone 3
In milestone three, I was able to get the notification functions of my smartwatch working. As of right now, the time I am writing this blog update, I have the WiFi, E-mail, and battery notifications working. I can also change the style of my watch to analog, digital, or a mix of the two. It seems like my watch is fully functional. All I need to do now is to resolder everything and get it to work on an external power source, like a battery.
Smartwatch Milestone 2
My first milestone was in regards to me getting the display to work with the Arduino Pro Mini. Immediately after the milestone however, I encountered several adversities that I had to eventually overcome to get to where I am today. The following couple of paragraphs serve as context as to why it took me nearly two weeks to achieve my second milestone.
I was not able to get the time to sync on the watch, and the display only showed the Adafruit logo when it was supposed to display the time as 00:00. I spent a couple of days stumped on the issue, but I got it fixed after several days of forum browsing, commenting, troubleshooting and code reviewing. The source of my problem was embedded in the hundreds of lines of my Arduino code. It turns out that my code included an input for a button (line 184) and was coded to reset when that button was pressed. I took that piece of code and modified it so that I did not need to use a button. After that, I uploaded the code to my Arduino and the watch seemed to work fine.
While I was troubleshooting those software issues, my display started to malfunction, and eventually, I had to get a replacement as it burnt out. Because I had to order a replacement display, it took me a while to release this second milestone, but it gave me more time to look over my work and check for the seemingly trivial errors that may actually cause a major problem.
In the video, I explain the four basic components of my watch, and give a brief demonstration of what I have so far.
Smartwatch Milestone 1
My final project required an Arduino Pro Mini, which is more of an advanced type of Arduino, so it was kind of difficult for me to get acquainted with it. In addition, I had several adversities throughout my second week of the program because of the board and the code. I ended up spending a day trying to configure the code and solve its errors, and almost three days trying to troubleshoot the sync error I received when I tried to upload the code. Even with my instructors’ help over those past three days, we weren’t able to figure out how to fix the sync error. We even asked other instructors from the other BlueStamp programs across the country and they said that they couldn’t figure it out as well. It was suggested to me that I should just ditch the Pro Mini and use something easier instead, but I didn’t give up and continued to try to solve the issue despite suggestions. It was on the fifth day that I had a breakthrough and finally figured out how to use the Pro Mini. I decided to take a risk and solder all of my parts together in hopes of getting it to work. I then went to my device manager and tinkered with the COM port options. Finally, I pressed reset on the Arduino right as the compiler was about to upload the code. It was one of the best feelings in the world to see the display light up and have the Arduino work after a week of frustration and anger.
In this video, I explain my frustrations and show that my display is working.
MintyBoost Portable Charger Starter Project Video
My starter project for BSE 2014 was the MintyBoost Portable Charger v3.0, which is a charger that allows me to charge virtually any device that charges through a USB cable. I chose this project because I wanted to pick something simple yet entirely new for my first project but also something practical as well. This project took me a day and a half to build and was a very informative experience overall.
In the video, I give an explanation of the components of the charger and give a demonstration to prove that it is working.