We invited engineers, DIY hobbyists, and tinkerers to upcycle an obsolete item, computer, piece of electronic equipment, or appliance and make a cool new electronics project built around the Intel® Edison Kit for Arduino. element14 member Carmelito Andrade took an old clock given to him by his mother and turned it into an intelligent home device that can give him the weather, traffic, updates on his email and Twitter accounts, and much more. His outstanding Upcycled Clock was selected as the winner of the Design Challenge, and I reached out to him with some questions about the project.
Q: How did you decide on the clock as your device to upcycle? It seems like it has some sentimental value for you, was that part of your decision?
Carmelito: With analog wrist watches now moving towards smartwatches, when I first heard about the Upcycle It Design Challenge on The Ben Heck Show, and saw a boombox being upcycled, a few ideas crossed my mind. So I thought, "Why not upcycle my mom’s old clock to make it smart?" Obviously, I only did it after getting her permission.
Q: Did you run into any unexpected challenges in assembling the clock, and how did you go about solving them?
Carmelito: Ah yes, I think I ran into a lot of challenges! Here are a couple that bothered me the most:
1) Deciding on the LED strip - when I first started I had planned to use NeoPixel (WS2812), which was one of the most important parts of the build for the LED diffusion panels, but reading a couple of posts on the Intel forums and searching the web for a possible solution, I decided to buy an APA102 LED strip, which already had a library and sample code on Intel's UPM github repository.
2) I had a nozzle jam on my 3D printer multiple times, because I was printing with wood filament.
Q: You posted an introduction for the clock laying out what features you intended to add; did any of the features you ultimately wound up adding come from some inspiration you had over the course of the Design Challenge?
Carmelito: Yes, there were quite a few features that I did not plan for originally, but I thought would be good additions. For example:
1) I live in Los Angeles, California, and the traffic is pretty bad out here. I think it's in the top 10 cities in the world for the worst traffic, in fact. So, the idea I had was to implement something which would give me the estimated travel time to get to work. To achieve this, I used the Google Maps distance matrix API. But, frankly, most days I see the traffic panel light up orange (which means a medium amount of traffic), although that's better than a few weeks back when it was all red, which I am guessing was because schools had vacations.
2) For the alarm feature, to show data on the LCD, I was not planning to add the button and potentiometer originally to the panel, but after a couple of comments by Mark Beckett (username: mcb1) on my intro blog, I decided to sort this out. And while I was waiting for my package I had the button and POT panel sorted out.
3) The LED strip I added at the back of the clock was also something that was not planned. Here the idea was to show critical things on the LED strip, for example, if it's raining then have the strip light up blue. I still need to improve this feature, and a couple of my friends suggested that I should connect a mic input/sensor and use it like a VU meter when I have music playing at home.
4) I also made it possible to turn on and off the HUE lights at home from the clock. Though I rarely use this feature, the idea here is that you can turn on and off all of your Philips HUE lights at home using an IFTTT recipe.
Q: Are there any future capabilities you’d like to add to the upcycled clock?
Carmelito: Yes, there are two features in particular that I have wanted to add:
1) Make the clock speak as soon as I get back home in the evening, which I partly added in a blog post after the challenge ended. But in addition to reading the weather and tweets, I also want the clock to read out the top 5 news headlines. For this I still need to figure out if I can use an RSS feed to download those headlines.
2) Make it trigger my air conditioner when I get back in the evening if the temperature is above a certain threshold, maybe above 23C degrees, since I live in an old apartment building which has air conditioning units mounted on its walls. I need another ESP8266, which I plan to connect to a power tail switch to trigger switching on the air conditioner, and then switching it off if the temperature gets below around 20C.
Q: You seem to have drawn on a number of different skills in constructing your clock; in what discipline do you feel you most improved over the course of the challenge?
Carmelito: I would say the skill I most improved was using Autodesk Fusion 360 to design and 3D print. And I would also like to mention that I am happy with how the replacement panels on the clock turned out, and I'm glad that my mother found the clock interesting and liked the overall aesthetic when I demonstrated the features to her via video chat.
In addition, it was interesting to see most of my fellow challengers using node.js in their Design Challenge entries, and this has motivated me to learn node.js.
Check out the rest of the entries for the Upcycle It Design Challenge!