We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Arduino Step by Step

Getting Started

Dr. Peter Dalmaris

UPDATED:

I have added new lectures in the first half of the course. You will find the new lectures in sections “Know your Arduino Uno”, “Arduino boards and kits”, and “The Arduino IDE”.

Read more

UPDATED:

I have added new lectures in the first half of the course. You will find the new lectures in sections “Know your Arduino Uno”, “Arduino boards and kits”, and “The Arduino IDE”.

In these lectures, I cover the latest developments in Arduino software and hardware, including topics such as the Arduino Web IDE, the upcoming Arduino IDE 2.0, and the modern Arduino MKR and Nano IoT board families.

I have also verified all links to external websites and other resources, like data sheets, and in many cases, we have added new links to external resources.

UPDATED: January 2020

I have updated this course with a new section in which you will learn how to use arrays in your Arduino sketches. This is a very useful skill, as you can program repetitive tasks with just a few lines of code. Enjoy.

This is the original, legendary Arduino course on Udemy by Tech Explorations, fanatically supported by Dr Peter Dalmaris. 

It is trusted by thousands of students and contains over 16 hours of content, quizzes, a 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, you are ready to start.

In 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 Arduino Step by Step Getting Started, I make sure that in the more than 18 hours of video content, mini projects and quizzes, we cover all the basics so 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 colour and ultraviolet light and other environmental sensors.

Apart from knowing how to use the components 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. 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 learn 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 Getting Started.

I look forward to learning with you.

Enroll now

What's inside

Learning objectives

  • 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
  • Learn about the arduino ide 2.0 and the arduino web editor
  • Show more
  • Show less

Syllabus

Introduction to the course

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

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.

Read more

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. 

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 multiple choice quizzes to test and consolidate your knowledge. Brain stretchers to challenge your thinking. Schematics are available to download.


Update 2022 brief
Know your Arduino

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

The Arduino Uno over the years

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.

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

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.

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

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

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

Test the knowledge that you acquired in this section.

Introduction to communications

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.

In this lecture, we look at the serial UART.

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

In this lecture, we look at SPI Communications.

This is a tour of some of the Arduino boards that you can find in the market. The variety of boards often confuse people new to the platform. These lectures will help avoid this confusion.

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.


Arduinos past and present
Classic Arduinos

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

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

In this lecture, we look at the Arduino Due.

In this lecture we look at the Arduino Zero.

In this lecture we look at the Arduino Pro Mini.

In this lecture we look at Arduino compatible boards.

Modern Arduinos
Arduino MKR
Arduino Nano
Kits
Arduino Student Kit
Arduino Explore IoT Kit
Seeed Studio Arduino Sensor kit
DFRobot Beginner Kit for Arduino
The Arduino is all about prototyping with electronics. This section will explain the basic tools used in prototyping with the Arduino

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.

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


In this lecture we look at jumper wires.

In this lecture we look at the essential tools.

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

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

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

Important notice: This video contains an error when I (try to) measure current with me low-cost multimeter. In the video, you can notice that the red lead is connected to the voltage "V" socket. This is appropriate for voltage measurements, but for current I should have moved the red lead to the "A" socket. I will re-do this lecture, however in the meantime, please remember that when you want to measure current, connect your black probe to the GND socket, and the red probe to the "A" socket.

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

The Arduino Student Kit multimeter

In this lecture we start our introduction to soldering.

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

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

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

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

In this lecture we look at an introduction to protoboards.

A comprehensive review of Arduino's programming tool

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.

Arduino IDE 1.8
Arduino IDE 2.0

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

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

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

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

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

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

Arduino programming

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.

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

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

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

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

In this lecture we look at using variables.

In this lecture we look at Understanding the variable scope.

In this lecture we look at understanding constants.

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. 

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.

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.

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. 

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.

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.

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.

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.

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.

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

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

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

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

