Arduino is an open-source microcontroller project that is literally changing the world. Originally developed in Italy and named after the bar that was frequented by its developers, the Arduino and Arduino clones are now manufactured by companies around the world and are available in several different configurations. You can even build your own Arduino clone very easily using inexpensive components that are readily available.

The real beauty of the Arduino is in its simplicity. Arduino programs( or “Sketches”) are very simple to write and debug, so even people with little or no programming experience can grasp the concepts and write useful code quickly. Arduino Hardware is also simple-to-use and there are a wealth of add-ons (or “Shields”) that can connect to your Arduino and expand its capabilities greatly. Only a very elementary knowledge of electronics is necessary to start building all sorts of wonderful devices using the Arduino.

We’ll be using the Arduino to create all sorts of things from robots to quadcopter controllers and devices for The Internet of Things. With the Arduino if you can imagine it you can probably build it. Best of all, Arduinos are easily obtainable and very affordable so just about anyone can get up and running with the Arduino right away.

Let’s get started on our Arduino adventures!


Arduino Iot Cloud 2024 - Fundamentals

The Arduino IoT Cloud has had many exciting updates since we last examined it, so many that in 2024 it doesn't even look the same! With a wealth of boards to connect to, and new features like Triggers, it's time we took another look at the Arduino IoT Cloud.

Follow along for a detailed guide, suitable for makers of all levels!

Read More »

Arduino GIGA Display Shield

The Arduino GIGA Display Shield is a powerful TFT display with integrated IMU, microphone and RGB LED. This capacitive touchscreen display even has a connector for a camera.

Today we will see how to use this display and its advanced features to build powerful user interfaces.

Read More »

IR Remotes Revisited - 2023

It's time we took a fresh look at infrared remote controls, so here is everything you need to know about using IR remote controls with microcontrollers.

Learn how to receive, decode and send IR signals, including ones from those hard-to-decode remotes like air conditioners.

Examples with both an Arduino and ESP32.

Read More »

Arduino Nano ESP32

The latest member of the growing Arduino Nano family is the Arduino Nano ESP32. It's actually the first Arduino to use an ESP32 as its main processor.

Today we will look at this new board, and we'll also run a few experiments with it.

We will configure it as an HID (i.e. mouse), use it with MicroPython and connect it to the Arduino IoT Cloud.

Read More »

Arduino Uno R4 - Minima & WiFi

After 12 years, Arduino has released the latest edition of the classic Arduino Uno. Actually, it's two boards, the Arduino Uno R4 Minima and the Arduino Uno R4 WiFi.

These boards are 5-volt logic devices and are physically compatible with the older Arduino Uno R3 boards, preserving your investment in shields and prototyping equipment. In addition, they offer many new features, several of which we'll examine today.

Read More »

Arduino GIGA R1 WiFi

The new Arduino GIGA is the most powerful microcontroller that Arduino has ever produced.

Today we will take a first look at this monster, which has the same form factor as the Arduino Mega.

Of course, we'll test out some of the more unique features of this board as well.

Read More »

Using ChatGPT to Write Code for Arduino and ESP32

ChatGPT is an amazing AI chatbot that can also generate code in just about any programming language!

Today we will see how to write both C++ and MicroPython code for Arduino and ESP32 using ChatGPT.

Put the power of an AI-assisted coder to work for you today!

Read More »

Driving DC Motors with Microcontrollers

Learn to use seven different DC motor drivers with an Arduino Uno.

We'll see how to put these to use with motors of all sizes, and of course we have hookup diagrams and code samples!

Read More »

Measure Air Quality with Microcontrollers

Measure the quality of the air you are breathing using a variety of sensors, an Arduino and an ESP32.

In this article I’ll discuss air quality parameters and show you how to use several popular sensors to measure the gases and particulate matter in the air

Read More »

Using GC9A01 Round LCD Modules

The GC9A01 is a circular LCD module that is ideal for instrumentation and other cool display applications.

In this article, we will learn how to use this display with an Arduino Uno and an ESP32.

Read More »

Using Arduino Interrupts - Hardware, Pin Change and Timer

