Welcome 👋 to the third module in your Physical Computing adventure: Advanced I/O. Do not be intimidated by the advanced prefix. The content here is not more complicated than the first two modules, though they do build on them:
As usual, these lessons are interactive—that is, they assume that you’re following along and building with us. They are designed to be completed in order. All Arduino code is open source and in this GitHub repository.
In this lesson, you will learn about organic light-emitting diode (OLED) displays, basic graphics programming, and a brief introduction to two serial communication protocols called I2C (Inter-Integrated Circuit) and SPI (Serial Peripheral Interface).
In this lesson, you will learn about vibration motors (vibromotors), their role in haptic technology, and how to connect them with microcontrollers.
In this lesson, we will learn how to smooth incoming sensor data using basic digital signal processing. We’ll cover a class of digital filters called smoothing algorithms (aka signal filters), why they’re helpful, and potential tradeoffs in their implementation and use.