HSCI-214: Physical Computing 1

  • Instructor: Casey Anderson
  • Email: {{ casey.anderson ]]] @ [[ artcenter.edu }}}
  • Pronouns: he / him / his
  • Class Meetings: Thursdays, 09:00AM – 11:50AM

Description

This prototyping-oriented course introduces students to the creative affordances of physical computing, or the practice of interfacing digital systems with the outside world, by way of hands-on experiments across a range of technologies. Students will learn programming concepts (Python 3), and basic electronics, as well as strategies for their interaction, by designing interactive objects and experiences in response to a series of prototype briefs. Regular critiques will provide an opportunity for students to share their prototypes with their colleagues as well as receive direct feedback from the instructor.

Required Materials

Grading Policy

Grades will be calculated based on the following distribution:

  • Attendance = 10%
  • Lab participation = 20%
  • Homework assignments = 35%
  • Prototypes = 35%

If something comes up and you need to miss class please send me an email saying so. A simple "I had to miss class" is sufficient, I do not need the details.

Goals

  1. Construct simple circuits to interface electronics with digital systems
  2. Learn and explore the basic principles of software design
  3. Prototype experiences and devices across a continuum of technologies

Class Schedule (subject to change)

Week 1

  • Review Syllabus
  • 1.1 LAB Miniconda
  • 1.2 LAB The Command Line
  • 1.3 LAB Intro Python 3
  • 1.4 TOOLS Prototype Proposal Format
  • 1.5 HW Practice Prototype Proposal
  • 1.6 TOOLS 10/5 Ideas
  • 1.7 HW Practice 10/5 Ideas
  • 1.8 HW Required Materials

Week 2

  • 2.1 LAB More Python Fundamentals
  • 2.2 LAB Functions
  • 2.3 HW Happy Birthday
  • 2.4 LAB Setup Micropython for ESP32
  • 2.5 LAB Digital Output
  • 2.5 HW Setup your ESP32, Practice using Thonny, review Digital Output lab

Week 3

  • 3.1 LAB Digital Input/Output
  • 3.2 Demo: 1x Button 2x LEDs
  • 3.3 HW 1x Button 2x LEDs

Week 4

  • 4.1 LAB (in Groups) 2x paper button prototypes
  • 4.2 BRF Paper Circuit
  • 4.3 HW Paper Circuit Prototype + Proposal (v1)
  • 4.4 HW Paper Circuit 10 Possible Revisions

Week 6

  • 6.1 Review In-progress Paper Circuit Prototypes
  • 6.2 LAB Counting Digital Interactions
  • 6.3 Prepare Final Paper Circuit Prototype

Week 8

  • 8.1 Review Final Paper Circuit Prototype
  • 8.2 LAB GPIO, Analog & Digital Signals
  • 8.3 LAB Analog Input
  • 8.4 LAB Voltage Dividers
  • 8.5 BRF 2 Analog + Digital Interactions
  • 8.6 HW Analog Input / Digital Output - Prototype + Proposal (v1)
  • 8.7 HW Analog Input / Digital Output - 10 Possible Revisions

Week 9

  • 9.0 Review In-progress Analog + Digital Interactions
  • 9.1 LAB for Loops
  • 9.2 LAB ADC, DCA, & PWM
  • 9.3 HW Analog + Digital Interactions Final Presentation

Week 10

  • 10.0 Review Final Analog + Digital Interactions

Week 11

  • 11.1 Analog Input & PWM Output
  • 11.2 Transistors + Motors
  • 11.3 BRF Remix
  • 11.4 HW Remix Prototype + Proposal (v1)
  • 11.5 HW Remix Prototype 10/5/1 Ideas

Week 12

  • 12.0 Review In-progress Remix Prototype
  • 12.1 Analog Input & PWM Outputs
  • 12.2 Motor Review
  • 12.3 HW Remix Prototype + Proposal (v2)
  • 12.4 HW Remix Prototype 10/5/1 Ideas