Learn how to identify pins on the Raspberry Pi GPIO and program them to control lights and motors, read data from sensors, and interact with the Internet of Things.
Overview
Syllabus
Introduction
- Put your Raspberry Pi to work
- What you should know
- Equipment you will need
- Light an LED with a button press
- Connect the LED and switch hardware
- Program the LED and switch with Python
- What you learned from the LED switch project
- Why does Raspberry Pi have a GPIO?
- What are all these pins for?
- Numbering schemes: Board versus BCM
- How do I connect electronics to the GPIO?
- 1-Wire introduction
- Connect the 1-Wire
- Connect the meter
- Program the 1-Wire
- What you learned from the temperature sensor project
- Pulse width modulation in depth
- 1-Wire sensors in depth
- Which GPIO pins can be used for input
- Pull-up and pull-down with input pins
- Protecting GPIO input with resistors
- Protecting GPIO input with Zener diodes
- Introduction to SPI devices
- Connect the BME280 weather station
- Connect the RGB OLED Display
- What you learned from SPI projects
- Understanding SPI in depth
- GPIO output pins
- Protecting GPIO output pins
- Introduction to I2C devices
- Connect the servo controller via I2C
- Connect the BME280 via I2C
- Install software and test
- Control the BME280 and PCA9685
- What you learned about I2C
- I2C in depth
- Introduction to programming the Raspberry Pi GPIO
- Python and GPIO Zero control of GPIO
- Python and RPi.GPIO control of GPIO
- Scratch control of GPIO
- Bash control of GPIO
- Node-RED control of GPIO
- C control of GPIO
- Java control of GPIO
- Wolfram control of GPIO
- Binary and bitwise math
- Connect the Raspberry Pi to a terminal
- Connect to gpio TxD and RxD pins
- Enable the serial connection
- UART in depth
- Next steps
Taught by
Mark Niemann-Ross