Arduino programming: Arrays
Introduction to this section
Introduction to Arrays
Arrays, Example 1
Arrays, Example 2
Arrays, Example 3
Arrays, Example 4
Measuring light and color

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Further develops and enhances existing knowledge and experience with the Arduino
Taught by highly regarded experts in the field of computer science and electrical engineering
Covers a comprehensive overview of the Arduino and its functionalities
Provides practical and hands-on experience through various projects and experiments
Prerequisites may be necessary for individuals lacking fundamental knowledge in electronics and programming
Requires access to specific tools and materials for practical application of concepts

Save this course

Save Arduino Step by Step: Getting Started to your list so you can find it easily later:
Save

Reviews summary

Arduino beginner's step-by-step

This beginner-friendly course on Arduino includes over 100 videos and quizzes, along with a sample of 250 student reviews. The course delves into the basics of Arduino, including hardware, software, and programming, while also covering sensors, electronics, and projects. The instructor's clear explanations, well-organized structure, and hands-on approach have garnered positive feedback from students of varying experience levels. According to students, the course's strengths include: * Comprehensive coverage of Arduino fundamentals * Well-paced explanations and detailed demonstrations * Practical projects to reinforce learning * Focus on understanding rather than memorization * Supportive instructor and active Q&A forum While the course may be slightly slow-paced for some, its thoroughness and emphasis on foundational concepts are highly valued by beginners. Students appreciate the instructor's engaging presentation style and his willingness to go into detail to ensure understanding. The inclusion of quizzes and projects helps learners assess their progress and apply their knowledge in practical ways. Overall, this Arduino course is highly recommended for beginners who want to build a solid foundation in the subject. With its clear instruction, engaging format, and focus on hands-on learning, the course effectively prepares students for further exploration and project development in the Arduino ecosystem.
The instructor is supportive and responsive to students' questions. He actively participates in the Q&A forum and provides timely and helpful feedback. His enthusiasm for the subject matter is evident in his interactions with students.
"The instructor is very supportive and always willing to answer questions."
"I really appreciated the instructor's quick and helpful responses to my questions."
"The instructor's enthusiasm for the subject matter was contagious."
The course is well-structured and organized, making it easy for students to navigate and find the information they need. The instructor provides a clear outline of the course content and breaks it down into manageable sections.
"The course is very well organized and easy to follow."
"I really liked the logical progression of the course."
"The instructor did a great job of structuring the course and presenting the material in a logical way."
The instructor provides detailed explanations of the concepts and principles behind Arduino. He takes the time to ensure that students understand the underlying mechanisms and not just memorize the steps. His explanations are clear, concise, and easy to follow.
"Dr. Dalmaris explains the concepts very well and provides a lot of background information."
"The instructor's explanations were very clear and he provided a lot of useful examples."
"I found the instructor's explanations to be very thorough and easy to understand."
The course emphasizes hands-on learning, encouraging students to experiment with Arduino and build their own projects. The instructor provides clear instructions and demonstrations, enabling students to follow along and apply their knowledge in a practical way.
"I really enjoyed the hands-on approach of the course."
"The projects were a great way to apply the concepts I was learning."
"The instructor's demonstrations were very helpful in understanding how to use the Arduino."
The course includes engaging assignments that challenge students and encourage them to apply their knowledge. These assignments range from simple exercises to more complex projects, allowing students to build their skills incrementally. The instructor provides clear instructions and guidance throughout, helping students complete the assignments successfully.
"The quizzes at the end of each section were very helpful in reinforcing the material."
"The projects were well-designed and helped me to apply the concepts I was learning."
"I especially appreciated the challenges the instructor set at the end of some of his lectures."
While the course provides a comprehensive overview of Arduino, some students found it to be repetitive at times. The instructor repeats certain concepts and examples multiple times, which can be tedious for students who are already familiar with the material.
"I found the course to be a bit repetitive at times."
"Some of the concepts were repeated too often."
"I already knew some of the material, so I found the course to be a bit slow-paced."

Career center

