Arduino Projects with DIY Instructions

Welcome to my collection of Arduino Projects. Even if you are just getting started with Arduino, you don’t have to worry about that. Each of the following DIY Arduino projects is covered with detailed step by step tutorial on how to do it yourself and includes circuit schematics, source codes and videos.

This collection of Arduino Projects features:

  • Wireless control
  • Automation
  • Motors control
  • Robots
  • LEDs
  • and more.

Along with my DIY Arduino projects here you can also find project ideas backed up by my detailed Arduino tutorials for various sensors and modules. Using the comments section below, you can also suggest your ideas, as well as discuss anything related to these Arduino projects.

I will continuously update this article with all new stuff that I make.

Arduino Projects with detailed step by step guide

Arduino Radar (Sonar)

This is one of my most popular project and it’s really fun to build. The radar can detect objects in front of it and map them on PC screen using the Processing IDE.

Arduino Radar Project

For this project you just need two components along with an Arduino board, and that’s an ultrasonic sensor and small servo motor. The range of the radar can be adjusted to up to 4 meters with 180 degrees rotation.

Difficulty: Intermediate

Range Measurer and Digital Spirit Level

Here’s another project utilizing the HC-SR04 ultrasonic sensor. This time we will use it to make an distance meter which can measure distances up to 4 meters, as well as, measure square area.

Arduino Range Measurer and Digital Spirit Level Project

The project also includes and accelerometer which is used for the digital spirit level function or for measuring angle. The results are displayed on 16×2 LCD and all components are attached on a custom design PCB.

Difficulty: Advanced

Arduino Robot Arm

When it comes to automated manufacturing, robot arms play big role with so many applications. They are often used for welding, assembling, packing, painting, pick and place tasks and much more. This Arduino project is actually a robotic arm made out of 3D printed parts, servo motors joints and controlled using an Arduino Nano. What’s even cooler we can control the robot arm wirelessly via a smartphone and a custom build Android application.

DIY Arduino Robot Arm with Smartphone Control

The robot arm has 5 degrees of freedom, so we need 5 servo motors, plus an additional servo for the gripper mechanism. For the communication with the smartphone we use the HC-05 Bluetooth module.

Difficulty: Advanced

Arduino CNC Foam Cutting Machine

Building your own CNC machine might seem like a big challenge for many of you, but the following Arduino CNC Machine project shows that building a CNC machine is actually not that hard.

Arduino CNC Foam Cutting Machine

This CNC machine is actually a foam cutting machine. Instead of bits or lasers, the main tool of this CNC machine is a hot wire. It’s a special type of resistance wire, which gets really hot when current passes through it. The hot wire melts the foam when passing through, and so we can precisely make any shape out the styrofoam.

Difficulty: Advanced

Arduino Color Sorter

Sorting out objects or products by their color has an important real world application. These types of machines are often used for sorting fruits, seeds, plastics etc. The working concept of these machines is rather simple. All you need is a color detecting sensor and of course a system that feeds the object to the sensor and then sort it out.

Arduino Color Sorter Project - Color Sorting Machine

In this project we will learn how to use a color detecting sensor along with the Arduino. We are going to be sorting out colored skittles but you can use the same sensor and method for sorting out anything else.

Difficulty: Intermediate

DIY Arduino Gimbal / Self-Stabilizing Platform

The following Arduino project is a simple gimbal or a self-stabilizing platform which can be used for keeping objects or the top platform level. The project is rather simple with just several electronic components.

DIY Arduino Gimbal Self-Stabilizing Platform with MPU6050 sensor

Based on the MPU6050 orientation and its fused accelerometer and gyroscope data, we can control the 3 axes or servos that keep the platform level.

Difficulty: Intermediate

Arduino RC Airplane

Anyone who had a chance of playing around with some RC airplanes knows how cool and fun it is. It’s even cooler and more satisfying if you build the RC airplane on your own. The following project steps the satisfaction up even further, because here I will show you how to build your own RC airplane which is 100% DIY build. Also, we have a 100% DIY radio control system based on the Arduino.

DIy Arduino RC Airplane

The airplane is entirely made out of Styrofoam and what’s cooler, the shapes are made with the help of my DIY Arduino CNC Foam Cutting Machine, a project already mention above. The radio communication is based on the NRF24L01 transceiver modules. For that purpose, I used my DIY Arduino RC Transmitter and DIY Arduino RC Receiver.

Difficulty: Advanced

Arduino Robot Car

