DIY Homemade Arduino

Arduino is an open-source development platform for engineers and hobbyists to develop electronics projects in an easy way. It consists of both a physical programmable development board (based on AVR series of microcontrollers) and a piece of software or IDE which runs on your computer and used to write and upload the code to the microcontroller board.

Arduino uses a boot loader. Boot loader is a piece of software that allows the new software to be burned on it. So in this DIY, I am going to discuss “How to Burn a Boot Loader in a Fresh ATmega328 Chip and Build a Homemade Arduino on PCB”. In Arduino UNO we use ATmega328 IC so that I select this one to demonstrate this project.

 

Components Required:

  • Arduino UNO Board with IC and cable
  • Atmega328 IC
  • Breadboard
  • Connecting wires
  • 16 MHz crystal oscillator
  • 10 K resistor

 

Steps for Building your own Arduino Board:

To burn a boot loader in new fresh Atmega328 IC, we need a Arduino board (we can use any Arduino board to burn boot loader). And then we need to follow below steps. We have also demonstrated the whole process in the Video at the end of the tutorial.

Step 1.  In first step, arrange all the required things given in components list above

build-your-own-Arduino-Board components

 

Step 2: Now remove “Arduino Original IC” from Arduino board with the help of Screw Driver. And insert “New Atmega328 IC” into the Arduino board.

Bootload new atmega128 chip for homemade arduino 1 Bootload new atmega128 chip for homemade arduino 2

 

Step 3: Now open Arduino IDE and go to File -> example -> ArduinoISP and open it.

Bootload new atmega128 chip for homemade arduino 3

 

After opening ArduinoISP, select Arduino UNO board from Tools -> Board -> Arduino Uno.

Bootload new atmega128 chip for homemade arduino 4

Then select COM PORT from Tools -> Serial Port -> COM10

Bootload new atmega128 chip for homemade arduino 5

 and then upload ArduinoISP Sketch.

Bootload new atmega128 chip for homemade arduino 6

 

Step 4: Now remove this New IC from the Arduino Board and insert the Arduino pre booted or Original Arduino IC into Arduino board and upload the same ArduinoISP sketch in it, like we have done in Step 3.

 

Step 5: Build the below given Circuit on the bread board with New IC on Breadbaord and Original IC on Original Arduino Board.

build-your-own-Arduino-Board-fritzing-1

 

Step 6: Now in Arduino IDE go to Tool and click on the Burn Bootloader.

Bootload-new-atmega128-chip-for-homemade-arduino-7

 

Now you will see the Rx and Tx LED on the Arduino board is blinking randomly for some time. It means Bootloader is burning in new ATmega 328 IC. And Arduino IDE will show “Done burning bootloader”. Now you can use this ‘New IC’ in your Arduino board.

Bootload-new-atmega128-chip-for-homemade-arduino-8

 

Step 7: Now Build your own Homemade Arduino Board on Zero PCB by soldering the components gathered in Step 1, following the Circuit Diagram below. Also check the Video below.

homemade-arduino-board-circuit-diagram

 

Insert the ‘New IC’ in this board and you are done.

You can also build it properly on PCB with a proper PCB layout and etching. Learn here to Make PCB at Home and convert Schematic into PCB layout using EasyEDA.

For LCD Interfacing,  just connect your home made Arduino Board with Original Arduino Board  using Rx, Tx, RST and GND pins of Original Arduino Board, as shown in below Fritzing Circuit or above Circuit Diagram. And upload the Below Given Code (Code section).

build-your-own-Arduino-Board-fritzing-2

Please Remove ‘Arduino Original IC’ from the board, when you upload code in new Arduino IC on the bread board or Zero PCB. You can power your Arduino Board with the 5v Pin of Original Arduino Board, as we have done in above Fritzing Circuit.

Code: 

#include <LiquidCrystal.h>
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup() 
{
  lcd.begin(16, 2);
  lcd.print("HomeMade Arduino");
  lcd.setCursor(0,1);
  lcd.print("Circuit Digest");
}

void loop() 
{
   
}

Video: 

Comments (5)

  • harish kumar's picture
    harish kumar

    how to burn bootloader without original ic
    because i can't able to upload any programme in original ic, my bootloader is crashed
    i have a new ic, but i can't burn bootloader
    pls tell any alternate idea

    Jun 02, 2016
  • salufu's picture
    salufu

    please you have not yet posted anything on cnc machine.i will be glad if anything like that is posted.thanks in advance

    Jul 13, 2016
  • salufu's picture
    salufu

    avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xe9
    please what can i do am getting this kind of error message

    Jul 25, 2016
  • saddam khan's picture
    saddam khan

    try with arduino ide 1.6.7

    Jul 25, 2016
  • Neal McDonald's picture
    Neal McDonald

    Nice piece of work done, though I believe little more innovation is required to give it a proper shape. 

    Oct 07, 2016

Leave a comment