Arduino Uno as ISP for programming ATmega16-L (without bootloader)

I am a newbie . I have an ATmega16-L 8PU chip (40 pin PDIP) without bootloader. I also have an Arduino Uno rev3 board. But I don't have an AVR programmer and don't want to buy one. How do I burn the Arduino bootloader into the chip using the Arduino Uno board as ISP ?

I followed this tutorial --- http://arduino.cc/en/Tutorial/ArduinoToBreadboard but I got this result--

avrdude: Expected signature for ATMEGA168 is 1E 94 06 Double check chip, or use -F to override this check.

I know that official Arduino boards use ATmega 168-A chip (Maybe that's the problem ?). But I didnt know that before buying the chip.

If not Arduino,will I be able to upload C programs on ATmega168-L using Arduino Uno board as ISP ??

Please Help..

I am a newbie . I have an ATmega168-L 8PU chip (40 pin PDIP) without bootloader. I also have an Arduino Uno rev3 board. But I don't have an AVR programmer and don't want to buy one. How do I burn the Arduino bootloader into the chip using the Arduino Uno board as ISP ?

I followed this tutorial --- http://arduino.cc/en/Tutorial/ArduinoToBreadboard but I got this result--

avrdude: Expected signature for ATMEGA168 is 1E 94 06 Double check chip, or use -F to override this check.

I know that official Arduino boards use ATmega 168-A chip (Maybe that's the problem ?). But I didnt know that before buying the chip.

If not Arduino,will I be able to upload C programs on ATmega168-L using Arduino Uno board as ISP ??

Please Help..

I am a newbie .
I have an ATmega168-L 8PU chip (40 pin PDIP) without bootloader. I also have an Arduino Uno rev3 board. But I don t have an AVR programmer and don t want to buy one. How do I burn the Arduino bootloader into the chip using the Arduino Uno board as ISP ?

I followed this tutorial — http://arduino.cc/en/Tutorial/ArduinoToBreadboard
but I got this result–

avrdude: Expected signature for ATMEGA168 is 1E 94 06
Double check chip, or use -F to override this check.

I know that official Arduino boards use ATmega 168-A chip (Maybe that s the problem ?). But I didnt know that before buying the chip.

If not Arduino,will I be able to upload C programs on ATmega168-L using Arduino Uno board as ISP ??

Please Help…

avrdude: Expected signature for ATMEGA168 is 1E 94 06 Double check chip, or use -F to override this check.

Much likely you have some pico version of the chip and so the signature of the chip is different. You could hijack the avrdude.conf finding you chip there and change the signature to the one that match your chip. That error pops up because the avrdude tries to read the chip signature before upload anything and try to match it with the signature inside the avrdude.conf. If it does not match it stops the process

Put the ide in verbose mode (Preferences > verbose during upload)

It will print the avrdude command it uses to upload your sketch, copy it and add the "-f" command to override.

Open terminal paste command press enter wait for the magic to happen ?? profit

An Atmega168 with a 40PIN DIP package? Are you sure?

Are you sure it's not a Atmega32, Atmega164, Atmega324, Atmega644,, Atmeg1284 ?

Take a look again and make sure it's not an Atmega164.

The Atmega168 comes in DIP-28 packages, not DIP-40.

SumitAich: I am a newbie .

You are also a cross-poster. Wait while I round up all the other threads you started ...

Please do not cross-post. This wastes time and resources as people attempt to answer your question on multiple threads.

Three threads merged. One deleted.

I just wasted 10 minutes doing that. Now I don't have time over to answer your question.

  • Moderator

How to use this forum

SumitAich: I am a newbie . I have an ATmega168-L 8PU chip (40 pin PDIP) without bootloader. I also have an Arduino Uno rev3 board. But I don't have an AVR programmer and don't want to buy one. How do I burn the Arduino bootloader into the chip using the Arduino Uno board as ISP ?

I think you have a 40-pin ATmega16L with 16K flash and 1K SRAM, like a 40-pin version of a 168? All the 168 DIP's I can find are 28 pin. There is a 40 pin 162 I see on sale.

I like the ATmega32A. It's a 40-pin UNO chip, for people who need more pins and 8-bit ports.

I was just looking at a developer board with ZIF socket and breakout headers for that AVR, $7. I think it will take ATmega1284P and maybe every other 40-pin DIP AVR as well.

The tutorials you see cover certain AVR chips but you go to the Microcontrollers section of the forum and often find answers just reading threads. It's a matter of having the right core file for your target chip and your IDE knowing it. My first exposure was hex-editing the 328-P-PA core ID with the one on my -PU chips.

In the link below, Nick goes through bootloading and programming a 328P-PU and a 1284P on breadboards using different Arduinos as programmers. If your chip ain't covered, it's probably just yet.

http://www.gammon.com.au/breadboard

none of ur suggestions worked... but i followed this tutorial http://hardwarefun.com/tutorials/use-arduino-as-an-isp-programmer-to-program-non-arduino-avr-microcontrollers#comment-34793

and i was able to burn the arduino bootloader onto the atmega 16L chip on breadboard using arduino uno as isp and it was running the blink led program (wow)

but i am unable to upload any sketch using arduino ide

it displays ----- invalid signature - 0x00000000000 recheck connections and try again

Please help ??

The tutorial you found has a core file that I did mention you will probably have to find.

Arduino is a system. The IDE and boards are part of the system but so is breadboarding AVR's and this forum. That non-Arduino AVR bit... there's non-AVR Arduinos!

When you use the IDE with the new chip, you have to select the new target and COM in the IDE Tools menu.

Thanks goodie ... but I selected the new target and COM in the IDE Tools menu. No success......

That invalid signature isn’t what I’d expect. But you were able to make it load and run blink.

Just guessing that something wasn’t right and I dunno what or where.
But you do have the choice of an ATmega16L… errrrrrrrr maybe not.

I just look at the zip for those added cores and they are for the 16 and 16A, not the L.
You may have to go in and change the ID number for one of those to the 16L number.

Perhaps a friendly moderator would move this thread to the Microcontrollers section?

If it’s an AVR and there’s a usable core file, it’s a matter of getting past the glitches which means find and identify real problems from perceived ones and get to know what you’re doing better than just step by step in the dark, which should be possible if you stick with it.

What I have found doing breadboard ICSP chip burning is that sometimes jumpers need a bit of fussing with to get right. Also last time my parts were so close I had 2 places where leads were touching that shouldn’t short like that but then I use small breadboards.

Nick might even be back. You might get that 10 minutes.

From what I saw recently the Atmega16 has the same pinouts as the Atmega1284, so it shouldn’t be too hard to make it work.

and i was able to burn the arduino bootloader onto the atmega 16L chip on breadboard using arduino uno as isp
and it was running the blink led program (wow)

but i am unable to upload any sketch using arduino ide

Perhaps post a clear photo of what you are doing.

it saya that ---- use -F to override this check

shud i try that out or will it damage my arduino uno board

Yes you can without any damage but in not help I think. You have to focus to your wiring it could be a problem. And also, did you used correct bootloader? And like Nick Gammon wrote, there is similar setup like 1284P.

can any1 give me link of the atmega16L core file.

Same problem I am facing with ATMEGA 16L. I also did not receive any helpful help, may be because people rely too much on 328p spi to make mulit use of things.

Most probably you have to find your own solution brother. Professional people are only professional with some chips.