CMSC 23220: Inventing, Engineering and Understanding Interactive Devices

News & Announcements

Class 2019 over! Thank you!
More info here.
Published by Pedro Lopes on July 1 2019

Office hours + TA hours
We are open on Fridays at 3Pm-5PM at JCL 292 (starts April 12)
More info here.
Published by Pedro Lopes on April 2 2019

Class evaluation
This class is evaluated as follows: 10% (in class participation), 40% (weekly assignments, no late policy), 50% (final project).
More info here.
Published by Pedro Lopes on April 2 2019

Class website is up
Contents here are preliminary for now.
More info here.
Published by Pedro Lopes on Mar 18 2019


In this class we build I/O devices, typically wearable or haptic devices. These are user-facing hardware devices engineered to enable new ways to interact with computers. In order for you to be sucessful in building your own I/O device we will: (1) study and program 8 bit microntrollers, (2) explore different analog and digital sensors and actuators, (3) write control loops and filters, (4) explore sretchable and fabric based electronics, (5) learn how to approach invention, and (6) apply I/O devices to novel contexts such as Virtual Reality.

Expected workload

You will: solve weekly assignments (programming, soldering, circuit design, hardware design, signal processing) and one (hard) final project, in which you build your own standalone I/O device (a wearable or haptics device).


This class requires CMSC 15400 or equivalent. This class is best suited for undergraduates from 2nd year onward. It is possible to take this class as a graduate via petition.


This course was developed by Pedro Lopes. Parts of this course are derived (with permission) from a course taught by Patrick Baudisch (in which Pedro co-taught a few segments) at Hasso Plattner Institute. All teaching materials in this class, including course slides, homeworks, assignments, practice exams and quizzes, are copyrighted. Reproduction, redistribution and other rights solely belong to the instructor. In particular, it is not permissible to upload any or part of these materials to public or private websites without the instructor's explicit consent. Violating this copyright policy will be considered an academic integrity violation.


The University of Chicago has formal policies related to academic honesty and plagiarism. We abide by these standards in this course. Depending on the severity of the offense, you risk being dismissed altogether from the course. All cases will be referred to the Dean of Students office, which may impose further penalties, including suspension and expulsion. In addition, we expect that everyone handles their fellow students and staff members with respect, following the norms of proper behavior by members of the University of Chicago community.