If your project needs a responsive user interface or has precision timing requirements, then interrupts are the key to getting it to work smoothly.

Today we will learn how to use Hardware, Pin Change and Timer Interrupts with the Arduino Uno.

Read More »

LED Displays with Arduino

Learn how to use both 7-segment and dot-matrix LED displays with an Arduino.

We will be working with both single and multiple display units, in a variety of configurations.

LEDs are by no means dead, they are still a great choice for a number of applications. Add one to your next Arduino project.

Read More »

Build a Pico “Uno” - Prototyping with the Pico

The Raspberry Pi Pico is a very powerful microcontroller, especially when compared to an Arduino Uno. Yet most of the time we reach for a board to test with, we pick an Uno! This is because the Uno is easier to prototype with.

Well, today we'll change all that and build three different "Pico Uno" boards that have the power of the RP2040 and the ease of use of an Arduino Uno.

Read More »

e-Paper with Arduino & Raspberry Pi

e-Paper displays have a number of unique features, such as being visible in broad daylight, consuming very little current, and retaining their image when powered down. But they also have some disadvantages - they have poor refresh rates, limited color capability, and are more expensive than other display types.

in some applications, however, e-Paper is a perfect choice, and today we will see how to use these displays with both an Arduino and Raspberry Pi.

Read More »

Arduino IDE 2.0

Introducing the new Arduino IDE 2.0 (Release Candidate 3), the improved IDE from the folks at Arduino.

In this article we will install the IDE, check out its features, and even expose a few bugs!

Read More »

MyoWare Muscle Sensor

Today we will learn about electromyography by working with a MyoWare Muscle Sensor.

We'll see how to use this device and its shields in both stand-alone mode and with an Arduino.

Read More »

Waterproof Ultrasonic Sensors

The JSN-SR04T and A02YYUW are a couple of inexpensive waterproof ultrasonic distance sensors. They are easy to use, and have several advantages over the popular HC-SR04 sensor.

In this article I'll show you how they work and how to use them with an Arduino Uno.

Read More »

Radio Control - Use the Flysky FS-I6X with Arduino & Build an RC Car

Today we will learn how RC Remote controls work, and how we can use them with an Arduino.

After learning two different ways of interfacing with the Flysky receiver, we will build a small robot car.

Our car will have two different modes - Normal & Spin. You'll have to read the article or watch the video to find out what that means!

Read More »

Getting Started with the Arduino IoT Cloud

Today we will look at the Arduino IoT Cloud, an online application for building Internet of Things (IoT) devices.

I'll show you how to get an account set up, how to configure your workstation, and how to build your first "Thing".

The cloud was recently updated, so now even free plan users can work with the ESP32, and I'll show you how to do that as well.

Read More »

Using GPS Modules with Arduino & Raspberry Pi

Learn to use common GPS positioning modules in your Arduino and Raspberry Pi projects.

Today we will see how satellite positioning systems work, and how to use GPS modules in our projects.

We'll also build a GPS Logger to track our movements, then display our data on Google Maps.

Read More »

Arduino Nano RP2040 Connect - Arduino meets Raspberry Pi

The much-anticipated Arduino Nano RP2040 Connect board has a Raspberry Pi RP2040 MCU with ESP32-based WiFi and Bluetooth. The board also sports a 6-axis IMU with Machine Learning, a built-in MEMS Microphone, and a Cryptographic Coprocessor.

Today we will learn how to set up our development environment to work with this exciting new board, and we'll run a few Arduino-supplied example sketches.

Read More »

Arduino Nano 33 IoT Board

Today we will look at the Arduino Nano 33 IoT board, an updated 32-bit version of the original Nano. This board combines WiFi, Bluetooth, an IMU, and a Real-Time Clock in a package identical to its older cousin.

We'll see how to set up the board with the Arduino IDE and how to use all of its features.

I'll be using this board in a few IoT projects, so it's a good idea to get familiar with it.

Read More »

Measure DC Voltage and Current with an Arduino

In this first of a two-part series we will learn how to measure both DC voltage and DC current using an Arduino Uno. Although the examples all use the Uno, what we learn here can be applied to any microcontroller.

