Introduction to Physical Computing (60-223) is a 10-credit semester project-based course offered at Carnegie Mellon University by IDeATe.

Kinetic Art Sculpture by Team Avodah (a final project from fall 2021)

Professor: Robert Zacharias, (subtract the cation)

Teaching Assistant: Eric Zhao, (subtract the cation)

Class meetings

  • Mondays and Wednesdays, 10:10am–noon, room A10 in Hunt Library (IDeATe’s Physical Computing Lab)
  • N.b.: The first three class meetings this semester will be conducted remotely via Zoom; see the course’s Canvas page for the meeting link, or write the professor for the link if you’re interested in joining but don’t have Canvas access

Lab hours

  • noon–1pm, Mondays and Wednesdays
  • and liberally available outside of these times (please email for an appointment)

Course synopsis

The first half of this practical project-based course is spent covering the basic technical skills (including electronics, programming, and hardware) needed to build simple interactive objects with embedded behavior using the Arduino microcontroller. Inputs to read information about the world include sensors such as an ultrasonic ranger, thermometer, light sensor, and human inputs like buttons and knobs. Outputs to affect the world include actuators such as motors, LED lights, speakers, and haptic feedback devices. Individual and group projects challenge students to apply their technical skills in creative ways. The class will be working with a local group of people living with disabilities who serve as design clients for the final project; students conjure and build functioning assistive devices of a practical or whimsical nature for their critique and feedback. Readings and guest speakers address topics pertaining to design for people with different abilities.


  • The PDF version of the syllabus is available here
  • The webpage version is available here

Topic and assignment schedule