Final Project


Over the course of this class, you’ve learned a lot of new skills and design principles around ubiquious computing and the Internet of Things. The final project is intended for you to show everything you’ve learned in the class. You will propose and build an Internet-connected object that solves a real-world problem of your choosing.


Your goal is to build an Internet-connected device or ubiquitous computing system of some description that solves a real-world problem. We’ve looked at a lot of different things in this class so far, and under Resources I’ve listed some more for inspiration.


This is a group project again. You can work in the same groups of two as you did for GP1 or switch it up, but no groups larger than two will be allowed.

What to do

Here’s what to do and how much of the total score for this assignment each item will be worth (note the various due dates in the right-hand sidebar):

  • Pre-proposal (no grade): Talk to me in person or over Slack and discuss what you want to do.
  • Proposal (20%): Your proposal should be 2–3 pages long.
    • Define and describe your problem. What kind of problem do you want to solve? Keep it simple and solvable; rather than “solve world hunger,” you might try “sandwich making robot.” It should involve an Internet-connected device.
    • Do a literature search in the HCI conferences (CHI, UIST, Ubicomp, ISWC, and so on) and summarize how other people have approached this or similar problems. Also look at various IoT objects at and other places.
    • Describe your proposed solution.
    • Outline the steps you will take to implement your solution.
    • Note the formatting requirements under Deliverables.
  • Project (40%): Implement your solution. It must:
    • Be an Internet-connected device;
    • solve an interesting, useful, relevant, or fun problem;
    • be unrelated to your previous projects;
    • be well-grounded in the theory and literature we’ve discussed in class;
    • and it should work.
  • Demo (10%): Demo your working project in class.
  • Video (10%): Produce an approximately 1-minute video illustrating your project.
  • Final report (20%): Your final report should be an extension of your proposal. It should add any extra literature you have found along the way in addition to fully describing your approach, implementation, successes and failures. It should be roughly in the format of a short conference paper, containing the usual sections such as “Abstract,” “Introduction,” “Related Work,” a description of your system, and “Conclusions.” It should include images of your project.


Your proposal and final report should be in the SIGCHI Extended Abstracts Format, in PDF, uploaded to your Github repository. Include a Readme with a brief description of your project, and links to the PDF and video. The video should be hosted on either YouTube or Vimeo.


Here are some ideas if you are stuck or want inspiration:

  • Make the invisible visible: show some sort of invisible process or behavior in such a way that it’s visible and comprehendible to an average user.
  • Build some kind of interactive seating.
  • Augment a hand tool to assist the user.
  • Improve interaction with 3D printing or laser cutting.
  • Make a musical instrument somehow played in collaboration with the Internet.
  • Build a system to generate physical visualizations of online data streams. Make it output holiday ornaments.


Here are some interesting papers from the Ubicomp‘15 conference. I don’t expect your projectst to be anywhere near this comprehensive, but they give a flavor of interesting Ubicomp research.