The second part of the series will, of course, focus on Alternating Current.

Read More »

Getting Started with PlatformIO

Today we will look at PlatformIO, an alternate IDE for working with the Arduino and many other microcontrollers.

You'll learn how to install PlatformIO under Visual Studio Code, and also how to use it to program for the Arduino Uno, The ESP32 and Seeeduino XIAO.

Once you get used to it you'll see that PlatformIO has many advantages over the Arduino IDE.Read More »

Meet the Seeeduino XIAO

Come and meet the XIAO, a tiny 32-bit Arduino-compatible microcontroller that goes for only 5 dollars!

This amazing little device outperforms the Arduino AVR boards and offers features like an analog output and 10 PWM pins.

We will explore the XIAO using the Arduino IDE and see how easy it is to use.

Read More »

Controlling AC Devices with Arduino

We have seen how to control DC devices with an Arduino, now it's time to learn how to control AC equipment.

In this article I will show you a SAFE method of experimenting with AC on your workbench.

We will also build a light-activated relay and a marquis-style light chaser using solid state switches.

Read More »

Using Keypads with Arduino

Matrix Keypads are a great way to add a professional-looking user interface to your Arduino project. They are inexpensive, and very easy to use.

In this article I'll show you how to use a matrix keypad with an Arduino. We will also use our keypad to build a simple electronic combination lock with an LCD display.

Read More »

Shift Registers - 74HC595 & 74HC165 with Arduino

In this rather shifty article I'll show you how to use some fundamental electronic building blocks - shift registers.

These handy devices can let you add oodles of input and output ports to your Arduino or other microcontrollers, and they're very easy to use..

Follow along and learn how to make 74HC165 and 74HC595 shift registers work for you.

Read More »

Multiple I2C Buses with an Arduino

I2C address conflicts are a common problem, and in this article, I'll show you how to resolve them by creating multiple I2C buses with your Arduino.,/p>

I'll demonstrate how the TCA9548A I2C Multiplexer works by using two identical OLED displays and sending them unique data even though they share the same I2C address.,/p>Read More »

Measuring Temperature with Arduino

Today we will look at not one but five different temperature sensors that you can use with the ASrduino

With different temperature ranges, accuracy and interface methods you're sure to find one that is perfect for your next project!

Read More »

Color Sensing with Arduino

Put some color into your life and learn to use two different color sensors with an Arduino!

In this article and video I'll show you how to calibrate and use the TCS230 and ISL29125 color sensors.

Read More »

TB6612FNG H-Bridge with Arduino - Better Than L298N?

The TB6612FNG is a MOSFET-based dual H-Bridge motor controller that can be used in place of the popular L298N.

This controller is smaller and much more efficient. Best of all, you can use it in L298N designs without changing your code!

Let's see how to make use of this H-Bridge with an Arduino

Read More »

Arduino High-Current Interfacing - Transistors & MOSFETs

Learn how to use Bipolar Junction Transistors and MOSFETs to interface high-current DC loads with an Arduino.

We will cover both BJTs and MOSFETs in this guide to interfacing your Arduino with the outside world.

Read More »

Analog Feedback Servo Motor

An Analog Feedback Servo Motor is a servo motor that has a connection to its internal feedback potentiometer. Thi sallows you to measure the precise position of the motor shaft in real-time

Today we will learn how to calibrate and use this motor, we'll even see how it can be used as an input device to memorize and repeat a sequence of movements.

Read More »

EEPROM with Arduino - Internal & External

What do you do when you want to save data in your Arduino project and have it available even after the Arduino is powered down? One excellent way of doing this is by using EEPROM - Electrically Erasable Read-Only Memory.

In this article you will learn how to use both internal and external EEPROM with an Arduino.

Read More »

I2C Between Arduino & Raspberry Pi

In the third installment of our I2C tutorial I will show you how to use I2C to connect a 3.3-volt Raspberry Pi to a 5-volt Arduino Uno.

Theer are actually two ways of doing this, I will explain both methods.

Read More »

