4.57 out of 5
4.57
2859 reviews on Udemy

Tech Explorations™ Arduino Step by Step: Getting Started

The original comprehensive course designed for new Arduino Makers
Instructor:
Dr. Peter Dalmaris
14,728 students enrolled
English More
Build simple circuits around the Arduino Uno, that implement simple functions.
Write simple Arduino sketches that can get sensor reading, make LEDs blink, write text on an LCD screen, read the position of a potentiometer, and much more.
Understand what is the Arduino.
Understand what is prototyping.
Understand analog and digital inputs and outputs
Understand the ways by which the Arduino can communicate with other devices
Use the multimeter to measure voltage, current, resistance and continuity
Use protoboards to make projects permanent
be productive with the Arduino IDE, write, compile and upload sketches, install libraries
Understand what is Arduino programming, it's basic concepts, structures, and keywords
Detect and measure visible light, color, and ultraviolet light
Measure temperature, humidity and acceleration
Measure the distance between the sensor and an object in front of it
Detect a person entering a room
Detect a noise
Make noise and play music
Display text on a liquid crystal display

This is the original, best-selling Arduino course on Udemy, by Tech Explorations, fanatically supported by Dr Peter Dalmaris. 
It is trusted by thousands of students, and contains 16 hours of content, quizzes, Github code repository, thousands of active student discussions, and countless downloadable and linked resources.

Please don’t be confused by other courses with a similar name.

This course is for the new Arduino Maker. 

Do you have a passion for learning? 

Are you excited about becoming a Maker with the Arduino?

If you answered “yes!” to both, then you are ready to get started!

In making this course, I emphasized the importance of getting the basics right and learning to mastery. As an educator for over 15 years, I know first-hand that hitting a roadblock because you lack the fundamental knowledge to progress can be demotivating. 

In ASbS 2017: Getting Started, I make sure that in the more than 15 hours of video content, mini projects and quizzes, we cover all the basics so that you can enjoy learning about the Arduino.

By the end of the course, you will have a good understanding of the capabilities of the Arduino Uno, the best Arduino for people getting started, and you will be familiar with the capabilities of several of its cousins. 

You will be comfortable with the basic prototyping tools and their usage, the basics of the Arduino programming environment, language and programming.

You will be able to use a variety of components. From simple buttons and LEDs, to visible color and ultraviolet light, and other environment sensors.

Apart from knowing how to use the components that I demonstrate in this course, you will also learn how to read datasheets, how to use libraries on your own, and how to learn the skills you need to create the gadgets you want, on your own. With knowledge comes freedom, and I will help you get there.

I invite you to review the free lectures in the first section of the course to find out more details about it. 

If you are excited about becoming a Maker with the Arduino, join many other Makers and me in Arduino Step by Step 2017: Getting Started!

I look forward to learning with you!

Introduction to the course

1
What is this course about?

In this lecture I will describe the course so that you know exactly what to expect from it.

2
Tools you will need

In this lecture, I will walk you through the, absolutely, basic and necessary tools that you need for this course. Those tools are fewer than you may think. You don't need that much in order to have fun with electronics. 

3
Parts you will need

In this lecture, I will walk you through the hardware and the tools that you need to do the experiments. E.g. LCD screen, buttons shield, a microphone, an infrared motion sensor, and many other bits and pieces.

4
How to get the most out of this course

In this lecture I'd like to show you the features that are available for you during your learning process. Let's have a look first at the structure of each one of the sections. All the lectures are organized into sections. We use the multiple choice quizzes to test and consolidate your knowledge. Brain stretchers to challenge your thinking. Schematics are available to download. Q & A if you need help.

Remember that there is always help available.


Know your Arduino

1
Introduction

In this section, you'll learn about the Arduino and why it's been such an important part of the Maker Revolution. 

2
Getting to know the Arduino Uno: Atmega328P, USB, Shields

In this lecture, you will be walked through the Arduino board, have a look at the components that you see on it and explain what each of those components is and what it does.

