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.
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.
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.
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 itp.nyu.edu/physcomp. 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:
- 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.
- 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
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
Monday Class Documentation
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:
- 99% Invisible: http://99percentinvisible.org/
And the specific episodes, tied very closely to the reading this week:
episode/of-mice-and-men/ (Englebart’s device was the “keyset”)
This book is a little weird, but memorable for understanding electricity intuitively:
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.