Stepper Motor with Hall Effect Limit & Homing Switches

Today we will learn how Hall Effect sensors and switches work. These handy devices are activated using magnets.

After that we will use a couple of Hall Effect switches to control the position of a stepper motor. Using an Arduino, we'll build both Limit Switches and a Homing Sensor.

Read More »

Touchscreen Display with Arduino

In this article we will start using touchscreen displays in our Arduino projects.

We'll begin by examining how touchscreens work, and what the differences are between Capacitive and Resistive touchscreens are.

Then we'll look at some example code and then write a simple interface of our own.

Read More »

Using BIG Stepper Motors with Arduino

In this article I will show you how to control a very large stepper motor using an Arduino and a microstep motor driver module.

We will also examine how to read and interpret stepper motor specifications, and why the "voltage" rating doesn't really mean anything.

Read More »

Build a Digital Level with MPU-6050 and Arduino

We will look at the MPU-6050, an Inertial Measurement Unit or IMU. This inexpensive device contains both an accelerometer and a gyroscope and has many applications.

We will also build an electronic level that uses an LCD and LED display.

Read More »

I2C Part 2 - Build an I2C Sensor

In our second look at using the I2C bus we will build our own I2C sensor, one that has four ultrasonic distance sensors.

We'll also learn about the protocol used by I2C communications

Read More »

Programming the Arduino Pro Mini

Learn how to use and program the Arduino Pro Mini, using an FTDI adapter and the Arduino IDE.

We will also use a 3.3-volt Pro Mini to build a battery-powered robot arm controller for the MeArm

Read More »

Using Rotary Encoders with Arduino

Rotary encoders are versatile devices that can be used both as controls and as measurement tools.

Today I will show you two ways of using rotary encoders - as a control for a servo motor and to measure RPM on a gear motor

Read More »

SD Card Experiments with Arduino

SD and microSD cards are a simple way to add huge amounts of non-volatile storage to your Arduino designs. In this article, I will show you how to use SD card modules with the Arduino.

I will also show you how to record and playback the motion of a servo motor.

Read More »

Using a Real Time Clock with Arduino

Table of Contents1 Introduction2 Real Time Clocks2.1 Unix Time3 DS1307 Real Time Clock3.1 Tiny RTC Board4 Tiny RTC Basic Arduino Hookup4.1 Arduino Hookup4.2 Arduino Libraries4.3 SetTime Sketch4.4 ReadTest Sketch5 Tiny RTC Square Wave Interrupt5.1 Programming the Tiny RTC Square WaveRead More »

Control Large DC Gearmotors with PWM & Arduino

Pulse Width Modulation, or PWM, is an excellent method of controlling DC motors, however controlling large gearmotors can be expensive and difficult - but it doesn't have to be.

Today I will introduce you to an inexpensive yet powerful H-Bridge motor driver, the Cytron MD10C.

In addition, we will see how altering the PWM frequency can improve performance tremendously.

Read More »

Using OLED Displays with Arduino

OLED displays are bright, lightweight and visible under a wide range of lighting conditions. They are available with both I2C and SPI interfaces and in this article, I'll show you how to hook up and use both types with an Arduino.

In addition, we will build an Arduino OLED Temperature and Humidity Meter using an OLED and an I2C temperature and humidity sensor.

Read More »

Experiments with the RCWL-0516 - Doppler Radar Distance Sensor

The RCWL-0156 is an inexpensive yet useful proximity sensor that can be used on its own or with a microcontroller like an Arduino Uno.

The device is unique in that it uses microwaves and Doppler Radar to detect moving objects

In this article I will show you how the device works on its own and how we can add an Arduino (or two) to create some useful projects

Read More »

From Arduino Uno to ATmega328 - Shrinking your Arduino Projects

Learn how to transfer your Arduino Uno projects onto an ATmega328 chip so you can build a permanent version without sacrificing your Uno.

In this article I will show you a simple Star Wars Music Box project that can be built on an Arduino and then transferred to an ATmega328

Read More »

Elegoo Robot Car Part 3 - Collision Avoidance & Line Following