3
Getting to know the Arduino Uno: Pins, power, clock

In this lecture, we will look at the different pins and their functions on the Arduino Uno.

4
Using the digital output pins

In this lecture, we look at the Arduino's most important feature, its general purpose input output pins. These are the pins that allow you to interact with external devices like LEDS and buttons.

5
Using the digital input pins

In this lecture,  we look at digital pins as inputs. 

6
Using the analog output pins

In this lecture, we look at the the "analog" output. 

7
Using the analog input pins

In this lecture, we look at the last function of the digital input/output pins -the analog input and how the analog input works.

8
End of section quiz

Test the knowledge that you acquired in this section.

Introduction to communications

1
Introduction

In  this section, we look at the basics of the three communication standards that are implemented in a microcontroller that powers the Arduino. We will look at the serial UART, and I²C which is also known as TWI and SPI communications.

2
Serial (UART) communications

In this lecture, we look at the serial UART.

3
I²C (TWI) communications

In this lecture, we look at the I²C.

4
SPI communications

In this lecture, we look at SPI Communications.

5
End of section quiz

Test the knowledge that you acquired in this section.

Arduino boards

1
Introduction

In this section, we look at various members of the Arduino family :Arduino Uno, Arduino Mega 2560,  Arduino Due, Arduino Zero, the Arduino 101 and, the Arduino Pro Mini. We also look at Arduino compatible boards.


2
Meet some members of the Arduino family

In this lecture we look at some members of the Arduino family.

3
Introducing the Arduino Mega 2560

In this lecture, we look at the Arduino Mega 2560.

4
Introducing the Arduino Due

In this lecture, we look at the Arduino Due.

5
Introducing the Arduino Zero

In this lecture we look at the Arduino Zero.

6
Introducing the Arduino 101

In this lecture we look at the Arduino 101.

7
Introducing the Arduino Pro Mini

In this lecture we look at the Arduino Pro Mini.

8
Introducing Arduino-compatible boards

In this lecture we look at Arduino compatible boards.

9
End of section quiz

Test the knowledge that you acquired in this section.

Prototyping basics

1
Introduction

In this section, you will learn about the basics of prototyping with the Arduino. We look at tools like the breadboard and the motor meter, and show you how to solder and use protoboards.

2
Using the breadboard

In this lecture we will look at prototyping basics and the breadboard. 


3
Using jumper wires

In this lecture we look at jumper wires.

4
The absolutely essential tools

In this lecture we look at the essential tools.

5
Powering your Arduino with power supplies

In this lecture we look at powering your Arduino with power supplies.

6
Using the multimeter to measure voltage

In this lecture we look at working with the multimeter to measure voltage.

7
Using the multimeter to measure current

In this lecture we look at working with the multimeter to measure current.

8
The multimeter - Resistance and continuity

In this lecture we look at working with the multimeter to measure resistance and continuity.

9
Introduction to soldering - the soldering iron

In this lecture we start our introduction to soldering.

10
Soldering - preparation and using holders

In this lecture we look at soldering- preparation and using holders.

11
Soldering - using wire cutters and fume extractor

In this lecture we look at Soldering- using wire cutters and the fume extractor.

12
Soldering - Simple maintenance tips for your solder iron

In this lecture we look at Soldering- Simple maintenance tips for your soldering iron.

13
A demonstration of soldering a header onto a breakout board

In this lecture we demonstrate soldering a header onto a breakout.

14
An introduction to protoboards

In this lecture we look at an introduction to protoboards.

15
End of section quiz

Test the knowledge that you acquired in this section.

The Arduino IDE

1
Introduction

The way by which you teach the Arduino what to do, is by programming it. An Arduino program is called a sketch and the best way to write one is to use the free programming environment that is offered by the company that makes the Arduino. This programming environment called the Arduino IDE or Arduino Integrated Programming Environment has been designed with a new Arduino maker in mind and provide a gentle introduction to programming.

