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

Ladder Safety Alarm by Team Eastern Phoebes (a final project from spring 2026). Read more about the project at the students' documentation page.
Class meetings
- Mondays and Wednesdays, noon–1:50pm
- room A10 in basement level of Hunt Library (IDeATe’s Physical Computing Lab)
Professor: Robert Zacharias, rzachari@andrew.cmu.education (subtract the cation)
Professor’s lab hours
- Mondays and Wednesdays, 2–3pm
- and liberally available at other times (please email for an appointment)
Teaching Assistant: Aziza Norkulova, anorkulo@andrew.cmu.education (subtract the cation)
TA’s lab hours
- Thursdays, 6–7pm
- and by appointment; see the relevant link through Aziza’s Canvas announcement to sign up
Course synopsis
This practical project-based course begins by covering the basic technical skills (electronics, programming, and fabrication) needed to build 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 and learn through practical experience along the way. The class will be working with on-campus design clients for the final project; students create novel assistive devices of a practical or whimsical nature for their critique and feedback.
Syllabus
Course flow overview
This Gantt chart shows a week-by-week course overview. Note that red !s indicate due dates or singular events, while green xs indicate ranges during which work happens.

Topic and assignment schedule
If the following overview schedule conflicts with Canvas or the course website, those latter sources are authoritative. If you do spot a conflict, remember you can snag error hunting bounty points for reporting it!
