Physical Computing Lab (ex Ubiquitous Computing Lab)

Professor: Marc Langheinrich
Assistant: Nemanja Memarovic

Course type: Laboratory
Value in ECTS: 3
Bibliographic references available on the University Library website


Academic year 2012/2013 - Fall semester – not offered


Pre-requisites: None. Basic programming skills and a rudimentary (i.e., highschool level) understanding of electricity a plus. Ubiquitous Computing lecture recommended.


Objectives
Physical Computing is about integrating the real world with sensing, communication, and computation. It is about rapidly prototyping devices that can react and interact directly with their environment, rather than being accessed through a keyboard and monitor. The goal of this class is to introduce students to the idea of using small, programmable microcomputers to build self-contained “gadgets” that help automate everyday tasks.


Contents
The course will consist of a series of lectures and corresponding weekly assignments that will introduce students to basic electronics, microcontroller programming (using the “Processing” language), short-range networking (e.g., Bluetooth), and embedded sensing. We will mainly use Arduino development boards that allow us to rapidly build reactive and/or interactive everyday items, without the need for attaching a Mac or PC to them.


Teaching mode
One lab or lecture session per week with weekly or bi-weekly practical homework assignments / mini-projects.


References
Mike Riley: Programming Your Home. The Pragmatic Programmers, 2012
Massimo Banzi: Getting Started with Arduino (2nd Edition). O’Reilly, 2012
Casey Reas and Ben Fry: Getting Started with Processing. O’Reilly, 2010
Charles Platt: Make: Electronics. O’Reilly, 2009