The combination of DC motors and Arduino is always fun, and so is this project. Here we will build our own robot car from scratch. The car will be powered with Li-ion batteries and two 12V DC motors, and controlled using the L298N driver and an analog Joystick.

Arduino Robot Car Project

Through this project we will also learn how H-Bridge and PWM motor control work.

Difficulty: Intermediate

Arduino Robot Car Wireless Control

This Arduino project is an extension to the previous one, and here we will learn how to wirelessly control the Arduino robot car.

Arduino Robot Car Wireless Control using HC-05 Bluetooth, NRF24L01 and HC-12 Transceiver Modules

You can choose one of the three different methods of wireless control explained in this project, or that’s the HC-05 Blueooth module, the NRF24L01 transceiver module and the HC-12 long range wireless module. Additionally you can learn how to make your own Android app for controlling the Arduino robot car.

Difficulty: Intermediate

Mecanum Wheels Robot

The following project is probably one of the coolest Arduino project in this list. It’s an Arduino robot car which instead of normal wheels, it employs onmidirectional wheels or mecanum wheels which enable to robot to move in any direction.

Arduino Mecanum Wheels Robot Project

The wheels are attached on four stepper motors which are individually control. By rotating the wheels in certain pattern, they exert diagonal forces due the diagonally position rollers on the circumference of the wheels, and so they can move in any direction. The robot car can be remotely controlled either vie Bluetooth communication and an custom build Android application, or using using an DIY RC transmitter with the help of the NRF24L01 transceiver module.

Difficulty: Advanced

Arduino Robot Arm and Mecanum Wheels Platform Automatic Operation

Here’s an upgraded version of the previous mecanum wheels robot project. On top of the platform I added the DIY Arduino Robot Arm project mentioned above and now they can work together.

Arduino Robot Arm and Mecanum Wheels Platform Automatic Operation Project

As the robot uses stepper motors for the wheels and servo motors for the robot arm, we can precisely control them using the custom build Android application. What’s even cooler, we can record the movements of the robot and then the robot can automatically repeat them. Of course, as for any of my Arduino projects, the Arduino code, the custom build Android application, as well as the 3D model files can be found and downloaded from the particular project article.

Difficulty: Advanced

Arduino Wire Bending Machine

Controlling stepper motors using Arduino is without a doubt one of most satisfying thing for an Arduino enthusiast. There so many machines based on this motors, like CNC machines, 3D printers, various automation machines etc. This Arduino project is all about that, it describes how you can build such a machine. It’s a machine for bending wire, where with the help of  stepper motors we can precisely bend wire and make various shapes and forms out of it.

Arduino 3D Wire Bending Machine Working Principle.jpg

The machine features three stepper motors. With the first stepper we feed the wire to the bending mechanism. Here we have another stepper motor used for the bending the wire at the right angle. There’s also another stepper, for controlling the Z-axis, or this stepper enables the machine to create three dimensional shapes. With this project we can also see how useful 3D printers are for Arduino projects of this type or for prototyping.

Difficulty: Advanced

RFID Access Control System

RFID technology has wide range of applications and access control is one of them. We often encounter this in hotels for accessing our room or at work for checking in or accessing restricted areas.

Arduino RFID Door Lock Access Control Project

In this project we will learn how to use the Arduino to make an RFID controlled door lock. The system consists of an MFRC522 RFID reader and RFID tags/ cards that are based on the MIFARE protocol.

Difficulty: Intermediate

DIY Arduino based RC Transmitter

Many Arduino projects that I make require wireless control and that’s why I build this Arduino based wireless radio controller. With this RC transmitter I can wirelessly control pretty much with a range up to 700m in open space. It features 14 channels, 6 of which are analog and 8 digital inputs.

DIY Arduino based RC Transmitter

The brain of this Arduino project is an Arduino Pro Mini board which is the smallest Arduino board, the radio communication is based on the NRF24L01 module, it has 2 joysticks, 2 potentiometers and 4 momentary push buttons and also an accelerometer and gyro module which can be used for controlling things with just moving around or tilting the controller. I mounted all electronic components on a custom design PCB and made a cover out of transparent acrylic.

Difficulty: Intermediate

DIY Arduino based RC Hovercraft

The following Arduino project is a great example of utilizing the DIY RC transmitter from above. It’s a 3D printed hovercraft which I entirely designed on my own, and of course, the 3D printing files are available for downloading. The hovercraft uses two brushless motors, one for creating an air cushion for the lift, and the other for generating thrust or moving forward.

DIY Arduino based RC Hovercraft Project