The Arduino IDE is used to write a sketch, check that is correct and provide a simple way of uploading it to your Arduino so that it runs on it. In this section, I will introduce you to the Arduino IDE and walk you through all of its most important features and prepare you for becoming very productive with it.

2
An introduction to the Arduino IDE

What I want to talk about in this lecture is the Arduino integrated development environment, the IDE, the free tool that you use in order to program your Arduino. 

In a later lecture in the same section I'm going to show you how to use the USB port to program you Arduino

3
Getting and installing the Arduino IDE

In this lecture we look at getting and installing the Arduino IDE.

4
The Arduino IDE - Understanding the Preferences pane

In this lecture we look at the Arduino IDE- Understanding the preferences pane.

5
The Arduino IDE - Understanding the Menu items

In this lecture we look at The Arduino IDE menu items.

6
How to upload a sketch to your Arduino

In this lecture we look at How to upload a sketch to your Arduino.

7
How to upload a sketch to your Arduino - For Windows users

In this lecture we look at How to upload a sketch to your Arduino -for Windows.

8
End of section quiz

Test the knowledge that you acquired in this section.

Introduction to Arduino programming

1
Introduction

In the previous section, you learned about the Arduino IDE, the tool of choice for people new to the Arduino. When it comes to the Arduino and microcontrollers in general, programming is a case skill. It's as important at least as a basic understanding of electronics but fear not. It can achieve a lot by achieving a basic level of competency in programming. In this section, I will introduce you to the Arduino programming basics. You will learn about functions, variables, and control structures. You'll learn how to control the Arduino digital input and output pins. You will use this knowledge to control LEDs and read the state of buttons and the geometers, some of the most commonly used components in Arduino prototyping.

2
An introduction to Arduino programming

In this lecture we look at an introduction to Arduino programming.

3
Understand the basic parts of an Arduino sketch

In this lecture we look at Understanding the basic parts of an Arduino sketch.

4
Getting started with custom functions

In this lecture we look at getting started with custom functions.

5
Creating custom functions and the return keyword

In this lecture we look at creating custom functions with parameters.

6
Using variables

In this lecture we look at using variables.

7
Understanding variable scope

In this lecture we look at Understanding the variable scope.

8
Understanding constants

In this lecture we look at understanding constants.

9
Introduction to control structures: The "if" statement

In this lecture we will talk about loops and conditionals. Conditionals are useful when you want to change the flow of execution in your sketch, and loops are useful when you want to repeat a block of code multiple times. Very often, these two work together and that's why I discuss them here together. Let's start with a conditional, and let's have a look at the simplest conditional out there. It's the "if" statement. 

10
Introduction to control structures: The "while" statement

In this lecture we will look at the "while" structure. 

"While" is a way to create a loop. 

There is a decision involved, so it's not strictly speaking a controlled structure. It's a looping structure, a repeat structure.

11
Introduction to control structures: The "For" statement

Another very common looping structure that is available on the Arduino is the "for" loop. 

The "for" loop is a way to explicitly repeat a block of code a specific number of times that we have predetermined. 

In this lecture I will show you how this works.

12
Introduction to control structures: The "Switch" statement

The next structure that I'd like to show you for this part of the lecture is the "switch" structure. 

The "switch" structure provides an easy way to allow you to jump to a particular part of the structure, depending on the value of the variable. 

This is useful if you have things such as a bunch of buttons and you want your gadget to do something different depending on which button was pressed. 

13
Digital output - how to control an LED

Now that you have a good, even though it's just the beginning, understanding of some of the basic concepts in Arduino programming. You can move on and have a look at how to use the digital input and output pins that come with the Arduino. Of course input and output are fundamental features of the market controller can connect devices to special pins on your Arduino and to read or change the state of these pins, through special instructions in your sketch. There are two kinds of input and output pins on the Arduino. They are digital and analog pins.

In this lecture,we'll start with digital pins.

14
Digital input - how to read the state of a button

