University of Southern California

Viterbi School of Engineering

Information Technology Program

ITP 348 – Introduction to Physical Computing

Fall 2019

Course Info

Units: 4 Instructor: Rob Parke Office: OHE 412 Office Hours: TBD Contact Info: parke@usc.edu

IT Support

IT Help: Provided by Viterbi IT Hours of Service: 8am–5pm M-F Walk-in: DRB 205 Contact Info: (213) 740-0517 Email: engrhelp@usc.edu

Course Description

This course introduces students to the fundamental concepts of physical computing systems through hands-on, real-life applications. Physical computing forms the basis of smart devices, wearables like smart watches, e-textiles / fashion, IoT (Internet of Things) devices, and hardware start-up

This course is designed specifically for a general audience and all majors. You will learn to design electronic devices that interact with the physical world. Assignments will use motion detectors, robotic arms, and electronic music generation.

This course teaches students to design electronic devices that interact with the physical world by building circuits and developing software algorithms that run on a microcontroller. Students are expected to be familiar with object-oriented programming, but no prior experience with electronics or microcontrollers is necessary.

Learning Objectives

Learning Outcomes

Prerequisite(s): ITP 109 or ITP 165 or ITP 115 (equivalent courses or knowledge will be considered)

Format

This course will make use of Brightspace for content and assignments. Lecture slides and any supplemental course content will be posted to Brightspace for use by all students. Any and all announcements for the course will be posted to Brightspace. All assignments will be posted to Brightspace and will be submitted through Brightspace. Students must familiarize themselves with Brightspace before the course begins.

Course Materials

Students will be required to purchase a kit at the USC bookstore for this course. This kit is created specifically for the course and must be purchased during the first week of class. Additional components will be provided by the instructor

Required Readings

Readings will be posted on Brightspace during the semester.

Supplementary Books

Hardware Assignments

There will be hardware assignments that are due 1 week after being assigned. These assignments require building a hardware device with the microcontroller. Students will typically submit code, a schematic drawing, a photograph of the finished device, and a video of the device functioning. Code from external sources may be used as a reference, as long as it is properly cited. These are to be completed individually unless otherwise noted.

Programming Assignments

There will be programming assignments which will focus on a further understanding of problem-solving, algorithms, and logical thinking using C, and are due 1 week after being assigned. Assignments are to be completed individually and submitted on Brightspace.

Final Project Details

Schedule

Basic Requirements

The final project is to create a physical device and interface. The concept of the device is up to the student, but the project proposal must be approved by the instructor. The proposal should include device functionality, part list, cost, and a general description of the app.

The final project will be graded on how it fulfills the requirements and the quality / completion of the device. A project must represent the student’s sole effort; online tutorials or class examples may be consulted, but they must be improved upon and noted in the final documentation. Failure to note and provided links to any reference material will be considered cheating.

Project Grading Breakdown

Item Points
Proposal 10
Device schematic 20
Device firmware (C++) 25
Web or mobile interface app 20
Functional device 25
   
Total 100

Project Demonstration

Students will sign up for a 10 min window during the final exam time during which their will demonstrate the functionality of their project. No PowerPoint presentation is needed; rather, students will show the how their device fulfills the key project requirements. Additional time slots will be added depending on size of the class.


Course Grading Breakdown

Item % of Grade
Participation 10
Assignments 40
In-Class Labs and Quizzes 20
Final Project 30
   
Total 100%

Grading Scale

Course final grades will be determined using the following scale

Grading Timeline

Assignments will receive feedback after about one week.

Policies and Expectations

Students are expected to:

Grading Issues

Students will have one week after graded feedback is given to contest scores (e.g. assignments, midterm, and project). After two week, scores will not be changed.

Late Policy

Important: it is the responsibility of the student to state in their Brightspace submission that they intend to use a grace day.

(Adapted from Stanford’s EE365 policy)

Course Schedule: A Weekly Breakdown

  Topics/Daily Activities Readings Assignment (given out on Tuesday; due one week Monday @ 11:59 pm)