For the wireless control we are using the NRF24L01 module, which accepts the data coming from the RC transmitter. Then using the Arduino and two ESCs (Electronic Speed Controler) we control the BLDC motors speed. On the back side of the hovercraft there is also a servo for controlling the rudders, or for controlling the steering. I must say that driving this DIY hovercraft is so fun.

Difficulty: Advanced

Arduino Game Project

This game project is based on the popular Flappy Bird game for smartphones. Using the touch screen we control the bird while trying to avoid the pillars.

For this project we need a 3.2 inches TFT Touch screen, an TFT Mega shield adapter and an Arduino Mega board. The code is a bit longer but everything is explained in details.

Difficulty: Advanced

Arduino LED Matrix Scrolling Text

In this project we will control LED Matrices using the MAX7219 driver. This driver can control up to 64 individual LEDs while using only three wires. Also we can connect up to 8 drivers in series and still using the same wires.

Android App for Controlling 8x8 LED Matrix via Bluetooth

To make this project more interesting I also added an example where you can update the text on the LED matrixes through your smartphone using a custom-made Android app.

Difficulty: Advanced

Arduino Camera Slider with Pan and Tilt Mechanism

Camera slider are great for capturing cinematic shots, and having pan and tilt system on top of it even further increase the possibility to capture better shots.  In this project I will show you how you can build your own one, which costs way less then one found in the stores and still you can get great and super-smooth shots.

DIY Motorized Camera Slider with Pan and Tilt Head - Arduino Based Project Photo

The slider has three NEMA 17 stepper motors controlled via the A4988 stepper drivers and the Arduino Nano board. Using a joystick we can control the pan and tilt movements and using a potentiometer we can control the sliding movement. With this DIY camera slider we can use the Set button to set two different IN and OUT points, so the camera can automatically move from one to the other point. Personally, considering all my Arduino projects so far, I found this to be the most practical for me.

Difficulty: Advanced

Arduino Alarm System

If you ever thought of making your own security system then this project is a great starting point. Here we will utilize an ultrasonic sensor for detecting movement.

Arduino Alarm System Project

If a human or object passes in front of the sensor, the alarm will be activated. For deactivating the alarm you will have to enter a password using a keypad.

Difficulty: Intermediate

Arduino Hexapod Robot

Making biologically inspired robots is very popular among engineering students. This Arduino project is all about it, we will build a hexapod robot which features six legs, a tail or abdomen, a head, antennas, mandibles and even functional eyes. All of this makes the robot look like an ant.

Arduino based Ant Robot - Attack mode - object detection

Each leg have three joints, and for each joint we need a servo motor. That means that we need total of 18 servos for this project, and additionally 3 servos for the head movements and 1 servo for the tail. The brain of the robot is an Arduino Mega because it’s the only board that can control more than 12 servos using the Servo library. I also designed a custom PCB which acts as an Arduino Mega Shield so we can easily attach all servo connects. We can control the ant robot via Bluetooth and a smartphone, or radio communication. The ant also has built-in ultrasonic sensor in the head, so it can detect objects in front, and it can even strike if the object is present if front of it.

Difficulty: Advanced

Arduino Music Player and Alarm Clock with Touch Screen

In this project we will learn how to build our own music player. It features a touch screen, MP3 player, a temperature sensor and an alarm clock.

Arduino Touch Screen Music Player and Alarm Clock Project

The code behind this project is a bit more complex with around 550 lines but everything is explained in details with comments for each lines. There is also a detailed video explanation for it.

Difficulty: Advanced

DIY Vending Machine

If you are interested in building something more complex with Arduino then this project is the one for you. Although complex, you could easily recreate it as there is a detailed step by step explanation on how everything works, including circuit schematics and source codes.

DIY Vending Machine - Arduino based Mechatronics Project Featured

The structure of the machine is made out of MDF. For discharging the items I used continuous rotation servo motors, while for the carrier system I used two NEMA17 stepper motors. For detecting the coins the machine uses an infrared proximity sensor.

Difficulty: Advanced

Arduino Based Interactive LED Coffee Table

At first glance this table looks like a normal coffee table but once you turn on the power on it gets to a whole new level. The table has 45 sections which can glow in any color we want, plus it reacts on objects placed on top of it.


The heart of the table is an Arduino which controls the 45  WS2812B Addressable LEDs and the objects on top of the table are detected using infrared proximity sensors. What’s even cooler it has built-in Bluetooth module which enables interaction with a smartphone for selecting the LEDs colors.