Getting an LED to blink is quite easy once you understand how to configure a digital pin to become an output control, the delay, and so on fairly simple.

But what about a button? A button requires to configure a digital pin as an input, so that we can use it to detect the button's state. In this lecture, I will show you how to do this.
15
Analog input - how to read the state of a potentiometer

In this lecture we will continue our work with the Arduino's input/output pins by taking a look at the analog pins. 

Analog signals on microcontrollers is a tricky topic. Most microcontrollers can't generate true analog signals, that means they cannot create and output true analog signals, like an audio signal for example. But they are better at reading analog signals, so they can read for example, the output of a microphone. The atmega328p which is used in the Arduino Uno simulates analog signals using a technique called "pulse width modulation", and I'll talk a little bit about it a bit later when we look at how we can get the LED to, instead of just turning on and off, to get it to fade gradually from an fully off state to a fully on state.

16
Analog output - how to create a fading LED

Reading an analog value is very simple. But what about creating an analog signal? And why would we want to do this? 

In this lecture, I will explain both.

17
Introduction to the RGB (color) LED

In this lecture, what I'd like to do is to first, show you how to use an RGB LED, a red, green, blue color led to, of course, create red green and blue light coming out of the LED.

18
Wiring the RGB LED

In this lecture I will show you how to wire up your RGB LED.

19
RGB LED: creating colors

In this lecture I will show you how to combine the red green and blue color components to create other colors.

20
Using a library to control an RGB LED with PWM

In this lecture I will show you how to use a library in order to make RGB color control much easier.

21
Learning more with the Arduino language documentation

In this lecture I will show you some of the best resources available for people working with the Arduino. You will need them!

22
End of section quiz

Test the knowledge that you acquired in this section.

Measuring light and color

1
Introduction

In this section, I will introduce you to your first set of sensors. You can use these sensors to detect the visible light, light color, and ultraviolet light. Sensors like these can be used in all sorts of gadgets. You can use a light sensor to detect light intensity in a room so that your home automation system can figure out when to turn on the lights. You can use an RGB sensor to sort LEGO bricks according to color, and then ultraviolet sensor to know if you should stay away from the outdoors. These are just some examples. There are so many more in industrial and consumer applications. Let's have a look at light sensors.

2
What is a photoresistor and how to wire it

In this lecture we're going to play around with the photoresistor. The photoresistor is one of the simplest sensors that you can use with your Arduino. It's a very simple analog device you measure voltage as it spins and that gives us an indication of the intensity of the light in the area around the sensor.


3
How to select the appropriate fixed resistor for a photoresistor

In this lecture I will explain how to select the appropriate fixed resistor to use with your photoresistor. 

4
Using the Ultra-Violet light sensor

In this lecture we're going to have a look at this UV light sensor. Ultra-violet radiation, is part of the light spectrum that is both useful and also harmful to humans

5
An introduction to the RGB Color sensor

In this lecture we're going to play a run with an RGB light sensor. This is the TCS 35725 sensor and is packaged nicely as a breakout from Adafruit. Adafruit has also supplied their really nice, easy to use library that I'll be using in my demonstration later. This light sensor is based on an integrated circuit right in the middle of the breakout. It's got also a very bright, pure, wide any day in order to illuminate the scene.

6
Wiring the RGB Color sensor

In this lecture I will show you how to wire the RGB color light sensor.

7
Mini project: copy a color to an RGB LED using an RGB Color sensor

In this lecture, I will demonstrate an interesting experiment that uses the RGB color sensor. I will use it to get a reading of a color from the sensor and then copy essentially that color and display it through my RGB LED.

8
End of section quiz

Test the knowledge that you acquired in this section.

Measuring temperature, humidity and pressure

1
Introduction

Building an environment monitoring gadget, is one of the first things that people new to the Arduino make. Just looking at these sensors, expose you to a great variety of types from simple and cheap analog devices to sophisticated, highly accurate, and factory calibrated digital devices. 