Week 1 Intro to Physical Computing / C++ Review Posted online A0 - Installation
Week 2 Electricity, components, microcontrollers, Ohm’s Law, LEDs Posted online A1 - Blink
Week 3 Interacting: analog to digital, buttons, serial Posted online A2 - Light sculpture
Week 4 Multicolored LEDs, software library, functions, variable resistors Posted online A3 - Scanning Light
Week 5 Voltage dividers, photoresistors, RGB LEDs Posted online A4 - Dice
Week 6 SPI communication, OLED, temperature sensors Posted online A5 - Reaction Timer
Week 7 Digital temperature sensors, serial vs. parallel, cloud functions, cloud variables Posted online A6 – Shared Environment Monitor
Week 8 Piezobuzzers, ultrasonic sensor (Fall break) Posted online A7 - Proximity alarm
Week 9 Motion: DC motors, servos Posted online A8
Week 10 Bluetooth, remote controlled car Posted online A9 - Motors
Week 11 Cloud platform, web and mobile apps Posted online Project proposal
Week 12 Other sensors, accelerometers, processing, passive infrared sensors Posted online (project proposal feedback given)
Week 13 Accessibility Posted online Proposal revision
Week 14 Hardware startups (Thanksgiving) Posted online Project schematic
Week 15 Advanced topics Posted online (work on project)
Final Final project presentation   Project code, device, app, in-class demo
      Date: For the date and time of the final for this class, consult the USC Schedule of Classes at www.usc.edu/soc.

Academic Conduct

Plagiarism – presenting someone else’s ideas as your own, either verbatim or recast in your own words – is a serious academic offense with serious consequences. Please familiarize yourself with the discussion of plagiarism in SCampus in Part B, Section 11, “Behavior Violating University Standards” https://policy.usc.edu/scampus-part-b/.  Other forms of academic dishonesty are equally unacceptable.  See additional information in SCampus and university policies on scientific misconduct, http://policy.usc.edu/scientific-misconduct.

 

Support Systems

Student Counseling Services (SCS) - (213) 740-7711 – 24/7 on call

Free and confidential mental health treatment for students, including short-term psychotherapy, group counseling, stress fitness workshops, and crisis intervention. https://engemannshc.usc.edu/counseling/

National Suicide Prevention Lifeline - 1-800-273-8255

Provides free and confidential emotional support to people in suicidal crisis or emotional distress 24 hours a day, 7 days a week. http://www.suicidepreventionlifeline.org

Relationship and Sexual Violence Prevention Services (RSVP) - (213) 740-4900 - 24/7 on call

Free and confidential therapy services, workshops, and training for situations related to gender-based harm. https://engemannshc.usc.edu/rsvp/

Sexual Assault Resource Center

For more information about how to get help or help a survivor, rights, reporting options, and additional resources, visit the website: http://sarc.usc.edu/

Office of Equity and Diversity (OED)/Title IX Compliance – (213) 740-5086

Works with faculty, staff, visitors, applicants, and students around issues of protected class. https://equity.usc.edu/

Bias Assessment Response and Support

Incidents of bias, hate crimes and microaggressions need to be reported allowing for appropriate investigation and response. https://studentaffairs.usc.edu/bias-assessment-response-support/

The Office of Disability Services and Programs

Provides certification for students with disabilities and helps arrange relevant accommodations. http://dsp.usc.edu

Student Support and Advocacy – (213) 821-4710

Assists students and families in resolving complex issues adversely affecting their success as a student EX: personal, financial, and academic. https://studentaffairs.usc.edu/ssa/

Diversity at USC

Information on events, programs and training, the Diversity Task Force (including representatives for each school), chronology, participation, and various resources for students. https://diversity.usc.edu/

USC Emergency Information

Provides safety and other updates, including ways in which instruction will be continued if an officially declared emergency makes travel to campus infeasible, http://emergency.usc.edu

USC Department of Public Safety – 213-740-4321 (UPC) and 323-442-1000 (HSC) for 24-hour emergency assistance or to report a crime.

Provides overall safety to USC community. http://dps.usc.edu