Arduino Programming and Hardware Fundamentals with Hackster
4.8 (25 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
207 students enrolled
Wishlisted Wishlist

Please confirm that you want to add Arduino Programming and Hardware Fundamentals with Hackster to your Wishlist.

Add to Wishlist

Arduino Programming and Hardware Fundamentals with Hackster

Learn electrical engineering basics to build circuits and program Arduino to make wearables, robots, and IoT devices
4.8 (25 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
207 students enrolled
Last updated 7/2017
English
Curiosity Sale
Current price: $10 Original price: $150 Discount: 93% off
30-Day Money-Back Guarantee
Includes:
  • 7 hours on-demand video
  • 95 Articles
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
What Will I Learn?
  • Master the fundamentals of Arduino programming with C/C++
  • Build functioning circuits on a breadboard
  • Control sensors, robots, and Internet of Things (IoT) devices using Arduino
  • Write programs that perform basic math, light up LEDs, and control motors
  • Design circuits and write code for your own project
View Curriculum
Requirements
  • Be able to use a computer (Windows and Mac covered in the course, Arduino will also work on Linux)
  • Be able to solve simple algebra problems (e.g. find x in 2x+4 = 10)
  • If you wish to use the online Arduino simulator, no additional hardware is needed
  • For hands-on, an Arduino and supporting electronics are required (covered in Lecture 5)
Description

Learn the Arduino platform and programming language to create robots, interactive art displays, electronic toys, home automation tools, and much more. This course was created in collaboration with Hackster.

Master the skills needed to bring your projects to life through electronics.

  • Learn to program in Arduino (C/C++)
  • Build electronics that sense and react to the environment
  • Remotely log data to an Internet of Things (IoT) platform
  • Use the Internet to control your Arduino from anywhere in the world

A versatile tool for prototyping, playing, and making

Arduino is both a hardware platform and programming language. By learning how to build circuits and code, you can add a new level of interactivity to your projects, prototype potential products, and gain new skills (while hopefully having fun).

The Arduino programming language is based on a combination of C and C++. With an understanding of these coding fundamentals, you will be able to more easily learn new languages, such as Java, Python, JavaScript, C#, and Swift, which are in high demand in the job market.

Course Overview

The first version of Arduino was released in 2003 and has exploded in popularity among makers, hobbyists, and tinkerers, who build everything from animatronic sculptures to interactive wearables. Professional engineers and entrepreneurs sometimes start with an Arduino to create a prototype before developing a finished product. The iconic blue board has even found its way into classrooms, where educators use it to teach programming, electronics, critical thinking, and problem solving skills.

I designed this course with the absolute beginner in mind: if you do not have any experience with programming or electronics, that’s OK! The first few sections walk you through the basics behind programming in C/C++ as part of the Arduino framework as well as how to build simple circuits that flash lights and spin motors. Following that, we continue our adventure into making noise, sensing the environment, and building a robot. Finally, we dive into the world of IoT, where we learn how to pass messages over the Internet, which allows us to do things like turn on a light with our smartphone!

Each video lecture is designed to give you one building block of knowledge. Almost every lecture is followed by a hands-on exercise where I ask you to expand on that building block or combine several previous blocks. I provide solutions to each exercise to help you learn. Additionally, most of the sections contain a project that challenges you to synthesize many of the concepts found in that section and from previous sections.

Upon completing this course, you will have the skills and knowledge needed to create fun and useful Arduino projects.

Who is the target audience?
  • Makers, crafters, and students who are interested in adding electronics and interactivity to their projects
  • Entrepreneurs and engineers who are looking to prototype their next hardware product more quickly
  • Anyone curious about electronics and programming
  • Children over the age of 12
Students Who Viewed This Course Also Viewed
Curriculum For This Course
173 Lectures
07:27:05
+
Programming Basics
33 Lectures 01:51:46
Introduction: Programming in Arduino
03:03

Syntax, Program Flow, and Comments
07:36

Literals, Variables, and Data Types
07:53

Arithmetic Operators
07:59

Challenge: Count with a Variable
00:26

Solution: Count with a Variable
00:06

Conditional Statements
08:49

Challenge: Fizz
00:15

Solution: Fizz
00:16

Loops
10:04

Challenge: Countdown and Wait
00:14

Solution: Countdown and Wait
00:12




Scope
09:41

Challenge: Sum Digits
00:32

Solution: Sum Digits
00:48

Arrays and Strings
13:12

Challenge: Compute the Average
00:28

Solution: Compute the Average
00:27

Finding and Fixing Bugs
08:11

Challenge: Fix All the Bugs!
00:49

Solution: Fix All the Bugs!
00:26

Using the String Object
06:23

Challenge: L33t Sp34k
00:38

Solution: L33t Sp34k
00:09

Reading Serial Input
05:40

Challenge: Combine First and Last Name
00:31

Solution: Combine First and Last Name
00:21

Random Numbers
05:03

Challenge: Dice Roller
00:25

Solution: Dice Roller
00:23
+
Electrical Engineering Basics
20 Lectures 50:47
Introduction: What is a Circuit?
05:39

Using a Breadboard
04:34

Reading a Schematic
08:11

Applying Ohm's Law
02:37

Challenge: Find the Right Resistor
1 question

Series vs. Parallel Resistors
04:35

Challenge: Compute Equivalent Resistance
00:06

Solution: Compute Equivalent Resistance
00:38




Voltage Dividers
06:29

Challenge: Make 3V from 5V
00:11

Solution: Make 3V from 5V
00:22

Diodes
03:16

Challenge: Reverse Polarity Protection
01:02

Solution: Reverse Polarity Protection
00:31

LEDs
04:36

Challenge: Find the Limiting Resistor
00:07

Solution: Find the Limiting Resistor
00:24

Debugging Circuits
03:17
+
Fun with LEDs
16 Lectures 50:21
Introduction: What is GPIO?
04:01

Controlling LEDs
05:31

Challenge: FizzBlink
00:18

Solution: FizzBlink
00:24


analogWrite()
05:15

Challenge: Color Mixer
01:00

Solution: Color Mixer
00:32

Using a Shift Register
09:22

Challenge: Simple Larson Scanner
00:22

Solution: Simple Larson Scanner
00:39

Including a Library
05:04

Using NeoPixels
11:00

Challenge: Fun Patterns
00:10

Solution: Fun Patterns
00:57

+
User Input
23 Lectures 36:58
Introduction: User Input
02:19

Switches
02:54

Challenge: LED Selector
00:13

Solution: LED Selector
00:03

Buttons
01:49

Challenge: Manual Blink
00:08

Solution: Manual Blink
00:02

External Pull-Up Resistor
06:32

Challenge: Toggle Button
00:08

Solution: Toggle Button
00:43

Internal Pull-Up Resistor
03:51

Challenge: Push to Count
00:11

Solution: Push to Count
00:31

Software Debouncing
06:53

Challenge: Multiple Buttons
00:23

Solution: Multiple Buttons
00:56

Reading Analog Voltage
03:20

Challenge: Voltage Divider Checker
00:18

Answer: Voltage Divider Checker
00:41

Potentiometer
03:28

Challenge: Fade Knob
00:06

Solution: Fade Knob
00:18

+
Feedback
8 Lectures 15:45
Introduction: Displays and Sounds
01:22

Character LCD
06:57

Challenge: Move a Character
00:22

Solution: Move a Character
01:07

Buzzers and Tones
03:43

Challenge: Play a Song
00:24

Solution: Play a Song
00:30

+
Sensors
14 Lectures 30:18
Introduction: Why Sensors?
02:09

Light Sensor
03:45

Challenge: Night Light
00:24

Solution: Night Light
00:24

Temperature Sensor
05:05

Challenge: Thermometer
00:05

Solution: Thermometer
00:22

Ultrasonic Distance Sensor
07:21

Challenge: Digital Theremin
00:34

Solution: Digital Theremin
00:32

Accelerometer
07:23

Challenge: Which Way is Up?
00:24

Solution: Which Way is Up?
00:50

+
Robotics
14 Lectures 29:59
Introduction: Robots!
01:43

Transistors as Switches
05:49

Challenge: LEDs in Parallel
00:16

Solution: LEDs in Parallel
00:19

DC Motor
06:32

Challenge: Speed Controller
00:08

Solution: Speed Controller
00:18

H-Bridge
05:40

Challenge: Two Motors
00:53

Solution: Two Motors
01:35

Servo Motor
04:30

Challenge: Light Gauge
00:18

Solution: Light Gauge
00:16

+
The Internet
12 Lectures 51:58
Introduction: The Internet
01:40

UART
07:44

Challenge: Echo
00:10

Solution: Echo
00:09

Connecting to WiFi
14:11

Challenge: Print IP Address
01:10

Solution: Print IP Address
00:51

GET a Web Page
17:31

Challenge: Print Parts of a Web Page
01:26

Solution: Print Parts of a Web Page
02:06

JSON Primer
03:26

+
Internet of Things (IoT)
17 Lectures 35:14
IMPORTANT: Tinkercad simulator does not work with this section
00:19

Introduction: What is IoT?
03:44

Posting to ThingSpeak
06:39

Challenge: Temperature Logger
00:46

Solution: Temperature Logger
01:09

Retrieving Data from ThingSpeak
04:12

Challenge: Clear a Channel
00:33

Solution: Clear a Channel
00:50

Intro to IFTTT
03:01

Challenge: Make Your Own Applet
00:03

Solution: Make Your Own Applet
00:07

Making Requests to IFTTT
05:19

Passing Arguments to IFTTT
02:36

Challenge: IoT Button
00:17

Solution: IoT Button
01:25

IFTTT to ThingSpeak
02:40

1 More Section
About the Instructor
Shawn Hymel
4.8 Average rating
21 Reviews
207 Students
1 Course
Engineering Superhero

Shawn is an Electrical Engineer working for SparkFun Electronics making the next generation of open source tools. He is currently a member of the Marketing and Communications (MarComm) team to showcase new products, build interesting projects, and create online videos that teach people about electronics.

Growing up with LEGO®, 300-in-1 electronic kits, and a general interest in math and science, studying engineering was an obvious choice. Shawn received a Bachelor of Science (BS) in Computer Engineering from Rose-Hulman and a Master of Science (MS) in Electrical Engineering from Virginia Tech.

Upon joining the SparkFun Engineering team in 2013, Shawn helped developed several products, including the CC3000 Shield, the APDS-9960 Gesture Sensor, and the mbed Starter Kit. After a couple of years, he switched teams to MarComm to become a Creative Engineer and can be found making videos and projects for SparkFun’s site and YouTube channel.

Shawn is an advocate for enriching current education through STEM, both inside and outside the classroom, and he believes that the best marketing comes from teaching. He can be found giving talks, running workshops, and swing dancing in his free time.

~ Hackster.io ~
4.8 Average rating
21 Reviews
207 Students
1 Course

Hackster is an online community that helps people around the world learn how to design, create and program Internet-connected hardware. By bringing together a network of nearly 300,000 engineers and makers from 150 countries, we hope to support the creation of technologies that make the world a better place.