Difficulty: Advanced

Arduino Wireless Weather Station

This Arduino project idea is rather practical because it features indoor and outdoor temperature and humidity measurement. It is based on the DHT11/ DHT22 sensor, the NRF24L01 transceiver module for the wireless communication and the DS3231 RTC. For the display we can either use 16×2 character LCD or a 3.2 inches TFT touch screen.

Arduino Wireless Weather Station

The outdoor unit can be powered with batteries and the indoor unit with an AC adapter. The outdoor unit measures the temperature and the humidity and sends the values to the main indoor unit. Here these values are printed on the LCD along with the data and time values from the DS3231 real time clock module.

Arduino Wireless Weather Station - Arduino Projects Ideas

Additionally, we can use SD Card module for storing the data onto Micro SD card.

Difficulty: Intermediate

Arduino Projects Ideas

The following section of this article contains Arduino projects ideas based on my detailed tutorials on various sensors and modules, as well as your suggestions from the comments section below.

For each project idea I will point out the required components as well as the particular tutorial for each of them.

Android Smartphone Controlled Power Outlet Using Arduino

Controlling your home power outlets via a smartphone is the first step in home automation. You can easily make your own Arduino controlled power outlets utilizing the knowledge you can get from my Arduino tutorials.

Android Smartphone Controlled Power Outlet - Arduino Projects Ideas


For this project you just need two components along with the Arduino board. An HC-05 Bluetooth module and a 5V Relay module for which I already have detailed tutorials. For powering the Arduino and the relay you can use 220/ 110V AC to 5V DC converter.

Using your smartphone you can connect and control your power outlet via Bluetooth. You can either use some already made apps for controlling Arduino from the Play Store or create your own custom made app. In this way we can also control the power outlets through voice control commands.

Difficulty: Advanced

Home Automation using Arduino

Home automation is one of the most popular Arduino projects nowadays. The goal of this project is to remotely control anything in your house like lights, appliances, temperature, security devices and so on, with a single device or your smartphone.

In order to make such a project we need decent amount of knowledge in Arduino. The following home automation concept that I suggest is based on my detailed Arduino tutorials for various sensors and modules.


So the idea here is to have a master unit which includes a touch display, and several slave units which will execute commands coming from the master. As for the wireless communication we can use the NRF24L01 radio frequency modules, and each slave unit can have various functions like, temperature monitoring, power outlet control, lights control, security alarm and so on.

Of course, there are endless possibilities and combinations for building a home automation system using the Arduino board. You can always change and add more devices. You can also make a Bluetooth communication so you can control all of this using your smartphone etc.

Difficulty: Advanced

Arduino Gesture Control

The idea for this project is to remotely control an Arduino project using hand gestures. Let’s say we want to control the Arduino Robot Car that we mentioned above. So instead of the joystick we will use an MEMS module for the control.

Arduino Gesture Control Arduino Project

We can use the GY-80 module which features an accelerometer, a gyroscope and a magnetometer. Then the data we are getting from these sensors to control the steering of the robot car. As for the wireless communication we can use the NRF24L01 transceiver modules.

You can also check my Mechatronics Final Year Project where I used a similar method for controlling a 3D model in Matab Simulink.

Difficulty: Advanced

Feel free to ask any question in the comments section below and don’t forget to suggest some more Arduino projects.

