Week 4: Analog Input and Output

Today will be a continuation on last class with a deeper dive into analog input and output from the Arduino. We will be talking about how the Arduino generates a “fake” analog output using pulse width modulation (PMW) which is represented by the “~” symbol. We will also be using an oscilloscope to visualize how a PMW actually works.


  • Use a potentiometer variable resistor (knob) to send analog values to the Arduino to in turn change the brightness of an LED. Git ➔
  • Use another variable resistor (light sensor, pressure sensor, stretch sensor, etc.) as an alternative to the potentiometer. Git ➔
  • Fun with DC motors. Git ➔
  • Generating sound with speakers. Git ➔
  • Heart rate sensors and the serial plotter. Git ➔
  • Fun with servo motors. Git ➔
  • Using I2C communication for more complex sensors like accelerometers, gyroscopes, temperature/humidity sensors, etc.

Lecture and Lab Slides

Lecture Video

In Class Assignment/Homework

Review the labs that were covered in class this week, and come up with a simple yet creative application using digital or analog input and output. Post your experiments to your blog. Include videos and images.