About this Course
54,738 recent views

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Approx. 10 hours to complete

Suggested: 12 hours/week...


Subtitles: English

Skills you will gain

Computer ProgrammingPython ProgrammingInternet Of Things (IOT)Raspberry Pi

100% online

Start instantly and learn at your own schedule.

Flexible deadlines

Reset deadlines in accordance to your schedule.

Approx. 10 hours to complete

Suggested: 12 hours/week...


Subtitles: English

Syllabus - What you will learn from this course

4 hours to complete

Module 1

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.

10 videos (Total 55 min), 4 readings, 2 quizzes
10 videos
Lecture 1.1 - Raspberry Pi Board (Updated)2m
Lecture 1.2 - Raspberry Pi Processor5m
Lecture 1.3 - Raspberry Pi vs. Arduino (Updated)7m
Lecture 2.1 - Operating System Benefits7m
Lecture 2.2 - Processes8m
Lecture 2.3 - Raspberry Pi IoT4m
Lecture 3.1 - Raspberry Pi Setup5m
Lecture 3.2 - Raspberry Pi Configuration5m
Lecture 3.3 - Overclocking (Updated)8m
4 readings
Pre-Course Survey10m
Course Overview10m
Module 1 Objectives10m
Module 1 Reading10m
1 practice exercise
Module 1 Quiz16m
3 hours to complete

Module 2

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.

10 videos (Total 44 min), 2 readings, 2 quizzes
10 videos
Lecture 1.1 - Linux Basics4m
Lecture 1.2 - Login2m
Lecture 1.3 - Linux Filesystem (Updated)3m
Lecture 2.1 - Navigating the Filesystem (Updated)8m
Lecture 2.2 - Text Editors (Updated)4m
Lecture 2.3 - Accessing Files4m
Lecture 3.1 - Permissions6m
Lecture 3.2 - Processes3m
Lecture 3.3 - Linux Graphic User Interface3m
2 readings
Module 2 Objectives10m
Module 2 Reading10m
1 practice exercise
Module 2 Quiz16m
3 hours to complete

Module 3

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.

10 videos (Total 45 min), 2 readings, 2 quizzes
10 videos
Lecture 1.1 - Python on Raspberry Pi7m
Lecture 1.2 - Python Programming Environment6m
Lecture 1.3 - Python Expressions3m
Lecture 2.1 - Strings6m
Lecture 2.2 - Functions4m
Lecture 2.3 - Function Arguments3m
Lecture 3.1 - Lists3m
Lecture 3.2 - List Methods3m
Lecture 3.3 - Control Flow5m
2 readings
Module 3 Objectives10m
Module 3 Reading10m
1 practice exercise
Module 3 Quiz16m
4 hours to complete

Module 4

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.

10 videos (Total 52 min), 3 readings, 2 quizzes
10 videos
Lecture 1.1 - General Purpose IO Pins6m
Lecture 1.2 - Protocol Pins4m
Lecture 1.3 - GPIO Access4m
Lecture 2.1 - General Purpose IO Pins (Updated)4m
Lecture 2.2 - Pulse Width Modulation8m
Lecture 2.3 - Demo of a Blink5m
Lecture 3.1 - Graphic User Interface6m
Lecture 3.2 Tkinter Library3m
Lecture 3.3 - Interaction6m
3 readings
Module 4 Objectives10m
Module 4 Reading10m
End-of-Course Survey10m
1 practice exercise
Module 4 Quiz16m
259 ReviewsChevron Right


started a new career after completing these courses


got a tangible career benefit from this course

Top reviews from The Raspberry Pi Platform and Python Programming for the Raspberry Pi

By GBMar 9th 2018

Extremely helpful if you want to start using Raspberry Pi. Gives you the required knowledge to kickstart your Raspberry Pi learning and you get a hint of python programming as well which is useful

By JPApr 28th 2017

It was very good, all the basics about python and the raspberry pi platform. I would like if you publish a book to read about the topics, for example I have been reading the book "Think Python".



Ian Harris

Department of Computer Science

About University of California, Irvine

Since 1965, the University of California, Irvine has combined the strengths of a major research university with the bounty of an incomparable Southern California location. UCI’s unyielding commitment to rigorous academics, cutting-edge research, and leadership and character development makes the campus a driving force for innovation and discovery that serves our local, national and global communities in many ways....

About the An Introduction to Programming the Internet of Things (IOT) Specialization

Design, create, and deploy a fun IoT device using Arduino and Raspberry Pi platforms. This Specialization covers embedded systems, the Raspberry Pi Platform, and the Arduino environment for building devices that can control the physical world. In the final Capstone Project, you’ll apply the skills you learned by designing, building, and testing a microcontroller-based embedded system, producing a unique final project suitable for showcasing to future employers. Please note that this specialization does not offer discussion forums....
An Introduction to Programming the Internet of Things (IOT)

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.