Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Term Project Expectations

Table of contents

  1. Term Project Expectations
    1. Project Responsibilities
    2. Project Examples
    3. Project Tips
    4. Team Member Issues

Your overall task is to create a functioning prototype of something related to pervasive computing / IoT. Note that this is about a half-term project. If you wish to start at the very beginning of the class because you want to use this as an excuse to build something really incredible feel free to chat with me when you have a thought.

Project teams can be from 1 to 3 people. Check the Introduction slides as well - you have the option of going above and beyond for other opportunities as well!


Project Responsibilities

  1. Form a project team (if desired) and decide on your project
  2. Develop a project proposal
  3. Provide updates as requested
  4. Deliver a final presentation and demonstration (last week of class)

Project Examples

Some past examples include:

  • Reaction timer game
  • Car door remote lock
  • Bop It! style game
  • Spotify controller
  • Christmas ornament
  • Home automation
  • RFID
  • Rubik’s Cube simulator/solver
  • Plant monitor
  • Bluetooth sniffer

If you’re looking for other ideas, a good search term for getting ideas is ‘maker projects’ as well as the list of projects up on Adafruit Learn.


Project Tips

  • Ensure you pick something achievable for your team. For example, if nobody has any C experience it might not make sense to write your project in C. Conversely, if there is something you really want to learn then this might be a good opportunity to do that. Just ensure that you scope your project appropriately (e.g., don’t shoot for an MMO if you’ve never written networking code before, especially on embedded devices).
  • Pick a project that you’ve always wanted to work on, but never have had time to do that. I view this project as a forced push to do something interesting. I don’t know about you, but I tend to start projects and never finish them unless I have a forced deadline.
  • Be proud of what you’ve worked on - ideally this will be part of your project portfolio that you can show off to future employers.
  • If you are using starter code, libraries, tutorials, etc., ensure that you cite your source in your project documentation.
  • DO NOT simply clone/copy someone else’s project (either from this class or the Internet) and call it your own without significant iteration. For example, you can use the Adafruit tutorials as long as you significantly extend them.

Team Member Issues

No matter how much you try, there will inevitably be friction on project teams. Interestingly enough - this carries over to industry - learning how to work together and have open discussions is a critical skill that will help you throughout your career. If you are struggling with your team and/or teammates, here are a few tips to help:

  • Communicate! Talk to each other! Even if you’re mad, upset, frustrated, express your issues. If you silently fume, shut down, or just stop participating then nothing will be solved.
  • If you are in a rough emotional state, save your message/email until you are ready to talk openly. Don’t let anger or frustration force problems to become worse.
  • Check out this Team Communication page to get some external suggestions.
  • If all else fails, email me or schedule an appointment. I will try to help mediate and work to solve your issues. If you wait until the last possible day in the semester then there is nothing I can do. If you talk to me earlier then I can help.