This course aims to empower students to creatively design, develop and evaluate new experimental interaction devices by combining various sensors and microcontrollers, without requiring extensive prior knowledge in computer science or electrical engineering. The course provides students handson experiences of interface design and development, including basics of sensor technologies for interaction devices, fundamental implementation skills for interface hardware and software, and user experience evaluation methodologies. Throughout the class, students will learn how to realize their imagination of novel interaction devices and evaluate their usability.
One huge challenge for the course is to reduce the effort of technologynovice students in learning hardware wiring and software implementation skills, while keeping good quality of project outcomes and takeaways (i.e., endtoend experience for interface design, development and evaluation) from the course. To cope with this challenge, the course focuses on the essentials of interface device itself; it does not require students to fully implement a whole stack of interactive applications, but help them (1) choose existing target applications such as PC or Mac programs, (2) easily combine hardware and software components to make their prototype device, and (3) test it by replacing typical interface devices such as keyboards and mice with the prototype.
The composition of hardware and software is the key technologyenhanced aspect of the course. Specifically, the course employs Arduino Leonardo microcontroller board and Grove sensor platform that enable rapid and convenient hardware implementation, as well as use of existing PC applications to test interface prototypes. Also, a graphical programming toolkit Ardublock helps programmingnovice students write their own software codes for interface devices without syntax and compile errors that are two major hurdles for beginners.
The performance of students in the course is assessed in three major categories; lab exercise challenges, online/offline discussions, and team projects. For each week the students are given a lab instruction and complete several challenges offered by the instruction. There are online weekly discussion topics for interface design and user experiences, where students post their discussions and replies on D2L, followed by in person discussion in class hours. For team projects, students form teams of two and work on team projects throughout the semester, that consist of initial plan, blueprint, early prototype, evaluation plan, and final term project report with a project showcase. Also, a marginal amount of extra credits is available for students who participate in instructor approved hackerthons such as SpartaHack, and student research forums such as UURAF.
Technologies included in this course:
- Arduino Leonardo (https://www.arduino.cc/en/Main/ArduinoBoardLeonardo)
- Grove Platform, Seeed Studio, Inc. (http://www.seeed.cc/grove/)
- Ardublock Graphical Programming Environment (http://blog.ardublock.com/)