The Beginnings:

We're both super new to hackathons. And by that, I mean this is our first one. Our hacking resume boasts a web app that emails you comic strips each morning and even three (wow!) Arduino starter-guide projects. Basically, we came relatively prepared with modest coding knowledge, not many ideas, and a large desire to learn everything we possibly could.
We've got quite a rap-sheet in the hardware lab's database–we checked out a Myo, Leap, Pebble, and like a million other things. We eventually settled for the Intel Edison, because it seemed like a good combination of hardware (we liked our arduino) and software (we liked our web app).

The Plan

Our initial idea was to use the Edison to host a website, and then feed information like uptime stats and users online to a pebble app. We then realized that realtime web hosting info isn't really something anyone needs on their wrist; or, at least, not something we need.

So, the new concept was set: Explore the potential of the Edison by creating a proof-of-concept home automation system controller, with the easy ability to see and change the status of, say, your garage door (if it's open) or your deadbolt smart-lock (if it's locked). Theoretically, this could be expanded to encompass ANY smart connected appliance. Though apps exist already for individual controls, we decided it would be great to place all the controls in one simple location; on an Edison web server. You log on, and then can control whatever factors you have access to with simple switches. You as the homeowner could theoretically give the babysitter a login to control the lock or baby-cam, revoking the access once she gets fed up with your low pay and eggs your house. In addition, because the Edison has (buggy) USB Host capabilities, we installed BitTorrent Sync on the Edison, allowing one to connect to a plugged-in flash drive or external hard drive and upload or download files from any device, including a phone. And it's all from the same server! Essentially, we've created a home-base for your home.

Challenges (of which there were many)

After finally picking an idea to move forward with, we had to spend oodles of time learning how to work with the Edison, which is as powerful and useful as it is, at times, complicated and frustrating. We had just finally seemed to get into the swing of things when we (with the help of the awesome Intel guy, Wai Lun) realized the physical pins on our Edison were bad. He swapped it out for us, but it meant we had to start over from scratch. Then, at about 2:00am, when we were on another roll and really getting everything working, we encountered another bug in the hardware that left us with an unreliable system (basically it blinks a lot and crashes for no apparent reason). This was terribly frustrating to troubleshoot and work around.

We really like what we've got.

We can see a significant amount of potential for expansion, and would love to explore connecting smart-products through their APIs as well as developing more useful resources to include on the all-powerful server.

What we learned:

Actually a really surprising amount. We learned about the Myo, Oculus Rift, Leap Motion Controller, and Pebble, and that none of them are really for us at this stage. We got pretty darn deep into the Edison, and can confidently program on it in the future. We both knew the basis of object-oriented programing, but we used Python and Flask for this project, neither of which we had used before. We learned about tons of great options for our future projects, like FireBase and Mashery. We also learned the difference between an API and an SDK, which is probably a pretty good to know. Finally, we had a really fun time and enjoyed ourselves greatly, even while in a constant state of being tired and puzzled.

Share this project: