Episodes
In the last couple of episodes we have talked about Arduino shields and breakout boards. In this video, we will review a specific Arduino shield that makes developing projects and debugging sketches on the Arduino extremely easy - it's called Dr. Duino.Arduino Shield for Arduino Shields The Dr. Duino is an Arduino Shield. As would expect, it fits snuggly on top of the Arduino headers and has pin headers of it's own, which can easily accept a shield on top. The first thing you notice about...
Published 04/04/17
In this lesson we discuss some common shorthand for simple arithmetic in Arduino. We cover several compound operators that add, subtract, multiply and divide making it easy to increment variables in useful ways.
Published 04/03/17
This lesson discusses what to do when you open an existing program and realize that you simply don't understand all the stuff that is going on. It also talks about using the ADXL345 triple axis accelerometer breakout board to control the hue of a Red-Green-Blue (RGB) LED.
Published 04/01/17
This lesson covers three easy ways to implement some form of acceleration in your Arduino sketches. It will cover the following: Linear Acceleration Exponential Acceleration Messing Around with the Square Root function What is Acceleration? Acceleration is the rate of change of something over time.  Acceleration would help describe things like: Have fast can a stopped car get to 88mph? If I do a wing-suit jump from the top of Mount Everest, how fast will I be when I am gliding over...
Published 03/31/17
Discussion: In this lesson, we're going to discuss two very special functions that you will use in every single Arduino sketch that you write.  They're called Setup and Loop. Specifically, we’ll cover: How Setup Operates and the type of code that it executes How Loop Operates and the type of code that it executes Loop Function’s Responsive Outputs How to get those little ships inside the glass bottles I want you to pretend for a moment that you own a specialty Italian sub shop.  Business...
Published 03/29/17
Discussion: In this lesson, we're going to do an overview of functions.  This will be just a general discussion to lay out a framework for understanding how functions work and how we can use them. More specifically, we'll be talking about: Function Calls Function Parameters Passing Arguments Different Ways Functions Work In an earlier lesson, we said functions are like the verbs of a programming language.  If you want to get something done, it's probably going to involve a function. ...
Published 03/28/17
Discussion: We're going to explore some of the specific data types you'll encounter as you begin to program with Arduino.  We’ll tackle data types in more detail, to include: Integer and Integer Qualifier Long Float Byte Boolean Character Data Types Recap Let's review what we’ve learned in previous units.  We know that when we create a variable, we need to declare its data type.  We also know that a data type is simply a way to classify the types of information that you're going to put in...
Published 03/27/17
Discussion: This lesson covers one of the most fundamental of all programming concepts:  Variables. This is a really exciting topic because once you have a handle on how variables work, you have one of the biggest keys to understanding how programming works. Specifically, we'll be discussing: Memory Data Types Declaring a Variable Naming Conventions Initializing a Variable What is a variable?  Variables are a programming tool that help us store and recall information in our programs. ...
Published 03/26/17
You Will Need: The Arduino IDE installed and an Arduino connected to your computer. Discussion: In this lesson, we're going to be talking about programming syntax.  We'll be introducing some of the basic programming syntax that you'll be using every time you write a sketch. Specifically, we'll be talking about: what programming syntax is comments the semicolon keywords function syntax layout & indentation Programming Syntax What is programming syntax? I like to use this analogy....
Published 03/25/17
Discussion: Will the Chicken Cross the Road? So there's this chicken, and he's on the side of the road. He wants to cross the road. He wants to get to the other side. Before he steps out and crosses the road, he looks both ways. That is a rational thing to do. If he doesn't look both ways, and he just steps out, he's going to get smashed by a car, and he won't get to the other side of the road. This chicken is a little bit of a nervous chicken. He is just sitting there and watching. A car...
Published 03/24/17
Discussion: In this lesson, we're going to do an overview of the Arduino toolchain.  The toolchain includes all of the software tools that are between us pressing the Verify/Upload buttons and that code actually getting loaded onto the integrated circuit on the Arduino board. I definitely want to stress the keyword overview because there is a lot going on behind the scenes that actually makes it happen.  In practice for us, though, the entire process is just a matter of pressing a button. ...
Published 03/23/17
Discussion: This lesson continues our quest of learning more about programming and electronics.  In previous lessons, we already discussed several reasons why we have chosen to use an Arduino board as the tool to help us learn. Specifically, we chose the Arduino Uno board.  The Uno is the baseline Arduino board, being the one around which other Arduino boards are designed . Therefore, the Uno is a great place for us to start digging in.  It’s also a fantastic launchpad if you decide to move...
Published 03/22/17
Discussion: Now that you have downloaded and set preferences, you need to become familiar with the Arduino Integrated Development Environment, or IDE for short.  It works just like a text editor program. I'm only going to cover what I think is important for us to know right now.  We do a deeper dive on an as needed basis as we progress through the course.  Specifically, in this lesson we'll cover: Selecting an Arduino Board and Serial Port Saving an Arduino File The Editor, Message Area,...
Published 03/21/17
Discussion: Before you begin using the Arduino IDE, you must first learn how to download, install, and set your preferences.  This lesson is specifically tailored for those who use a Mac. (The last lesson covered this same topic, but for PC users.) I'm currently running Mac OS X Yosemite.  You are probably running a newer version of Windows.  However, the following instructions will be almost identical from one version to the next.  If this should ever change, I’ll update this lesson to...
Published 03/20/17
Discussion: Before you begin using the Arduino IDE, you must first learn how to download, install, and set your preferences.  This lesson is specifically tailored for those who use a PC.  The next lesson will cover this same topic, but for Mac users. I'm currently using a Windows 8.1.  You are probably running a newer version of Windows.  However, the following instructions will be almost identical from one version to the next.  If this should ever change, I’ll update this lesson to reflect...
Published 03/19/17
Discussion: The following videos will show you step by step how to download and install the Arduino Integrated Development Environment, or IDE for short.  We'll also be setting up some preferences in the IDE. The phrase Integrated Development Environment may sound complicated and crazy, but it's really not.  To be perfectly honest, it looks and feels a lot like a text editor, such as Microsoft Word or Notepad. Arduino IDE is simply a small software program that we're going to load on our...
Published 03/18/17
Discussion: Before we can start diving into programming the microcontroller on the Arduino, we need to have a solid understanding of the tools used to make it happen.  Therefore, in this particular lesson, we're just going to do an overview of what you'll learn in this familiarization module. As the name implies, this module will get you familiar with the software and hardware tools used throughout this course and beyond.  More specifically, this section will cover: The Arduino IDE Version...
Published 03/17/17
Discussion: In this video, I’ll explain what parts you'll need to complete this Arduino Crash Course. Immediately below this discussion section, there is a summary checklist of links for these parts. You're welcome to check it out! The links take you to Jameco, a United States based electronics supplier. I'm actually one of their affiliates. So, if you decide to click any of those links below, you’ll be helping to make me a multi-millionaire and continue to buy fuel for my yacht. So that...
Published 03/16/17
Open Source Hardware Group is now Programming Electronics Academy - we rebranded!
Published 03/15/17
Check out our Premium Arduino Training Course.
Published 03/14/17
If Statement (and else-if), Comparison Operators and Conditions In the last lesson, we learned about the if statement. The if statement was the perfect choice for setting up instructions to run only when certain conditions were met. “If 30 seconds has passed – stop the heating element” or “If the sensor perceives a wall – turn 180 Degrees”. This lesson will expand on this amazingly useful function and show you how to stack different conditions to satisfy the flexibility you want in your...
Published 03/13/17
Let’s expand the repertoire of output that we can use by looking at the function analogWrite(). I experienced much confusion with analogWrite(), because I suspected that it had to do with the analog pins on the Arduino. The function, however, has nothing to do with the analog pins. There are 5 pins on most Arduino boards marked with ‘PWM’ next to the pin number (on some boards it is an “~” symbol) – these pins can be invoked to rapidly change the power being applied at the pin – this is a...
Published 03/13/17
In the last lesson you learned about using the analogRead() function to collect data from a sensor connected to one of the Arduino analog pins. The range of data we received from the analogRead() function was mapped between 0 to 1023. What if we want to know the actual voltage being applied at the pin? If you like this tutorial, click here to check out FREE Video Arduino course – thousands of people have really enjoyed it. You Will Need Potentiometer (any resistance range will work) ...
Published 03/12/17