The Raspberry Pi uses a variety of input/output devices based on protocols such as HDMI, USB, and Ethernet to communicate with the outside world. In this class you will learn how to use these protocols with other external devices (sensors, motors, GPS, orientation, LCD screens etc.) to get your IoT device to interact with the real world. Most physical devices use analog signals; however computer hardware is digital so in this class you will learn how these signals are converted back-and-forth and how this must be considered as you program your device. The basic design of a sensor-actuator system will also be covered. You will also learn how to build more sophisticated hardware systems using Raspberry Pi expansion boards to create fun and exciting IoT devices. Please note that this course does not include discussion forums.
This course is part of the An Introduction to Programming the Internet of Things (IOT) Specialization
Offered By


About this Course
Skills you will gain
- Python Programming
- Application Programming Interfaces (API)
- Internet Of Things (IOT)
- Raspberry Pi
Offered by

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.
Syllabus - What you will learn from this course
Module 1
This module presents the use of the Raspberry Pi to connect to the Internet, from a user perspective. The first way to use the Raspberry Pi as a networked device is to use it as a general-purpose computer rather than as a programmed IoT device. Using networking with a Raspberry Pi in this way is similar to using the network from any Linux machine, and we present its use in this module. We also present the standard Internet protocols that must be understood in order to develop network programs.
Module 2
This module introduces the networking socket interface that is used to transfer data across the network programmatically. An essential aspect of the Internet of Things is for your IoT device to send and receive data on the Internet, and the socket interface is key to enabling that. We describe how to use socket in Python to act as both a client and a server.
Module 3
This module focuses on how to have your Raspberry Pi interact with online services through the use of public APIs and SDKs. Many interesting and useful services are available in the cloud and this module describes how to write code that accesses those services. We define what an Application Programming Interface (API) is and what a Software Development Kit (SDK) is. We present some API examples and we show the use of the Twitter API in detail using the Twython package.
Module 4
In this module we show how to use the Raspberry Pi to interface with more complicated sensors and actuators. We explore the use of the Raspberry Pi camera module and the use of a servo. The Raspberry Pi camera module is used through the picamera library, which we describe. Servos are controlled by generating pulse width modulated signals and varying their pulse width using library functions.
Reviews
- 5 stars75.59%
- 4 stars19.53%
- 3 stars2.88%
- 2 stars1.02%
- 1 star0.96%
TOP REVIEWS FROM INTERFACING WITH THE RASPBERRY PI
A very good course with good videos of explanation. Also includes demo videos which are very helpful. Overall the course is very interesting and knowledgeable.
starting with this 5th course of 6 corses in this specialization was very benificial for me to understanding the actual meaning of IOT. Thank you
I love teaching style of Dr. Harris, simple but inclusive. He guesses what you are thinking while you are watching the video.
Nicely structured course for beginners in the field of IoT. Instructor is always excellent and wonderful experience with evaluation in terms of quizzes.
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.

Frequently Asked Questions
When will I have access to the lectures and assignments?
What will I get if I subscribe to this Specialization?
Is financial aid available?
More questions? Visit the Learner Help Center.