CMSC/MADD 23220: Inventing and Engineering Interactive Devices
(also nicknamed by previous students as "hci engineering")

News & Announcements

Final projects
Congrats on your final projects, we were proud to see the wearables you engineered in this class!

Published by Pedro Lopes on May 27 2022

Pong tournament
Congrats on your pong games!
Published by Pedro Lopes on Apr 25 2022

Class hours
Lectures happen on Mondays 2:30pm–5:20pm in CSIL 5; office hours happen on 3:00pm-5:00pm at CSIL 5.
Published by Pedro Lopes on Mar 28 2022

Welcome to the "HCI engineering" class (see your inbox for your welcome email with instructions for the first week). Questions?
Published by Pedro Lopes on Mar 28 2022


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 and Haptics.

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.

Class time and place

This class meets 2 times a week, as follows: (1): Monday at 15:30 (a 80 mins lecture) at JCL292; (2): Thursday at 15:30 (a 80 mins lecture) at JCL292;


This course was developed by Pedro Lopes. 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.


If you have a impariment of any kind please communicate it to the instructor and you will do the best to accomodate it, e.g., you will be provided with the suitable course materials.