The Elegoo Smart Robot Car is an Arduino-based design with an impressive list of features

In the final installment of this series, I show you how to use both Collision Avoidance and Line Tracking with the Smart Robot Car.

Read More »

Elegoo Smart Robot Car Part 2 - Bluetooth and IR Remote Control

In the second part of the series on building the Elegoo Smart Robot Car I will show you how to use the remote control functions.

The robot car has both IR remote control and Bluetooth remote control capabilities. Today we will learn how to use and code for both of these.

Read More »

Building the Elegoo Smart Robot Car Part 1 - Assemble an Arduino-Based Robot Car

The Elegoo Smart Robot Car V3 is an Arduino-based robot car with features like Bluetooth remote, IR remote, line following, and collision avoidance.

In the first of a three-part article I will show you how to assemble and test the Robot Car.

Read More »

Pixy2 Camera - Object Recognition with Arduino & Raspberry Pi

The Pixy2 is an amazing camera that is capable of object detection, line tracking and barcode reading. All this in a tiny and very affordable little package

In this article I'll take a look at the Pixy2. I'll show you how to hook it up to an Arduino and how to train it to recognize objects. You wil see how easy it is to work with this camera to add vision sensing to your next project

Read More »

Arduino UV Index Meter - Measuring UV Light

Ultraviolet Light is used in many industrial and medical applications. We also receive a dose of UV light from sunshine, and while a little UV light is good for you excessive exposure can lead to eye and skin damage.

In this article I will explain how to safely work with ultraviolet light and I’ll show you how to build a UV Index Meter that can accurately measure the level of UV and help keep you safe in the sunshine.

So grab your hat and sunscreen and follow along!

Read More »

DF Robot LIDAR Sensors - Getting Started with LIDAR

Table of Contents1 Introduction2 What is LIDAR?2.1 LIDAR History2.2 LIDAR Robotics Applications3 How LIDAR Works3.1 LIDAR vs Other Technologies3.1.1 LIDAR vs Ultrasonic Sensors3.1.2 LIDAR vs IR Light Sensor3.1.3 LIDAR vs RADAR4 DFRobot LIDAR Sensors4.1 TF Mini LIDAR4.1.1 TF Mini LIDARRead More »

DFRobot 5 DOF Robot Arm - Building the Robotic Arm

The DF Robot 5 DOF Robot Arm kit is a high-quality robotic arm that you can assemble yourself. With heavy duty servo motors and sturdy aluminum parts this inexpensive arm is perfect for your robotics experiments

Follow along as I assemble the robot arm. I’ll also build a simple robot arm controller based on the Arduino Nano and the PCA9685 16-channel PWM module.

Read More »

Using Servo Motors with the Arduino

Servo Motors are a staple for hobbyists in a variety of fields. Whether you're building model planes and boats or working with robotics you are sure to come up with dozens of applications just perfect for a servo motor.

Come and explore the use of inexpensive analog servo motors. They are inexpensive and easy to use. When coupled with an Arduino you can build all sorts of projects that move.

And if you need LOTS of servo motors we have just the thing for you - the PCA9685 16 Channel PWM controller. Using this board you can control 16 servos with just two connections to your Arduino. And you can expand that to 992 servos if you really need a lot of motors!

Read More »

Getting Moving with XOD - Robot Car Part 1

XOD is a method of programming an Arduino using a graphical IDE instead of writing code. In XOD you use a collection of “nodes” connected by “links” to program your Arduino.

In this second installment on our series on XOD I’ll show you some ways of improving your XOD projects by using multiple patches, custom nodes and XOD libraries.

But the real fun is that in this article we’ll also start working on a practical project - a XOD robot! So let’s get started.

Read More »

RGB LEDS - Colorful Arduino Experiments

RGB (Red-Green-Blue) LEDs are versatile devices that can add color and functionality to your Arduino projects.

In this article we’ll examine the different types or RGB LEDs available to experimenters and see how to best use them with an Arduino. It promises to be a very colorful read!

Read More »

Arduino Visual Programming - Getting Started with XOD

