Interfacing with the Raspberry Pi
Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Interfacing with the Raspberry Pi
This course is part of An Introduction to Programming the Internet of Things (IOT) Specialization
Instructor: Ian Harris
86,186 already enrolled
Included with
Learn more
Ask Coursera
1,613 reviews
1,613 reviews
Skills you'll gain
Tools you'll learn
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 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 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.
What's included
10 videos3 readings1 assignment1 peer review
10 videosβ’Total 69 minutes
- Module 1 - Introduction (video)β’2 minutes
- Lecture 1.1 - Network (Updated)β’5 minutes
- Lecture 1.2 - Secure Shellβ’9 minutes
- Lecture 1.3 - SSH Client/Serverβ’6 minutes
- Lecture 2.1 - SSH Server (Updated)β’11 minutes
- Lecture 2.2 - Network Programsβ’9 minutes
- Lecture 2.3 - Internet Protocolsβ’10 minutes
- Lecture 3.1 - IP Addresses (Updated)β’6 minutes
- Lecture 3.2 - Domain Namesβ’7 minutes
- Lecture 3.3 - Client/Serverβ’5 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
- TCP vs. IP: What's the Difference?β’60 minutes
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.
What's included
9 videos2 readings1 assignment1 peer review
9 videosβ’Total 60 minutes
- Module 2 - Introduction (video)β’2 minutes
- Lecture 1.1 - Socketsβ’5 minutes
- Lecture 1.2 - Sending Data (Updated)β’7 minutes
- Lecture 1.3 - Exceptionsβ’9 minutes
- Lecture 2.1 - Server Codeβ’6 minutes
- Lecture 2.2 - Live Serverβ’6 minutes
- Lecture 2.3 - Internet Controlβ’7 minutes
- Lecture 3.1 - Python Client Demoβ’9 minutes
- Lecture 3.2 - Python Server Demoβ’9 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
- Write a simple web server on your Raspberry Piβ’60 minutes
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.
What's included
11 videos2 readings1 assignment1 peer review
11 videosβ’Total 69 minutes
- Module 3 Introduction (video)β’2 minutes
- Lecture 1.1 - Network Librariesβ’12 minutes
- Lecture 1.2 - Web Servicesβ’7 minutes
- Lecture 1.3 - Public APIsβ’7 minutes
- Lecture 2.1 - Twitter's APIβ’4 minutes
- Lecture 2.2 - Twitter Registrationβ’4 minutes
- Lecture 2.3 - Sending a Tweetβ’4 minutes
- Lecture 2.4 - Sending a Tweet (Demo)β’8 minutes
- Lecture 3.1 - Twython Callbacksβ’6 minutes
- Lecture 3.2 - Tweet Responseβ’4 minutes
- Lecture 3.3 - Responding to a Tweet (Demo)β’9 minutes
2 readingsβ’Total 20 minutes
- Module 3 Objectivesβ’10 minutes
- Module 3 Readingβ’10 minutes
1 assignmentβ’Total 16 minutes
- Module 3 Quizβ’16 minutes
1 peer reviewβ’Total 60 minutes
- Read the Contents of a Web Pageβ’60 minutes
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.
What's included
9 videos3 readings1 assignment1 peer review
9 videosβ’Total 54 minutes
- Module 4 Introduction (video)β’1 minute
- Lecture 1.1 - Camera Moduleβ’4 minutes
- Lecture 1.2 - picamera Libraryβ’5 minutes
- Lecture 1.3 - Capturing Imagesβ’8 minutes
- Lecture 2.1 - Camera (Demo)β’9 minutes
- Lecture 2.2 - PWM on RPIβ’8 minutes
- Lecture 2.3 - Servo Controlβ’7 minutes
- Lecture 3.1 - Servo Codeβ’5 minutes
- Lecture 3.2 - Servo (Demo)β’5 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
- Connect an LED to your Raspberry Piβ’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 Electrical Engineering
- Status: Free TrialJ
Johns Hopkins University
Course
- Status: Free TrialJ
Johns Hopkins University
Course
Why people choose Coursera for their career
Learner reviews
- 5 stars
75.69%
- 4 stars
19.34%
- 3 stars
2.85%
- 2 stars
1.11%
- 1 star
0.99%
Showing 3 of 1613
Reviewed on Apr 3, 2016
I love teaching style of Dr. Harris, simple but inclusive. He guesses what you are thinking while you are watching the video.
Reviewed on Nov 24, 2018
Course is great, but it takes forever to grade classmates. For example, by the end of the last week homework , I had to wait two weeks till someone was available to grade.
Reviewed on May 22, 2016
Good class. not much different than the Arduino one. Useful to learn and use SSH with linux if you do not have a monitor for your Raspberri Pi.
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
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.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you canβt afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, youβll find a link to apply on the description page.
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.
