Syllabus

Syllabus Fall 2026

Course Info

Units: 4 Instructor: Rob Parke Office: RRB 202 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 startups.

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 introductory programming, but no prior experience with electronics or microcontrollers is necessary.

Learning Objectives

This course is designed to:

  • Introduce physical computing through hands-on projects
  • Develop skills in electronics, embedded programming, sensors, motors, wireless communication, cloud services, and interfaces
  • Connect software concepts to physical behavior
  • Give students practice building, testing, and debugging devices in stages
  • Encourage students to document their work and consider accessibility when designing devices

Learning Outcomes

By the end of the course, students should be able to:

  • Identify a need and create requirements for a connected device
  • Select and connect appropriate electronic components
  • Write and debug embedded software that reads sensors and controls physical outputs
  • Send data between a microcontroller, cloud or Bluetooth service, and web or mobile interface
  • Build, test, and improve a complete hardware and software prototype
  • Explain design decisions and identify usability and accessibility issues

How Students Meet the Learning Outcomes

Learning outcome How students practice How it is graded
Identify needs and requirements Project ideas and proposal Need, audience, requirements, scope, and reasons for the design
Select and connect components Labs and device assignments Schematics, component choices, photographs, and working circuits
Write and debug embedded software Programming exercises, assignments, and project milestone Code, test results, and working subsystems
Create connected interactions Cloud, dashboard, mobile, and Bluetooth assignments Data sent to a dashboard and remote control of a device
Build and improve a complete prototype Design review, project milestone, testing, and revision Revised plan, working prototype, test results, and final demonstration
Explain and evaluate a design Accessibility activity, documentation, videos, and presentation Accessibility review, design decisions, documentation, and presentation

Prerequisite(s): TAC/ITP 115 or TAC/ITP 116 or TAC/ITP 165 or TAC/ITP 168 or BME 210 (equivalent courses or knowledge will be considered)

Format

This course will make use of this course website for all content, assignments, and lecture videos. However, students will submit their assignments on Brightspace.

Announcements for the course will be posted to Brightspace. Students must familiarize themselves with Brightspace before the course begins.

Course Kit

Students will be required to purchase a custom kit from SparkFun (link will be provided to students directly). 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 Videos

Videos for each week are posted on the course website and should be watched prior to class that week.

Supplementary Books

  • Scherz, Paul, et al. Practical Electronics for Inventors (3rd Edition). McGraw-Hill Education, 2013. ISBN: 978-0071771337
    Amazon

  • Hughes, John M. Arduino in a Nutshell: A Handbook for Technicians, Engineers, and Makers. 2015. ISBN: 978-1491921760
    Amazon: http://a.co/dkklYgg

  • Purdum, Jack. Beginning C for Arduino, Second Edition: Learn C Programming for the Arduino. Apress, 2015. ISBN: 978-1484209417
    Amazon: http://a.co/9NcBY1V

Course Deliverables

Assignments

Assignments give students practice with circuits, embedded programming, sensors, motors, connectivity, and interfaces. Most assignments take one week. The state machine assignment takes two weeks.

Students typically submit code, a schematic, photographs, test results, and a short video of the device working. Assignments are graded on whether the device meets the requirements, whether it was tested, and whether the code and circuit are clearly documented.

Assignments are completed individually and submitted on Brightspace. Students may use course materials and properly cited references. Rules for collaboration and AI tools are listed in the Academic Integrity section.

Final Project Details

Schedule

Week Stage Student work Feedback and revision
Week 7 Preliminary ideas Two ideas that address different needs Instructor helps select a feasible direction
Week 11 Project proposal Need, audience, features, system plan, components, budget, and risks Instructor approves the project direction
Week 12 External design review Short presentation of the need and proposed design Outside experts provide feedback
Week 12 Design review response Short reflection on the most useful feedback Student identifies one change to make
Week 13 Technical milestone Schematic, one working part, and a short status update Instructor provides feedback while there is still time to revise
Weeks 12 to 15 Final prototype Device, interface, dashboard, documentation, and videos Student builds, tests, and revises the complete system
Final exam period Final demonstration Finished device and interface Student demonstrates the system and explains design decisions

