The Raspberry Pi Platform and Python Programming for the Raspberry Pi
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
The Raspberry Pi Platform and Python Programming for the Raspberry Pi
This course is part of An Introduction to Programming the Internet of Things (IOT) Specialization
Instructor: Ian Harris
136,375 already enrolled
Included with
Learn more
Ask Coursera
2,776 reviews
2,776 reviews
Skills you'll gain
Details to know
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 4 modules in this course
The Raspberry Pi is a small, affordable single-board computer that you will use to design and develop fun and practical IoT devices while learning programming and computer hardware. In addition, you will learn how to set up up the Raspberry Pi environment, get a Linux operating system running, and write and execute some basic Python code on the Raspberry Pi. You will also learn how to use Python-based IDE (integrated development environments) for the Raspberry Pi and how to trace and debug Python code on the device. Please note that this course does not include discussion forums.
This module describes the basic functionality the Raspberry Pi B+ board. I'll describe how to set up the board, configure it, and use it. An important point differentiating Raspberry Pi from the Arduino platform which we have talked about previously is that Raspberry Pi uses an operating system. I'll describe some of the implications of an operating system on the behavior of the Raspberry Pi as an IoT device.
What's included
10 videos3 readings1 assignment1 peer review
10 videosβ’Total 55 minutes
- Module 1 Introduction (Video)β’1 minute
- Lecture 1.1 - Raspberry Pi Board (Updated)β’3 minutes
- Lecture 1.2 - Raspberry Pi Processorβ’6 minutes
- Lecture 1.3 - Raspberry Pi vs. Arduino (Updated)β’7 minutes
- Lecture 2.1 - Operating System Benefitsβ’7 minutes
- Lecture 2.2 - Processesβ’8 minutes
- Lecture 2.3 - Raspberry Pi IoTβ’4 minutes
- Lecture 3.1 - Raspberry Pi Setupβ’5 minutes
- Lecture 3.2 - Raspberry Pi Configurationβ’5 minutes
- Lecture 3.3 - Overclocking (Updated)β’9 minutes
3 readingsβ’Total 30 minutes
- Course Overviewβ’10 minutes
- Module 1 Objectivesβ’10 minutes
- Module 1 Readingβ’10 minutes
1 assignmentβ’Total 30 minutes
- Module 1 Quizβ’30 minutes
1 peer reviewβ’Total 60 minutes
- Module 1 Peer Assignment:β’60 minutes
The Raspberry Pi is typically installed with a Linux-based operating system, so we present the basics of Linux and its use. We describe some of the main features including navigating the file system and managing processes. We describe the text-based user interface through the shell and we overview the graphic user interface which is the default with the Raspian Linux distribution.
What's included
10 videos2 readings1 assignment1 peer review
10 videosβ’Total 44 minutes
- Module 2 Introduction (Video)β’1 minute
- Lecture 1.1 - Linux Basicsβ’5 minutes
- Lecture 1.2 - Loginβ’3 minutes
- Lecture 1.3 - Linux Filesystem (Updated)β’4 minutes
- Lecture 2.1 - Navigating the Filesystem (Updated)β’9 minutes
- Lecture 2.2 - Text Editors (Updated)β’5 minutes
- Lecture 2.3 - Accessing Filesβ’4 minutes
- Lecture 3.1 - Permissionsβ’7 minutes
- Lecture 3.2 - Processesβ’4 minutes
- Lecture 3.3 - Linux Graphic User Interfaceβ’4 minutes
2 readingsβ’Total 20 minutes
- Module 2 Objectivesβ’10 minutes
- Module 2 Readingβ’10 minutes
1 assignmentβ’Total 30 minutes
- Module 2 Quizβ’30 minutes
1 peer reviewβ’Total 60 minutes
- Module 2 Peer Assignmentβ’60 minutes
We present the basics of the Python programming language to prepare you for programming on the Raspberry Pi. Many languages can be used but Python is the most convenient for the Raspberry Pi because convenient APIs are provided for basic operations such as controlling the pins. Python is a powerful language with useful features that we will present so that you can use these features to control the Raspberry Pi.
What's included
10 videos2 readings1 assignment1 peer review
10 videosβ’Total 45 minutes
- Module 3 Introduction (Video)β’1 minute
- Lecture 1.1 - Python on Raspberry Piβ’7 minutes
- Lecture 1.2 - Python Programming Environmentβ’7 minutes
- Lecture 1.3 - Python Expressionsβ’4 minutes
- Lecture 2.1 - Stringsβ’6 minutes
- Lecture 2.2 - Functionsβ’4 minutes
- Lecture 2.3 - Function Argumentsβ’4 minutes
- Lecture 3.1 - Listsβ’4 minutes
- Lecture 3.2 - List Methodsβ’3 minutes
- Lecture 3.3 - Control Flowβ’6 minutes
2 readingsβ’Total 20 minutes
- Module 3 Objectivesβ’10 minutes
- Module 3 Readingβ’10 minutes
1 assignmentβ’Total 30 minutes
- Module 3 Quizβ’30 minutes
1 peer reviewβ’Total 60 minutes
- Module 3 Peer Assignmentβ’60 minutes
In this module we describe how to communicate with devices through the pins of the Raspberry Pi. We examine the RPi.GPIO library which provides Python functions used to access the pins. We discuss how to set up the pins, apply digital voltages, and generate Pulse Width Modulated signals. We also describe the Tkinter Python library and show how it can be used to access pins through a graphic user interface.
What's included
10 videos3 readings1 assignment1 peer review
10 videosβ’Total 52 minutes
- Module 4 Introduction (Video)β’2 minutes
- Lecture 1.1 - General Purpose IO Pinsβ’6 minutes
- Lecture 1.2 - Protocol Pinsβ’5 minutes
- Lecture 1.3 - GPIO Accessβ’5 minutes
- Lecture 2.1 - General Purpose IO Pins (Updated)β’5 minutes
- Lecture 2.2 - Pulse Width Modulationβ’9 minutes
- Lecture 2.3 - Demo of a Blinkβ’5 minutes
- Lecture 3.1 - Graphic User Interfaceβ’6 minutes
- Lecture 3.2 Tkinter Libraryβ’3 minutes
- Lecture 3.3 - Interactionβ’6 minutes
3 readingsβ’Total 30 minutes
- Module 4 Objectivesβ’10 minutes
- Module 4 Readingβ’10 minutes
- End-of-Course Surveyβ’10 minutes
1 assignmentβ’Total 30 minutes
- Module 4 Quizβ’30 minutes
1 peer reviewβ’Total 60 minutes
- Module 4 Peer Assignmentβ’60 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructor
Explore more from Software Development
- Status: Free TrialJ
Johns Hopkins University
Course
- Status: Free TrialU
University of California, Irvine
Course
Why people choose Coursera for their career
Learner reviews
- 5 stars
74.63%
- 4 stars
19.78%
- 3 stars
4%
- 2 stars
0.79%
- 1 star
0.79%
Showing 3 of 2776
Reviewed on Dec 24, 2015
Really nice and easy introduction to Raspberry Pi and Python. I loved the part when the professor said something about Scratch, like 'we'll not use it, we're way above it'. :)
Reviewed on May 30, 2020
Overall this course leaned me how we use python programming for working with Raspberry Pi which is helpful for me to understand the Python programs.Thank you
Reviewed on Jul 19, 2019
As an intro course to Raspberry Pi platform it's okay. I guess the next course in the series will have assignments that are more difficult and enable us to learn more.
Frequently asked questions
You'll learn how to set up and use a Raspberry Pi, write Python code on it, and connect that code to simple hardware. The course starts with the board and operating system, moves into Linux use and basic programming, and then builds into pin-based control and simple interfaces. Along the way, you'll do practical tasks such as booting the Pi, running your own code, and making an LED respond through the board's pins.
No, you don't need prior Python experience. The course teaches basic Python as part of the learning path, but it moves fairly quickly from simple syntax into running code on the Raspberry Pi and controlling hardware. General comfort with installing software and following setup steps will help, especially in the early lessons.
It can work well for beginners to Raspberry Pi, especially if you want the setup, Linux basics, and coding introduced in one place. The lessons begin with board setup and core concepts before moving into Python and hardware control, so the progression is easy to follow. If you're completely new to programming, expect a bit more effort once the command-line work and code exercises start.
More questions
Financial aid available,
ΒΉ Some assignments in this course are AI-graded. For these assignments, your data will be used in accordance with Coursera's Privacy Notice.
