Program Arduino Nano Via Uno With ICSP

32,039

49

35

Introduction: Program Arduino Nano Via Uno With ICSP

About: Curious by nature. Like to know how things works & love to learn about them. Especially electrical, electronics, mechanical, micro-processors.

Hello Friends,

In this instructable, i have shown that how can you program Nano via Uno.

As you can see in above image, my Arduino Nano's USB female pin is broken.

So i have to find way to upload sketch to it some way.

One day i was Google-ing, i have read somewhere that a Arduino board can be programmed via another Arduino board.

So by searching on it, i found a solution for this.

So lets get started to solve this.

Tools you will Need :

Arduino Uno ( which will act as a programmer )

Arduino Nano ( to be programmed )

Jumper Cables ( Some male-male, male to female.)

Step 1: Preparing Programmer

Attach your Arduino to PC.

Now, go to..

File > Examples > ArduinoISP > ArduinoISP

A sketch will open, upload it on Uno.

When uploading is done. unplug it from PC.

Now, take some jumper cables & attach Uno & the board you want to program just like the image above.

A ICSP pi out diagram is in another image. A (.) near 1 is first pin. on Arduino same . or 1 written near ICSP header.

Uno Nano

D13 > SCK

D12 > MISO

D11 > MOSI

D10 > RST (reset)

5V > VIN

GND > GND

Note : If your board's operating voltage is 3.3V then use 3.3V.

Step 2: Preparing Arduino IDE

When wiring is done.

Now we have to do some settings in IDE.

  • Go to Tools > Board & select Arduino Nano.
  • In Processor, select ATmega328.
  • & In Programmer, select Arduino as ISP. ("Arduino as ISP" not "ArduinoISP")

The settings is done.

  • Now, open up the sketch you want to upload on your Nano,
  • In Menu, go to Sketch & click on "Upload using Programmer"

IDE will compile the sketch & upload it to your Nano.

The RX TX leds will blink rapidly on both board, & you will see done uploading.

If not, then recheck all the wiring & settings.

If you get any problem or you want to give me suggestion, you can write in comment section below.

Happy Programming ^_^

3 People Made This Project!

Recommendations

  • Make it Glow Contest

    Make it Glow Contest
  • First Time Author Contest

    First Time Author Contest
  • PCB Challenge

    PCB Challenge

35 Discussions

0
martini73
martini73

1 year ago

Hi all...anyone tried Nano via another Nano?

0
sujay kamble
sujay kamble

1 year ago

getting error
Arduino: 1.8.5 (Windows 10), Board: "Arduino Nano, ATmega328P"
Sketch uses 926 bytes (3%) of program storage space. Maximum is 30720 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x1c
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x1c
An error occurred while uploading the sketch
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

0
ukufa.uku.fa
ukufa.uku.fa

Question 2 years ago

por favor necesito ayuda!!!! lo hice y el programa que tenia guardado en el nano se borro. el problema es que ahora no puedo usar ni el arduino uno ni el nano.. cuando los conecto como la foto 1. la pc lo detecta y parpadea el led L en los dos arduinos. porfavor ayuda quiero mis dos arduinos de vuelta :c

0
nikhil5233123
nikhil5233123

2 years ago

serial monitor not shows in this way......

1
psecto
psecto

3 years ago

Live long and Prosper! you saved me hours and hours of headaches. I was trying to speed up the boot process of this nano project I have. All I needed to do is upload my code via the UNO. Following your instructions war marvelous! Thank you, thank you, thank you!

0
IqbalR9
IqbalR9

3 years ago

I have this problem when i upload as programmer. how should i do?

avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.

0
PradeepS100
PradeepS100

Reply 3 years ago

I used the connection as follows and it worked for me:

UNO > NANO

D13 > D13

D12 > D12

D11 > D11

D10 > RST (reset)

5V > VIN

GND > GND

0
PradeepS100
PradeepS100

3 years ago

I am having the same problem as IqbalR9 and I don't know why. Anyone has found a solution for this yet? I am using a Elegoo Nano with a CH340G mini USB adapter on it and it came with a bootloader. Please let me know if you have a solution.

1
GiorgiQ
GiorgiQ

3 years ago

Thank you very much for your advice

0
Jorohol
Jorohol

3 years ago

Can i still use the Serial.print() function in the nano?

0
Gautam1807
Gautam1807

Reply 3 years ago

no, you can't.. you can use bluetooth with it...

1
KalpeshD1
KalpeshD1

3 years ago

Great instruction and happy that my nano is now programmed!

Can you do the same to Arduino Pro Micro or is it different?

0
Gautam1807
Gautam1807

Reply 3 years ago

i havent tried it, may be this can work on pro or micro...

0
David_Lin
David_Lin

3 years ago

shouldn't i remove the UNO chip away from it's socket?

0
Gautam1807
Gautam1807

Reply 3 years ago

No, you don't have to remove the chip.

0
flashbry
flashbry

4 years ago

This is great thanks.

I've just bought a bunch of nanos without usb (to satisfy the mad scientist in me!) and have an Uno which I can now program them with.

0
Gautam1807
Gautam1807

Reply 3 years ago

great buddy.. i am a mad scientist too... :)

0
NishanT2
NishanT2

3 years ago

my nano started to heat. why is that ?