This is a hands-on, projects-based approach to learning the Arduino platform catered to all levels of experience. In this course, you will build projects such as:
No previous programming or electronics knowledge is required for this course! All electronics concepts and programming for each project will be explained step-by-step in detail.
You will quickly learn and become proficient with Arduino in this bootcamp by building complete projects from scratch. Here is the approach that is taken for each project:
Along the way, you will learn about and become extremely proficient with the following components and understand exactly how they work as they will be incorporated in projects:
The course is broken up into a Simple Projects section, an Intermediate Projects section and an Advanced Projects section allowing you to progress to or start from any level based on how comfortable you are with Arduino.
If you are new to Arduino, the first lessons will get you quickly up to speed on what the platform is and how to use it. You can then progress to simple projects which get you comfortable with basic electrical components.
For those already familiar with Arduino who want to take their skills to the next level, you can jump straight to the intermediate projects section. There, we will focus on making game-type projects using the Arduino and even an infrared repeater that can allow you to copy, store, and playback any IR signal, just like your own universal remote.
Next, for those that might be already comfortable with Arduino, there is an advanced projects section where we tackle projects like an online weather station, remote-controlled car that you can drive with a smart phone app, and a working phone that can make actual calls and send text messages and many more.
I have always believed that project-based learning is the best approach where you actually learn by doing and building something that actually works. This is the approach I am taking in this course. I will explain all the electronics principles involved with each project, show you how to wire up the circuits and give detailed line-by-line code reviews on how it all works.
If you already have an Arduino or by purchasing an Arduino Kit (about $35 US), you will get most of the components needed to complete at least 80% of the course. The more advanced projects will require some additional parts but they are all really affordable. A detailed parts list by project and for the course is provided once you join the course, with links to online suppliers that are kept up to date. You can buy all the parts at once or select which advanced projects you want to work on and obtain only the specific additional components you need based on your electronics collection.
Welcome to the Arduino Bootcamp course. This video gives some helpful tips for being successful in this course.
This is a comprehensive parts list for the course. There is a list of parts by project as well as individual listing of parts. Where possible, I try to provide a few purchase options for a part from different online retailers.
Buying an Arduino kit is a great idea since a lot of the parts we are using come bundled in a kit. A kit can possibly help you to complete 80 - 85% of this course. I have placed links to a few kits in the parts list.
If you have an online electronics retailer that you prefer especially based on your location, please feel free to use them as well.
Before we begin our journey into the world of Arduino, let us talk a bit about the Arduino platform so you can have a better understanding of what it is, and how it works.
I will be demonstrating the process of installing the Arduino IDE for Windows and the MAC.
A description of the Arduino IDE, the various features, how to use them and how to upload your programs to the Arduino micro-controller.
This lecture describes the various functions and pieces that make up an Arduino program.
This lecture explains what third party libraries are in Arduino and how you go about obtaining them, installing them in the Arduino IDE and incorporating them into your projects.
This lecture will introduce you to a breadboard which is an important tool that is used in prototyping and working with your Arduino. You will also be shown the difference between series and parallel circuits.
Our first Arduino project will show how you can control and LED using the Arduino.
For those new to programming, this lecture will dive into some helpful programming concepts that you need to know in order to understand Arduino programs.
This is part 2 of some helpful programming concepts that will help you better understand Arduino programs.
In this project, we will use a push button switch to control an LED. When the push button switch is pressed, the LED will light. It will continue to stay lit when the switch is engaged and once it is released, the LED will then go out and stop being lit.
In this lecture, we will show how a push button switch can be used to control a piezo buzzer. When the push button switch is pressed, the buzzer will sound. It will continue to sound once the switch is engaged and when it is released, the buzzer will stop.
In this project, by adjusting the value of the resistance of a potentiometer, we will make an LED brighter and dimmer. We will be using a process known as pulse width modulation (pwm) to accomplish this.
In this project you will be learn how to control the speed of a CPU fan by getting input from the user. You will also learn about transistors and how to incorporate an npn transistor in our project. You will also be introduced to the Serial Monitor in Arduino for debugging and accepting user input.
We will build on our previous lesson and learn how to control the speed of a CPU fan by using a push button switch.
In this project, you will learn what interrupts are and how they can be applied to your electronics projects.
In this project, you will learn how to incorporate interrupts to create an LED reaction game. The objective is to push the button at the precise time that a red LED flashes. It is a tricky game as other LEDs are also flashing and the times the LEDs are lit as well as off is all random. The game is highly addictive.
In Part 1 of this project we will focus on wiring up the components for our game and clarify how debouncing on the switches will be handled.
In Part 2 of this project, we will focus on uploading the code, executing the demo and doing a thorough code walkthrough.
This project introduces us to the HC-SR04 Ultrasonic Sensor. We will be creating an alarm circuit with a buzzer and warning LEDs. You will understand how an ultrasonic sensor works and how to interact with it in code. This is a very handy addition to your electronics projects for obstacle avoidance.
In this project we will be building a digital version of a dice. In part 1, we will learn in detail how a seven segment display works and how to connect it in a circuit. We will also learn the difference between common anode and common cathode seven segment displays.
We will complete our digital dice project by connecting a push button switch to perform the roll. We will also step through the code in detail so you will understand how the software interacts with the hardware.
In this project, we will discuss how infrared technology works and how you can incorporate it into your projects to inexpensively take your project into wireless mode. We will show how you can receive and playback IR signals using an IR Receiver and IR LED.
In this project, we will be creating an IR Repeater. You can store up to three IR signals from any remote and have them persisted even when power is removed from the circuit. You can then playback these IR signals at any time. You have your own Universal remote that can record anything! You will also be introduced to EEPROM on Arduino to see how this handy memory feature can be used.
In this project, we will learn how to connect a thumb joystick in your electronic circuits and take readings to determine the position of the joystick and if the joystick button(s) were pressed.
In this project, we will introduce an 8 x 8 LED Matrix which is connected to a Max7219 Dot Matrix module. We will see how to use third party libraries to control the LED matrix and will use the joystick to move a dot around on the matrix.
In this project, we will complete our Joystick LED Matrix Game. The object of the game is to catch all the falling balls with your platform before they reach the bottom of the display. You control your platform by using the joystick. If you can catch all the falling balls within the specified time window, you win the game!
In the first part of this project, we will be learning how to connect a 4 digit seven segment display in a circuit. You will also learn how to send digits to be shown on the display in code using the Arduino.
This project introduces the concept of shift registers and how they can be used to reduce the number of pins that a micro-controller ultimately needs to send data to circuit components. We will be including a shift register to control our four digit seven segment display.
In this project, we will complete our stopwatch. We will use the 4 digit seven segment display, a shift register and a push button switch together in one circuit. The switch will control our stopwatch by enabling us to start, stop and reset the stopwatch at any time.
In this project, we will learn how to interface with a Wii Nunchuk using the Arduino. We will be incorporating the Nunchuk adapter and the ArduinoNunchuk library to take readings from the Nunchuk.
In this project, we will learn how to control servos using the Arduino. You will also get an understanding of how servos work and how two servos can be controlled at the same time in a circuit.
In this lecture, we will learn how to assemble the frame for our pan-tilt assembly. The completed assembly will use two servos, one for the panning motion and the other for the tilting motion. The frame can ultimately be used to house a camera for your car or robot electronics projects so that you can control the direction that the camera is pointing.
In this project, we will control our pan-tilt assembly with our Wii Nunchuk. This brings together all the concepts that we have learned so far. Positional readings are taken from the Nunchuk and are used to control the direction of rotation of the pan and tilt servos on the frame assembly.
In this project, we will learn how to connect a 1602 LCD screen to the Arduino to display information. The LCD is a great addition to your projects allowing you to display information and even create a menu driven interface that can help drive user interactivity with your circuit.
Shields form an important part of the Arduino Ecosystem. In this project, you will learn about shields in general and specifically about the Wifi shield that allows you to take your project into wireless mode. You will learn how to connect to a Wifi network using WPA network security and also we will be connecting to the Weather Underground API to retrieve weather information.
In this project, we will complete our online weather station project. We will be incorporating an Arduino Wifi shield and an LCD to retrieve weather information from the Weather Underground API and will then display this information on the LCD. You can customize weather information for your city/state or even your country/city if you are outside of the US.
Before we begin to dive into our car project, it helps to understand an important component which allows our car to move, the dc motor.
In this lecture we will be discussing dc motors so you will have a better understanding of the underlying electronics principles of how they work and how they can be controlled.
In this lecture, we will discuss motor drivers, what they are and why they are important for the successful operation of our car project. We will also learn how to connect a motor driver to the Arduino and we will be controlling two dc motors using an Arduino.
In this lecture, we will upload the code to test out our motor driver circuit. A code review will then be performed so you will understand how the driver is used to control the motors.
In this lecture we dive into Bluetooth technology and how we apply it to our car project. You will also be introduced to the HC-05 suite of Bluetooth modules for Arduino and we will see how we interface it to our circuit.
In this lecture, we will assemble the frame of our remote controlled car (chassis, two motors and three wheels).
In this lecture, we wire up all the electronic components for our car ( motor driver, bluetooth shield, Arduino and motors).
This lesson will give instructions on how to download the Android App that is necessary to control the car.
In this lecture, we will be testing out our Car by uploading the necessary code to our Arduino and using an Android app to control the car!
In this lecture, we will describe the parts that we need to construct our phone. We will will also work on assembling the components and connecting our circuit to the Arduino.
Now that we have we have assembled our phone, this lecture will will focus on testing it out. We will validate that our SIM is inserted correctly and that we are connected to a cell tower from our Arduino test program, and then we will make and receive a call and send and retrieve text messages! We will also demonstrate how to tune into an FM frequency so we can listen to the radio.
Thank you for allowing me to be part of your journey through the Arduino Bootcamp. I hope you enjoyed the course and best wishes in your future projects!
In this lecture, we will understand the various ways that external power can be applied to the Arduino especially for projects that have more robust power requirements.
In this lecture, we will describe the difference between a few of the most popular Arduino models so you will understand what the technical spec differences are.
We will also discuss scenarios for why you may want to use one board over another
Hi, I am Lee Assam. I bring to the table 18+ years of programming, development and IT experience. I have a Bachelor’s degree in Electrical and Computer Engineering and a Master’s Degree in Computer Science.
I teach at Universities on topics ranging from Software Development to Electrical Engineering and prototyping. I like coming up with new ideas and prototyping them using the Arduino and Raspberry Pi platforms.
My passion and hobby is Arduino and the Internet of Things. I have been playing around with the Arduino and the Raspberry Pi platforms since their inception, and I use my Electrical Engineering background coupled with software development skills to create and develop exciting projects. I prefer a hands-on, project-based learning approach and use my teaching background to make concepts fun and entertaining, while at the same time educational and informative.