Basic Requirements

The final project is an original connected device and interface. It must include sensing, physical output, embedded software, connected data, and a web, mobile, or approved Bluetooth interface. The proposal must be approved before the student begins building the full device.

The final project does not need to be ready for manufacturing. Grading considers whether the system works, how it was planned and tested, and how well the student documents and explains the work. A feature that does not work perfectly can still earn credit when the testing and limitations are clearly documented.

Students may use tutorials, libraries, and examples, but they must cite and adapt them. Students must be able to explain and modify all submitted work.

Project Grading Breakdown

Each criterion will be evaluated using the following performance levels:

  • Exemplary: Complete, reliable, and well justified.
  • Proficient: Meets the requirement with minor limitations.
  • Developing: Partially meets the requirement, but important problems remain.
  • Beginning: Shows limited progress toward the requirement.
  • No evidence: The required element is absent or cannot be evaluated.
Criterion Evidence of achievement Points
Proposal and Design Review    
Proposal: need and audience Identifies the need, audience, and why the device is an appropriate response. 3
Proposal: goals and system plan Explains the project goals, inputs, outputs, components, interactions, and connected services. 4
Proposal: feasibility Includes a realistic budget, scope, risks, schedule, and fallback plan. 3
Design-review response Summarizes the most useful feedback and identifies one planned change. 3
     
Project Milestone    
Milestone: schematic Includes a complete and accurate Fritzing diagram of the current design. 5
Milestone: progress Shows that one important part works and identifies the next step. 5
     
Final Device    
Environmental interaction Inputs and physical outputs function reliably and serve the device’s purpose. 14
Cloud data and dashboard The device sends useful data to the cloud and displays it in a clear dashboard. 8
Remote control An approved interface reliably changes the device’s physical behavior. 8
Integration and reliability Hardware, firmware, connectivity, and interface operate together reliably. 14
Coherent and complete device Features work together and address the need identified in the proposal. 8
Code quality Code is organized, consistent, commented, and understandable. 5
     
Final Presentation    
In-person demonstration Explains the project and demonstrates the required functionality. 10
     
Documentation    
Developer documentation Allows a future TAC 348 student to set up, understand, and modify the project. 4
Technical walkthrough video Shows each required feature working and explains the key technical elements. 3
Product highlight video Clearly communicates the device’s purpose and major features. 3
Total   100

Project Demonstration

During the scheduled final exam time, each student will give a ten-minute demonstration. Students will explain what the device does, show the required features working, and discuss an important design decision or problem they solved. A prerecorded demonstration may be used when a feature cannot be shown safely or reliably in the classroom.


Course Grading Breakdown

Course work % of grade
Scaffolded individual device assignments 40%
Final project, including proposal, design review, milestone, prototype, and documentation 40%
Low-stakes knowledge checks 5%
In-class labs 10%
Quizzes 5%
Total 100%

Knowledge checks and quizzes cover key concepts. In-class labs cover application and troubleshooting.

Grading Scale

Course final grades will be determined using the following scale:

  • A 93-100
  • A- 90-92
  • B+ 87-89
  • B 83-86
  • B- 80-82
  • C+ 77-79
  • C 73-76
  • C- 70-72
  • D+ 67-69
  • D 65-66
  • F 64 and below

Grading Timeline

Assignments will normally receive feedback within seven days. Project feedback is given at several stages so students can use it before the final demonstration.

Policies and Expectations

Students are expected to:

  • Attend and participate in lecture discussions

  • Attend and complete weekly assignments

Grading Issues

Students have one week after receiving feedback to ask for a score to be reconsidered. The request should identify the grading criterion and explain why the score should change. After one week, scores will not normally be changed.

Late Policy

  • Assignments are due on the stated day on Brightspace (typically at 11:59 pm)
  • Students are given 5 “grace days” (self-granted extensions) which may be used for extra time without penalty
  • Grace days may be used for assignments only, not the final project
  • Grace days may be used for one assignment, distributed across several assignments, or even better, saved for a crisis that thankfully never comes
  • Instructor-granted extensions are only considered after all grace days are used and only given in rare, exceptional situations

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

Videos and readings should be completed before class. Unless otherwise noted, assignments are due the following Sunday at 11:59 p.m. Exact dates are posted on Brightspace.

Phase and week Topics Assignment or project work
Foundations, Week 1 Physical computing, electricity, microcontrollers, Ohm’s law, and LEDs A0: Installation and Setup; A1: Basic Blink
Foundations, Week 2 Analog-to-digital conversion, pulse-width modulation, serial data, and expressive output A2: Light Sculpture
Foundations, Week 3 Digital input, buttons, RGB LEDs, and event-driven behavior A3: Scanning Light
Sensing and connected data, Week 4 Voltage dividers, photoresistors, multitasking, and cloud publishing A4: Dice
Sensing and connected data, Week 5 Temperature sensing, SPI, OLED displays, webhooks, and dashboards A5: Button Timers
Sensing and connected data, Week 6 Cloud subscription and mobile app integration A6: Environment Monitor and Dashboard
System behavior, Week 7 Finite-state machines and project ideas A7: Preliminary Final Project Ideas
Actuation and integration, Week 8 DC motors, servos, and state-based control A8: State Machine Tea Brewer, two-week build
Actuation and integration, Week 9 Bluetooth control and mobile robotics Continue A8; chassis and Bluetooth practice
Interfaces and APIs, Week 10 JSON, APIs, dashboards, and remote interaction A9: Bluetooth Car; refine project direction
Final project, Week 11 Ultrasonic sensing, graphics, system planning, and risks A10: Smart Watch Build; project proposal
Final project, Week 12 Wearables, heart-rate sensing, debouncing, and design review External design review and response
Final project, Week 13 RFID, accessibility, and prototype evaluation Project milestone: schematic, working subsystem, and test results
Final project, Week 14 Accelerometers, integration, debugging, and revision Revised system and instructor feedback
Final project, Week 15 Digital environmental sensors, passive infrared sensing, documentation, and demonstration planning Final testing and documentation
Final-exam period Individual project demonstrations Integrated device, interface, documentation, videos, and demonstration

The official final-exam date and time are listed in the USC Schedule of Classes.

Academic Integrity

The University of Southern California is foremost a learning community committed to fostering successful scholars and researchers dedicated to the pursuit of knowledge and the transmission of ideas. Academic misconduct is in contrast to the university’s mission to educate students through a broad array of first-rank academic, professional, and extracurricular programs and includes any act of dishonesty in the submission of academic work (either in draft or final form).

This course will follow the expectations for academic integrity as stated in the USC Student Handbook. All students are expected to submit assignments that are original work and prepared specifically for the course/section in this academic term. You may not submit work written by others or “recycle” work prepared for other courses without obtaining written permission from the instructor(s). Students suspected of engaging in academic misconduct will be reported to the Office of Academic Integrity.

Students must complete their own work without assistance from other students or any outside sources. Other violations of academic misconduct include, but are not limited to, cheating, plagiarism, fabrication (e.g., falsifying data), knowingly assisting others in acts of academic dishonesty, and any act that gains or is intended to gain an unfair academic advantage.

The impact of academic dishonesty is far-reaching and is considered a serious offense against the university and could result in outcomes such as failure on the assignment, failure in the course, suspension, or even expulsion from the university.

For more information about academic integrity see the student handbook or the Office of Academic Integrity’s website, and university policies on Research and Scholarship Misconduct.

Use of AI Generators

  • AI generators such as ChatGPT are powerfully useful tools that have great application in software and engineering
  • However, the purpose of this class is to develop creative and critical thinking skills as well as practical knowledge of building devices
  • Therefore, using AI-generated tools is prohibited in this course, will be identified as plagiarism, and will be reported to the Office of Academic Integrity

Course Content Distribution and Synchronous Session Recordings Policies

USC has policies that prohibit recording and distribution of any synchronous and asynchronous course content outside of the learning environment.

Recording a university class without the express permission of the instructor and announcement to the class, or unless conducted pursuant to an Office of Student Accessibility Services (OSAS) accommodation, is prohibited. Recording can inhibit free discussion in the future, and thus infringe on the academic freedom of other students as well as the instructor. (Living our Unifying Values: The USC Student Handbook, page 13).