This section has a lot to offer. In this section, I will demonstrate sensors such as the hugely popular DHT 22 and 11 sensor, the analog thermistor which will give us the opportunity to study a way to improve the accuracy of analog measurements with the Arduino, and the very accurate MCP9808. Let's learn about temperature, humidity, and pressure sensors

2
Using a DHT22 sensor to measure temperature and humidity

In this lecture we're going to talk about the DHT22 or DHT11 depending on which version of the sensor you have. 

It's a very, very popular, very versatile and capable sensor that in a single package allows you to measure temperature and humidity. It's a digital sensor which means that the information that you get out of it is already containing the temperature and the humidity and you don't have to do any calculations, any conversions at all. What you get is what you need. 

It's very simple to use as well, and in this lecture I'm going to go straight into demonstrating the wiring and then playing around with the sketch that extracts the temperature and the humidity out of it.

3
An introduction to the Thermistor

In this lecture we're going to play around with another very simple analogue component, analogue sensor, the thermistor. In the thermistor, the resistance of the device changes as the temperature changes and through a circuit like the one that we saw in the photo resistor lecture, the voltage divider, we are able to detect that change in resistance by measuring the voltage across the pins of the thermistor.

4
Wiring the Thermistor

In this lecture, I will show you how to wire the thermistor.

5
How to calculate the temperature from the thermistor resistance

In this lecture I will show you how to calculate the temperature from the thermistor readings.

6
Thermistor: getting a temperature using a library

In this lecture I will show you how to use a library to extract more accurate and easier temperature readings from the thermistor.

BEWARE! In the video, I have mistakenly connected the thermistor in the opposite position in the voltage divider. Please take care to follow the schematic, not the video!

7
Thermistor: improving the accuracy of analog readings with AREF

It is possible to improve the accuracy of the analog-to-digital conversion on the Arduino by using a different reference. This will result to more accurate readings from devices like the thermistor. 

In this lecture, I will show you how to do this.

8
An introduction to measuring temperature with the TMP36

In this lecture we're going to look at a classic analog sensor, the TMP36. This little device here, very cheap, is used specifically for taking temperature measurements. It's an analogue sensor which means that, you plug it into one of the analog pins on your Arduino and then use a small function to convert the voltage that you get out of this device, into a meaningful number.

9
Wiring the TMP36 and a demonstration sketch

In this lecture I will show you how to wire the TMP36 sensor.

10
An alternate wiring of the TMP36

One thing that you can do in order to get a slightly better reading as I briefly mentioned earlier is to the change the connection of the supply voltage to the sensor from the five volts pin to the 3.3 volt pin. The reason that we do that and the reason why this can potentially improve your readings slightly is because, on the Arduino Uno, the five volts supply comes from the USB port which comes from my computer or from an external supply. 

I will show you how to do this in this lecture.
11
An introduction to the MCP9808 for very accurate temperature readings

If you are looking for a temperature sensor that has got really good accuracy, much better than the DHC22 and the thermistor that we’ve seen so far, then you’re looking for something like this. 

This is the MCP9808, it’s a break out from other fruit, contains a temperature sensor on board that provides up to plus or minus 0.25 centigrade of accuracy. It’s an ice squid-C device Arduino it comes with a very convenient easy to use library as well. As a part of the break out, you also get lines that allow you to change and control the address, so that there’s no interference with other ice squid-C devices on your gadget, on your circuit that happened to use the same address. I’m going to show you how that works. 

In this lecture, we’ll start as usual with a quick look at the data sheet to understand what this device is about and its operational characteristics. Then we look at the wiring, implement the device on the breadboard and play around with the sketch. 

12
MCP9808: Wiring

In this lecture I will show you how to wire the MCP9808.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.6
4.6 out of 5
2859 Ratings

Detailed Rating

Stars 5
1789
Stars 4
843
Stars 3
188
Stars 2
31
Stars 1
9
690f6bfd9bbf4a274219484de2546659
30-Day Money-Back Guarantee

Includes

16 hours on-demand video
2 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion