Jeff Feddersen Fall 2017

Welcome! I’m very excited to be teaching this course again this year. It’s material I love, and I think now (2017) is a great time to be learning it: there’s never been more tools, opportunities, and interest in the subject.

One page overview (Tuesday section) – pdf

One page overview (Monday section) – pdf

This page will archive the specifics of our section of the course. Your class documentation links will live here, as well as any week-to-week notes that come up in our particular class. The rest of the physical computing site is shared across all sections of the course. Weekly assignments and technical resources will come from there.

Class Time

Tuesdays, 9AM to 11:30AM, Mondays, 9AM to 11:30AM


jfeddersen [at] gmail [dot] com. Please use this address! My NYU one will get there eventually, but gmail is preferred.

Office hours. I will have calendar slots available to meet in person on the days I teach. Please sign up at least an hour in advance, as I don’t work at ITP full time and won’t stick around if nothing is scheduled. I am also available by Skype/hangout/chat/email/call etc. almost any time with prior arrangement. In the past, I’ve found that regular office hours were under-used, and most contact with students outside of class ended up being via email, or increasingly, via video chat anyway. So, my office hour policy is to make arrangements as needed. Email me and we can set up a time to talk further. On the occasions I can be on the floor outside of class times, I’ll email the class list to let you know.

Schedule Overview

The syllabus is long and detailed, with tons of info and support material for each week. I created this thumbnail to provide an overview only. Please refer each week to the full details in the syllabus. (Note, Monday dates will be added soon)

Class # Date: Tu, Mo Topic Tasks for following week Blog Reading
1 11/5, 11/11 Introductions Get parts, set up doc site What is Interaction? Yes
2 11/12, 11/18 Electricity Electronics Labs; Quiz 1 Lab doc Yes
3 11/19, 11/25 Microcontrollers, Digital I/O, Analog Input Digital I/O + Analog Input labs, Quiz 2 Lab doc, Observation Yes
4 11/26, 10/2 Analog Output Analog Out Labs + catch up, Quiz 3 Lab doc None
5 10/3, 10/5 Review & Reading Datasheets (Note new date for Monday section) Catch up on labs and documentation Lab doc Yes
6 10/10, 10/16 Asynchronous Serial 1 Serial Labs, Quiz 4, start midterm Lab doc None
7 10/17, 10/23 Asynchronous Serial 2 Serial Labs, Quiz 4, continue midterm Lab doc, midterm doc None
8 10/24, 10/30 Project Presentations Midterms Due Final project concept Final concept None
9 10/31, 11/6 Final project planning Build ‘paper’ prototype, make test plan Plan, BOM, Timeline Yes
10 11/7, 11/13 Playtesting Update project plans based on playtesting Revise final docs None
11 11/14, 11/20 Power electronics Work on final Revise final docs None
12 11/21, 11/27 Serial 3: I2C and SPI Get final project ready for user testing Progress report None
13 11/28, 12/4 User testing Prepare final and presentation Finalize project docs None
14 12/5, 12/11 Project Presentations Finals Due

How to use this site

There’s a lot, lot! of information at Then there’s the whole rest of the internet, starting with Arduino HQ, going on to great sites like learn.adafruit and learn.sparkfun, not to mention infinite how-tos, data sheets for every component ever made, etc… It can get overwhelming. With the ITP site, we’ve tried to do two things:

  1. Provide a week-by-week syllabus for the semester that takes you through the physical computing material in a logical progression. Each week has clear tasks, assignments for the following week, and links to labs, write-ups, and videos that support or explain the current material. Follow along here and you’ll be fine.
  2. Provide an organized set of materials covering the core physical computing topics, to serve as a first resource for any questions you may have as you study the subject. These live under the Topics, Videos, and Labs tabs. These materials are also linked to from the syllabus, but here they’re organized by subject matter, whereas the week-by-week syllabus is chronological.


The most important thing you can do is arrive to each class on time and be prepared to actively participate, with questions, stories of setbacks or successes you encountered in the lab, and interesting material and events related to pcomp you’ve found. Each week, you should put in adequate time to really digest and then apply the material. I’m unimpressed by last-minute cramming. Floor 4 is the best place to do your class work, as you’ll be surrounded by your peers tackling the same topics, and you’ll have access to second-years, residents, and full-time faculty. Our brief time together each week, and your access to the 4th floor, is what distinguishes studying pcomp at ITP from, say, just reading the internet.

30%   In-class lab work and participation
20%   Midterm, shown in week 8
30%   Final project, in week 14
20%   Blog & documentation


See the following link for Parts Needed

Documentation Links

Email me with direct links to your documentation for this class. Note: please set up tags, categories, or whatever so the link goes directly to the documentation specifically for this class, and not every class, or your personal/work blog, etc.

Tuesday Class Documentation

Andrew Lee
Asha Veeraswamy
Assel Dmitriyeva
Ayal Rosenberg
Azalea FaghiVaseghi
Chelsea Chen
Hadar Ben-Tzur
Itay Niv
Lu Wang
Rebecca Skurnik
Roland Arnoldt
Keerthana Pareddy
Sofia Suazo
Shawn Ma
Ella Chung
Yu-Hao Ko

Monday Class Documentation

Adekemi Sijuwade
Anita Mbabazi
Anthony Bui
Arnav Wagh
Daniel Castano
Jiyao Zhang
Krizia Fernando
Marcha Johnson
Max Horwich
Michael Fuller
MH Rahmani
Sandy Hsieh
Yinghua Yang
Yiyao Nie
Youjin Chung
Effy Fan

Class notes

I’ll post occasional notes here of things that come up in class, starting off with some links from the beginning of last year that were useful from a podcast I like:

And the specific episodes, tied very closely to the reading this week:

This book is a little weird, but memorable for understanding electricity intuitively:

MOMA is on Twitch (via AI)

Fighting for the right to repair John Deere tractors.

Wekinator (thanks Roland!) Machine learning for the masses.

Some audio notes:

  • Interview with Tristan Perich on his fine-art approach to microcontroller composition.
  • A Norwegian pop/punk take on the same.
  • Arduboy, which includes libraries and tools for 8-bit-style music composition…
  • …which is based on Len Shustek’s Playtunes library.
  • Mozzi – good stuff for audio.
  • Volume – enables higher-res version of tone. Includes a nice explanation of what it’s doing (Also thanks Roland!)
  • Teensy from PJRC is a cool board: 32-bit, small, well thought-out. The 3.2 with optional audio board is a formidable synthesizer. Includes very good audio support, including a simple but powerful on-line synthesis patch editor.

Harvard CS50 for those looking for more formal introduction to programming languages.