37 Responses

  1. Shrikant A Gaikwad

    Hi, Shrikant here ,i was working on a project ,i got a problem in my project, the problem is,i am trying to operate big motors using relays ,contactor relay,operated by arduino. The relays does not operate properly ,the loop does not get completed .The relays are not taking load contactor ,i think so. It completed the loop 3 times only. Do you have any suggestion or hint please reply me.

    • Henry

      are the relay coils providing a back emf spike as this may upset the arduino , this occurs when power has been interrupted to the coil the way to stop this is to wire a suitable diode in reverse polarity to the emf supplying the coil when it is to be activated , this may have already been done but I thought I’d mention it just in case

    • bhavik

      hi shrikant,

      jst try to use regulated DC supply. If you are using 9v bat then same problem may occur.

    • Dave Meaker

      The digital pins may not sink enough current to operate the relays, you may need to use transistors to switch the relays.

      • Stew Swanson

        Dave is probably right but another way is to use a smaller relay and then pick the large relay with the contacts of the smaller one.

  2. matel

    i am a student working on my final year project which is to design an automated car jack,will use a hydraulic jack for lifting an automobile and i want to use my android phone to act as the remote control,meaning lift of the automobile will simply be done by just pressing the button in app which will be installed on my phone,kindly asking for some ideas on how i can achieve this and the necessary software/app i can use on my phone?

    • Dejan Nedelkovski

      That’s a cool project idea. The main concern if you would like to build a real life example with lifting a car would probably be the lifting mechanism. Otherwise, if you just want to make the concept working with a simpler mechanism, the software/app part of this project would be easily achievable. For that purpose you can check my detailed tutorials, how to use the Arduino with the HC-05 Bluetooth module and how to make your own Android app for controlling the Arduino.

  3. Microcyb

    Wondering if your next project should be using a ESP8622, WS2812 strips and a TFT touch display. Many use the adruino webserver to control lights, but why not do it through a TFT to chose the various patterns and effects?
    Throw the phone aside and have a all in one to control those light!

  4. Divyansh

    I got an A in my project. Thanks for such beautifully designed website and arduino skills. Just a beginner at the moment. You rock! : )

  5. Mr. Pradip J Ikhankar

    You have explained each and every project in detail and simple language. Anybody who knows the basics of electronic science can build the project easily and can enjoy Arduino circuits. Thanks to your team

  6. cikgu

    we are making a project about campus security can we built a system that can lock or unlock door and record our data by scanning smartcard?

    • Dejan Nedelkovski

      You should check my Arduino RFID Tutorial for that purpose. There I explain how to use RFID card to lock and unlock a door, and of course, you could add some more features to it, like recording the date, the time, count the data etc.

  7. paul

    Hey there i’m working on a project on metal detectors anything on the subject?

  8. Aubrey Bowles

    How can I build a small cheap fall detection device that sends an alert to a phone when the wearer falls?

    • Dejan

      You could try to achieve that using an accelerometer sensor. If a sudden higher acceleration is detected that would mean that the wearer has fallen. Check my MEMS tutorial for this. These sensors are cheap and you might be able to get that effect.

  9. Kail

    I would like to ask if you could do a tutorial on how to send strings from an android and print it on the computer via bluetooth module and using arduino.

    • Dejan

      Well check my Arduino Bluetooth tutorial. There I’ve explained how you can make communication between Android and Bluetooth module, as well as Arduino and PC.

  10. Akshu

    Can you please tell me about the 5 volts external power supply(& how to build an another one for Arduino projects) you’ve used in your arduino projects for powering other actuators & devices

    • Dejan

      I would recommend to get a DC-DC Buck Converter which can be usually set to voltages from 3 to 35 volts, with inputs from 3 to 35 volts. And depending on your application you need to make sure that your buck converter have enough power, or it can handle the amount of current your project needs. Or of course, you can get a particular voltage DC adapter or power supply.

  11. Nika Pholodashvili


    First of all i really love this projects.

    I want to ask to make CNC machine using old Inkjet Printer Parts, with DC motors and step readers on it..

    Thank you. 🙂

    • Dejan

      Hey, thanks!
      Yeah, a CNC machine is already on my TO-DO list and I will definitely make one in future. 🙂

  12. gregy

    Hi Dejan,
    very nice work you doing here!
    Are you considering to build some battery project with as low power consumption as possible? Weather station would be a great example but you already built that. Maybe ver. 2.0? 😀

    • Dejan

      Thank you! Yeah, that’s a good suggestion and I definitely will make projects like that in future. A solar panels for charging can also be implemented.

  13. Addey

    I’ve learned a lot from your website especially on how to control a device using a smartphone via bluetooth. Thanks man! You did a great job!

  14. Jose


    Firts of all let me thank you for all effort and very good explanation you put in your projects and videos, you already built a radio controller. Is there any future project to build an arduino based drone and control it throughyou RC controller? I guess ot would be very nice.
    Thanks again and congratulation for your good work.

    • Dejan

      Hey, thanks! Well yeah, I will build an Arduino based drone in some of my future videos, but I’m not sure exactly when I will do that. So stay tuned!

  15. Serba T

    thanks a lot for share !!! its really amazing and great projects! Im just starting to understand this staff from Arduino I’m just a beginner so I need to ask you something about the different boards that you use:
    can I use a board bought in another online store for example aliexpress?
    and the other question is
    Will work your code with this board from aliexpress?

    best regards, and again, thank so much for you help and incredible knowledge


    • Dejan

      Thanks! Sure, you could use mostly any board, bought from anywhere, which is Arduino based or compatible for any of these Arduino projects.


Leave a Reply

Your email address will not be published.