Share Your Resources: Universities


Please use this thread to share lesson plans, course curricula, recorded classes and more.


During the last few studios we’ve built a basic HTML/CSS+JavaScript UI for a desk lamp and even created a JavaScript object that allows us to model the behavior of the lamp. Now it’s time to start building the embedded system (the lamp itself). [With Particle Power!!]

To start us off, here’s a syllabus that Professor Bill has been using over at UW - STL.


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.

@Rob7 linked what his Trojans will be studying this semester at USC in another thread. Let’s move it here too.


Since @Joe linked to one of my assignments, I thought I’d also share some background on the class project (here’s the full schedule).

Over the course of the semester the students complete a sequence of assignments for an IoT garage door opener. They:

  1. Start with a user interface (HTML+CSS),
  2. Move on to simulated behavior (JavaScript for front end),
  3. Create an embedded system for a non-IoT garage door (C++ and state machines w/ Photon),
  4. Connect the UI and embedded system (parts 1&2 to part 3) (Particle’s cloud — a full IoT system),
  5. Add in a second embedded device (remote control) and more complex behavior (practice above)
  6. Deploy a mobile app for it (we’ve used Cordova in the past)

I made several mini-garages so students can actually test their work in a pseud-realistic way: Videos and complete plans are available here:

Students do the bulk of their work with proxy hardware (LEDs/Switches). If things look good, they’ll drop their photon into a zif socket on the mini garage and test it out.


This is a work in progress, but here is all the material for my undergraduate IoT class which uses Argons. There are lectures, assignments, and in-class exercises.