Distribution or use of notes, recordings, exams, or other intellectual property, based on university classes or lectures without the express permission of the instructor for purposes other than individual or group study, is prohibited. This includes but is not limited to providing materials for distribution by services publishing course materials. This restriction on unauthorized use also applies to all information, which had been distributed to students or in any way had been displayed for use in relationship to the class, whether obtained in class, via email, on the internet, or via any other media. (Living our Unifying Values: The USC Student Handbook, page 13).

Students and Disability Accommodations:

USC welcomes students with disabilities into all of the University’s educational programs. The Office of Student Accessibility Services (OSAS) is responsible for the determination of appropriate accommodations for students who encounter disability-related barriers. Once a student has completed the OSAS process (registration, initial appointment, and submitted documentation) and accommodations are determined to be reasonable and appropriate, a Letter of Accommodation (LOA) will be available to generate for each course. The LOA must be given to each course instructor by the student and followed up with a discussion. This should be done as early in the semester as possible as accommodations are not retroactive. More information can be found at osas.usc.edu. You may contact OSAS at (213) 740-0776 or via email at osasfrontdesk@usc.edu.

Support Systems

Counseling and Mental Health - (213) 740-9355 – 24/7 on call

Free and confidential mental health treatment for students, including short-term psychotherapy, group counseling, stress fitness workshops, and crisis intervention.

988 Suicide and Crisis Lifeline - 988 for both calls and text messages – 24/7 on call

The 988 Suicide and Crisis Lifeline (formerly known as the National Suicide Prevention Lifeline) provides free and confidential emotional support to people in suicidal crisis or emotional distress 24 hours a day, 7 days a week, across the United States. The Lifeline is comprised of a national network of over 200 local crisis centers, combining custom local care and resources with national standards and best practices. The new, shorter phone number makes it easier for people to remember and access mental health crisis services (though the previous 1 (800) 273-8255 number will continue to function indefinitely) and represents a continued commitment to those in crisis.

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

Free and confidential therapy services, workshops, and training for situations related to gender- and power-based harm (including sexual assault, intimate partner violence, and stalking).

Office for Equity, Equal Opportunity, and Title IX (EEO-TIX) - (213) 740-5086

Information about how to get help or help someone affected by harassment or discrimination, rights of protected classes, reporting options, and additional resources for students, faculty, staff, visitors, and applicants.

Reporting Incidents of Bias or Harassment - (213) 740-5086 or (213) 821-8298

Avenue to report incidents of bias, hate crimes, and microaggressions to the Office for Equity, Equal Opportunity, and Title IX for appropriate investigation, supportive measures, and response.

The Office of Student Accessibility Services (OSAS) - (213) 740-0776

OSAS ensures equal access for students with disabilities through providing academic accommodations and auxiliary aids in accordance with federal laws and university policy.

USC Campus Support and Intervention - (213) 740-0411

Assists students and families in resolving complex personal, financial, and academic issues adversely affecting their success as a student.

Diversity, Equity and Inclusion - (213) 740-2101

Information on events, programs and training, the Provost’s Diversity and Inclusion Council, Diversity Liaisons for each academic school, chronology, participation, and various resources for students.

USC Emergency - UPC: (213) 740-4321, HSC: (323) 442-1000 – 24/7 on call

Emergency assistance and avenue to report a crime. Latest updates regarding safety, including ways in which instruction will be continued if an officially declared emergency makes travel to campus infeasible.

USC Department of Public Safety - UPC: (213) 740-6000, HSC: (323) 442-1200 – 24/7 on call

Non-emergency assistance or information.

Office of the Ombuds - (213) 821-9556 (UPC) / (323) 442-0382 (HSC)

A safe and confidential place to share your USC-related issues with a University Ombuds who will work with you to explore options or paths to manage your concern.

Occupational Therapy Faculty Practice - (323) 442-2850 or otfp@med.usc.edu

Confidential Lifestyle Redesign services for USC students to support health promoting habits and routines that enhance quality of life and academic performance.