Learners who complete Arduino Step by Step: Getting Started will develop knowledge and skills that may be useful to these careers:
Electronic Engineer
Electronic Engineers design and develop electronic circuits and systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Electrical Engineer
Electrical Engineers design and develop electrical systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Software Engineer
Software Engineers design and develop software systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Robotics Engineer
Robotics Engineers design and develop robots, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Automation Engineer
Automation Engineers design and develop automated systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Hardware Engineer
Hardware Engineers design and develop hardware systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Product Developer
Product Developers design and develop new products, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Electrical Technician
Electrical Technicians install and maintain electrical systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Electronics Technician
Electronics Technicians install and maintain electronic systems, often working on projects that involve the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Electronics Teacher
Electronics Teachers teach electronics, often to students at various levels. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Science Teacher
Science Teachers teach science, often including electronics and programming, to students at various levels. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Computer Science Teacher
Computer Science Teachers teach computer science, often including electronics and programming, to students at various levels. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Technology Teacher
Technology Teachers teach technology, often including electronics and programming, to students at various levels. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Engineering Teacher
Engineering Teachers teach engineering, often including electronics and programming, to students at various levels. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.
Maker
Makers design and build things, often using the Arduino. This course provides a solid foundation in the basics of Arduino programming, including how to use digital and analog input and output pins, how to control LEDs and read the state of buttons and potentiometers, and how to use the Arduino IDE. This knowledge would be essential for anyone looking to enter this field.

Reading list

We've selected ten books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Arduino Step by Step: Getting Started.
Is an excellent choice for learners who are new to Arduino. It provides step-by-step instructions for setting up an Arduino development environment, programming the Arduino, and interfacing with various sensors and devices. It practical guide that helps learners get started with Arduino quickly and easily.
Contains a collection of Arduino projects that are fun and educational to build. It provides clear instructions and detailed schematics for each project, making it a valuable resource for learners who want to explore the practical applications of Arduino.
Provides a hands-on introduction to Arduino programming and hardware. It covers the basics of Arduino programming and hardware, and provides a series of projects to help learners build their skills. It good choice for learners who want to learn about Arduino through hands-on experience.
Provides a practical guide to using Arduino, Raspberry Pi, and Kinect for 3D vision projects. It covers the basics of Arduino programming and hardware, and provides detailed instructions on how to use Kinect and Raspberry Pi for 3D vision applications. It good choice for learners who want to learn how to use Arduino and Raspberry Pi for 3D vision projects.
Provides a practical guide to Arduino programming and interfacing with sensors and devices. It covers the basics of Arduino programming and hardware, and provides examples of real-world projects. It good choice for learners who want to learn how to use Arduino for practical applications.
Contains a collection of recipes that provide solutions to common Arduino problems and challenges. It valuable resource for learners who want to troubleshoot their projects and learn more about Arduino programming.
Provides a collection of projects that use Arduino and Raspberry Pi together. It covers the basics of Arduino programming and hardware, and provides detailed instructions on how to use Arduino and Raspberry Pi for a variety of projects. It good choice for learners who want to learn how to use Arduino and Raspberry Pi together.
Provides a basic introduction to Arduino for beginners. It covers the basics of Arduino hardware, programming, and interfacing with sensors and devices. It good choice for learners who are new to Arduino and want to get started quickly.
Provides a basic introduction to Arduino programming and hardware. It covers the basics of Arduino programming and hardware, and provides a series of simple projects to help learners get started. It good choice for learners who are new to Arduino and want to learn the basics.
Provides a step-by-step guide to getting started with Arduino programming and hardware. It covers the basics of Arduino programming and hardware, and provides detailed instructions on how to build and program a variety of projects. It good choice for learners who are new to Arduino and want to learn the basics.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Arduino Step by Step: Getting Started.
Programming the Arduino - Getting Started
Arduino Programming and Hardware Fundamentals with...
Basic electronics for Arduino Makers
Creating Udemy Courses: A Step-By-Step Guide - Unofficial
Documentary Filmmaking Step by Step - How to get it made
The Step-By-Step Guide To Your 401k Plan
YouTube Ads: Step By Step Guide To YouTube Ads That...
Groovy Fundamentals For Testers - Step By Step
C Programming Step by Step - Complete Tutorial For...
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser