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

Instructor: Robert Zacharias, (minus the cation)
TA: Dan Saad, (minus the cation)

Class meetings: Mondays and Wednesdays, 9:30–11:20 a.m., room A10 in Hunt Library (IDeATe’s Physical Computing Lab)

Lab hours

  • RZ: Mondays/Wednesdays 11:30 a.m.– 12:30 p.m.
  • or by appointment with RZ; email to request a meeting at another time
  • DS: Tuesdays/Thursdays 6:30–7:30 p.m.

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 older people 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 older clients.

Topic and assignment schedule

This schedule is subject to change based on the speed at which we progress.

week class no. Monday class class no. Wednesday class
1 #1 Jan. 14th intro and expectations; IDeATe; Arduino board tour; Homework 1: Intro assigned #2 Jan. 16th due: Homework 1; schematics and circuits part 1; blinking with variations; Homework 2: Blinky party assigned
2 Jan. 21st Birthday of Martin Luther King, Jr.: no class #3 Jan. 23rd due: Homework 2; Serial feedback; V=IR; potentiometer; switches/buttons Homework 3: Blinking machine for PitTraCo assigned
3 #4 Jan. 28th due: Homework 3; hobby servo; Homework 4: Nightlights assigned; Project 1: A Double Transducer introduced #5 Jan. 30th class cancelled due to ❄️ insufficient airborne kinetic energy ❄️
4 #6 Feb. 4th due: Homework 4; rapid tour of many inputs and outputs #7 Feb. 6th Project 1 work day
5 #8 Feb. 11th Project 1 crit; #9 Feb. 13th introduction to Project 2: Assistive Device; data types; practical DSLR camera use
6 #10 Feb. 18th due: Project 1 documentation; first meeting with older friends: introductions, brainstorming, and open ideation #11 Feb. 20th due: Project 2: brainstorming sketches and notes for discussion with course staff
7 #12 Feb. 25th due (on Sunday, Feb. 24th): Homework 5; guest speaker Cassandra Masters; Project 1 documentation feedback returned; Project 2 prototype work day #13 Feb. 27th due: Project 2 prototype
8 #14 Mar. 4th due: optional Project 1 documentation improvements for regrade; Project 2 work day #15 Mar. 6th Project 2 crit
9 week of Mar. 11th 🌱Spring break 🌱  
10 #16 Mar. 18 timing and events; Homework 6: interview reading and Homework 7: timing and events assigned #17 Mar. 20th due: Project 2 documentation and Homework 6; guest speaker Prof. Berntsen from HCII; final project groups announced
11 #18 Mar. 25th optional class: reserved final project interview time #19 Mar. 27th due: Homework 7; Project 2 documentation feedback returned; interview recap and prototype ideation
12 #20 Apr. 1st due: final project interview documentation; first-round prototype work day #21 Apr. 3rd due: optional Project 2 documentation improvements for regrading; first-round prototype work day
13 #22 Apr. 8th due: presentation and formative critique of “behaves-like” prototypes #23 Apr. 10th due: prototype process documentation; presentation debrief and final planning; happy carnival! 🤹
14 #24 Apr. 15th final project work day 1 #25 Apr. 17th final project work day 2
15 #26 Apr. 22nd final project work day 3 #27 Apr. 24th final project work day 4
16 #28 Apr. 29th Final presentations and crit #29 May 1st project wrap-up, documentation work time, and lab cleanup
17 week of May 6th (finals week) due: Final project documentation Friday, May 10th, at 5pm