From 0 to 1: Raspberry Pi and the Internet of Things
3.9 (370 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
6,005 students enrolled

From 0 to 1: Raspberry Pi and the Internet of Things

Have a blast using the Raspberry Pi to do some home automation and understand the Internet of Things
3.9 (370 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
6,005 students enrolled
Created by Loony Corn
Last updated 6/2017
English [Auto]
Current price: $59.99 Original price: $99.99 Discount: 40% off
2 days left at this price!
30-Day Money-Back Guarantee
This course includes
  • 7 hours on-demand video
  • 32 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Understand what the internet of things and physical computing are
  • Know their way around a Raspberry Pi
  • Use the Raspberry Pi in Home Automation projects
  • Think of different IoT applications and visualize the components needed to build them
  • Do cool things like control switches in their home with their smartphone
  • No real prerequisites. Beginner level understanding of electric circuits and programming might help but its not mandatory
  • If you intend to do the physical computing projects, go ahead and purchase a Raspberry Pi - but the course does give you advice on things you might need to get for your automation projects so you can wait to decide as well.
  • Taught by a team of electrical engineers from Stanford and IIT Madras.

An Internet-Of-Things course for everyone - accessible yet serious, to take you from absolute beginner to a solid intermediate level - built around Home Automation using Raspberry Pi.

This is a course is for everyone. You need not be an electrical engineer, or an engineer at all. We explain all engineering or automation concepts from absolute scratch.

This is an Internet-of-Things course, not merely a Raspberry Pi course. This is important because we think too many courses end up becoming like manuals for the Raspberry Pi, or the Arduino, or some specific hardware device. This course is careful to generalize

The course takes you to a solid intermediate level. The objective is to get you to a point where if you imagine a really cool IoT application, you will be able to independently figure out how to implement it.

We focus on Home Automation using Raspberry Pi for our use-cases. This is so that you can immediately put it to use around the home (turn that music down without getting off the couch!)

As with all our courses, this one too is quirky. The examples are irreverent. Lots of little touches: repetition, zooming out so we remember the big picture, active learning with plenty of quizzes. There’s also a peppy soundtrack, and art - all shown by studies to improve cognition and recall.

What's Covered:

Internet of Things : Sensors, Actuators, Microcontrollers, Arduino, Raspberry Pi, Physical Computing, Smart homes

Raspberry Pi 2 Model B Components, System on a Chip (SOC) , Input Output Interfaces, SD Card / Secondary Storage, Choice of Operating Systems, RISC/CISC Architectures, x86 vs ARM, Raspbian OS installation, Raspbian tour, Linux Shell commands overview, Installing softwares, Connecting to the Internet

Physical Computing: Sensors (Photoresistors, Ultrasonic sensors, motion sensors, temperature and humidity sensors), Relays, LEDs, Push buttons, Basics of circuit design, Ohm's law, RC circuit, GPIO pins, Serial and Parallel interfaces, UART, SPI, I2C, Pulse Width Modulation (PWM), Python (RPi DOT GPIO), WiringPi, Node js (RPi-GPIO)

Home Automation projects: Measuring Distance, Measuring Light Intensity, Controlling switches with sensors, Controlling switches over local and external networks 

Who this course is for:
  • Yep! Anyone who is interested in Internet of Things, Physical computing, hardware hacking and wants to get their hands dirty with real projects
  • Yep! Non-engineers / Non-tech persons who are interested in home automation projects or Raspberry Pi
  • Yep! People who are looking to understand the details of IoT and want to think of new startup ideas in the IoT space or work in this space
  • Yep! Engineers who have book knowledge but want some help with practical application of electronics concepts
Course content
Expand all 37 lectures 07:11:30
+ What this course is about
1 lecture 03:08

We - the course instructors - start with introductions. We are a team that has studied at Stanford, IIT Madras, IIM Ahmedabad and spent several years working in top tech companies, including Google and Flipkart.

Next, we talk about the target audience for this course: There is no bar. Even absolute beginners can take this course. It starts with the basics and builds up to solid intermediate level home automation projects with the Raspberry Pi.

At the end of this course, you should be able to confidently build an IoT project on your own.

Preview 03:08
+ What is the Internet of Things?
3 lectures 45:20

Tech companies are buzzing with anticipation about the Internet of Things. What is it and why should you care? This class takes you through the possibilities that the Internet of Things can open up. It also explains in brief how it can be achieved.

What is the internet of things and why should you care?

We'll start with understanding the basic setup of a 'smart' home. The thing that makes it smart is a special type of computer. Microcontrollers are examples of special purpose computers that can be used for automating things.

What makes a home smart?

We'll talk about Arduino boards which are microcontroller based DIY kits and very popular for IoT experimentation. The Raspberry Pi is a tiny credit card sized computer that packs quite a punch.

Preview 15:37
Internet of Things
3 questions
+ Pi's Anatomy
4 lectures 48:42

The Raspberry Pi is tiny but still packs quite a punch. The Broadcom System on A Chip (SOC) is the secret sauce that makes this possible.

The brain : Raspberry Pi's Microprocessor

You can connect many things to a Raspberry Pi - Camera. HDMI, audio, GPIO - this class takes you on a tour of

the Raspberry Pi Board

Exploring the Raspberry Pi board

The Raspberry Pi's SOC only has a small RAM. Where do you store your data, OS etc then? Use a Micro-SD card to store all your files and data.

Raspberry Pi : Where is the memory?

The Raspberry Pi only runs specific kinds of operating systems - but there is still a lot of choice. Beef up on your OS fundamentals - RISC, CISC architectures, Open source vs closed source and make an informed choice of OS.

Operating systems : Make an informed choice
Raspberry Pi
3 questions
+ Getting Started
6 lectures 01:17:43

It's time to get started. We'll walk you through the steps involved in installing an Operating system.

Install the Operating system

Raspbian is the OS we've chosen to install. It's pretty similar to Debian - a linux distribution. Go on a tour of the OS.

Let's go on a tour : Raspbian OS

Walk through a few useful linux shell commands including grep.

Getting Comfortable : Linux Shell commands

Adding a user and giving them permissions is not as straightforward as Windows. Redirection symbols come in real handy when you want to capture or parse the output at a command line.

User permissions on the Raspberry Pi

Installing a software requires a few specific commands. These will be a lifesaver, whenever you use any Linux based OS in the future.

Installing a software

Connecting your Raspberry Pi to the internet can be a little tricky if you have never worked on a Linux based OS. We'll walk you through it step by step and there is a guide attached as well.

Connecting your Pi to the Internet
2 questions
+ Coding with Python - It's easy as Pi
8 lectures 55:19

If you are absolutely new to coding, don't be intimidated in the least - its just like cooking.

Coding is like Cooking

A list is a list, as the name implies. Everything in life is a list, including strings

A List is a List

Let's do some stuff with lists.

Playing with Lists

Dictionaries, the name itself best describes what they are: collections of key-value pairs that you can look up blazingly fast. If-Else Statements come in real handy when you need to check for a condition.

Dictionaries and If-Else

Ever wondered what's the biggest difference between Excel, and a serious programming language? Loops. Loops are big productivity boosters.

Don't Jump Through Hoops, Use Loops

Lists and Dictionaries are inextricably linked with loops. Use loops to do something with each element of a list or each key-value pair of a dictionary.

Lists, Dictionaries and Loops

If coding is like cooking, functions are like food processors. They automate repetitive tasks by mechanically taking stuff in and churning stuff out.

Functions are like Foodprocessors

Modules are awesome, you can do amazingly complex things by importing a module, without having to code stuff from scratch.

Stay cool : Import a module
2 questions
+ Physical Computing with the Raspberry Pi
4 lectures 57:53

Walk through the various steps involved in a physical computing project. These are general enough that you can use this same process with any project , regardless of whether it is a Raspberry Pi that you're using as the main unit.

Raspberry Pi and Physical Computing : How stuff works

Devices communicate through interfaces, these are boundaries that connect them to other devices and define how the communication will be. Digital communication starts with binary and includes many possible interfaces -Serial, parallel, UART, Serial Peripheral Interface (SPI) and I2C. Pulse Width Modulation is a way to convert digital to analog.

Establish the first link : How do devices communicate?

This is the most critical step in physical computing - designing a circuit that connects your Raspberry Pi to other devices. We'll start from basics - what is the Ohm's law? What is resistance? Understand the specific roles that the different GPIO pins on the Raspberry Pi play.

Put the pieces together : Designing a circuit

To tie it all up, you'll need to write a program that controls the devices in your circuit. RPi.GPIO in Python or WiringPi in C are options but the basic steps are the same.

Tie it all up : Writing the code
Physical Computing
2 questions
+ Let's have some fun! Home Automation projects
10 lectures 02:07:28

Here are few things you might want to add to your shopping list.

Meet the players: A few common electrical components

Our first physical computing project! Have some fun turning an LED on or off with your Raspberry Pi.

Getting our feet wet: Flash an LED

Read input from a Push Button, which is a tiny switch.

Push some buttons : Reading an input

Take a reading from a photoresistor which is a light sensor. Use an RC circuit to measure the resistance of the photoresistor.

Our first sensor : How bright is it in here?

Use the Ultrasonic sensor to figure out if there is something is near the Raspberry Pi - and how far away it is.

Who goes there? : Detect an object & measure distance with an ultrasonic sensor

We'll build upon the previous 2 projects. If a person walks into a room and the room is too dark - turn on the light switch. The project uses 3 circuits - Light sensor, Ultrasonic sensor, Relay to control a switch

Get ready for Magic 1 : Automate a switch using a relay and sensors

We'll build upon the previous 2 projects. If a person walks into a room and the room is too dark - turn on the light switch. The project uses 3 circuits - Light sensor, Ultrasonic sensor, Relay to control a switch

Get ready for Magic 2 : Automate a switch using a relay and sensors
Control a relay from anywhere - I
Control a relay from anywhere - II
Setting up a video feed with the Pi Camera
2 questions
1 question
+ For Arduino lovers: WiringPi
1 lecture 15:57

WiringPi is a library that was written for Arduino like programming on the Raspberry Pi. Pulse Width Modulation is a way to convert digital to analog - we'll explore both of these in this class .

WiringPi and Pulse Width Modulation
1 question