XOD is a free visual programming language that makes Arduino programming simple for anyone, without writing a single line of code!

This is the first article in a series about using XOD with the Arduino. In this article you’ll learn what XOD is, how to install it and how to create your first XOD programs

Read More »

Using LCD Displays with Arduino

Liquid Crystal Displays or LCDs are an excellent way to display characters and data in your Arduino projects. They are inexpensive and very easy to use.

In this article you'll learn how to add LCD displays to your Arduino project, both hardwired and using the I2C bus connection. You will also learn to use a popular LCD Keypad Shield which as a 2-line LCD along with 6 push buttons.

Read More »

Wireless Joystick for Arduino Robot Car with nRF24L01+

Learn to use the popular nRF24L01 radio modules with an Arduino, using the RadioHead library.

In this article we will conduct several experiments sending data between two Arduinos with the nRF24L01. We will then take what we have learned and build a wireless joystick controller for our robot car!

Read More »

Using Inexpensive 433MHz Transmit and Receive Modules with Arduino

Those inexpensive RF transmitter and receiver modules that you can get on eBay and Amazon are perfect when you need a low-cost method of sending one-way data between two Arduinos.

In this article you’ll learn how these modules work and how to use them in your next Arduino project.

Read More »

Stepper Motors with Arduino - Getting Started with Stepper Motors

Stepper motors are used in a variety of devices ranging from 3D printers and CNC machines to Blu Ray drives, cameras and even analog clocks.

In this article you’ll learn how steppers work, the difference between bipolar and unipolar stepper motors and how to control both of them with an Arduino.

Read More »

Using the HC-SR501 PIR Motion Sensor - With Arduino & Raspberry Pi

The HC-SR501 is a Passive Infrared (PIR) motion sensor that is extremely useful. It can be used all by itself or combined with an Arduino or Raspberry Pi

In this article you'll learn how a PIR sensor works and you'll build some cool projects using the HC-SR501. You can even make a motion activated camera that will tell you who is stealing your Jelly Beans!

Read More »

Using IR Remote Controls with Arduino

IR Remote controls are all around us in every room of our homes. Using an Arduino we can decode and repurpose our existing IR Remotes and build our own custom remote controls

In this article you'll learn how IR Remote Controls work and how to use inexpensive IR sensors and LEDs to do magic things with infrared light!

Read More »

Build a Robot Car with Speed Sensors

I’m sure you have seen those inexpensive robot car chassis kits, the ones that come with two 6-volt motors. They are great fun and very useful and they even come with a couple of speed encoder disks (those little black circles full of holes). Problem is, no one tells you how to use them!

Let’s resolve that and build a robot car with speed sensors. Along the way we’ll learn how to use Interrupts, a valuable programming technique.

Read More »

Using the HC-SR04 Ultrasonic Distance Sensor with Arduino

The HC-SR04 Ultrasonic Distance Sensor is a staple in robotics projects. This inexpensive device is capable of measuring the distance between itself and the nearest solid object from 2 to 400 centimeters. Exactly what you need to keep your bots from driving into walls!

In this article we'll look at this sensor in depth, including ways to make it even more accurate by compensating for temperature and humidity. There's lots of Arduino code to be has as well, so dig in!

Read More »

Controlling DC Motors with the L298N Dual H-Bridge and an Arduino

Controlling DC Motors is an essential skill for constructing robots and other hobby projects. An easy way to control DC motors is to use an L298N H-Bridge, an inexpensive component that you can buy from several sources.

Fear not if you’ve never heard of the L298N or if you don’t know what an H-Bridge is - in this article I’ll show you everything you need to know to start making things move with an Arduino. We’ll even construct a simple Robot Car that you can pilot using a Joystick.

So let’s get our motors running and learn all about the L298N H-Bridge!

Read More »

Meet the Arduino Family

Uno's, Megas, Gemma's, Nanos - the Arduino family is a huge clan, especially when you factor in the Genuino cousins and all of the Arduino clones and single-chip solutions. Each family member has its own unique personality too!

Let's meet some of the members of the Arduino family and learn which Arduino would be best suited for your next application.

Read More »