Problems burning an ATmega328-PU using arduino uno-R3

Hi,

I'm trying to burn an ATmega328-PU with my arduino uno-r3 and I haven't had success. I've tried some ways to burn it but I can't. I modified the avrdude file and boards file and I got to load the bootloader successfully in my device but I couldn't load sketches, I got this error message: "MCU 'atmega328' supported for assembler only-unknown MCU 'atmega328' specified..." , when I tried to load a sketch on it. Somebody has an idea what it happening here or what is the problem?.

Do not cross-post. Other threads removed.

Hi Nick Gammon,

Thanks for the replay. I'm trying to follow the instructions in the link that you provided me. I'm a little lost in one of the last steps where I should copy and paste the hex file (I supposed) into my bootloader sketch, that's right? Do I need to create a new file?, that is my doubt. Also, you mentioned the following:

"You will then need to fill in the appropriate figures into the signatures table, such as the bootloader start address, size, programming page size (see the datasheet) and the correct fuse and lock bits. The fuse bytes will probably be the ones mentioned in the boards.txt file in the Arduino environment, for the chip in question."

I'm confused with above instruction, can you give an example?. Thanks again.

Those instructions only apply to some bootloader that isn't supported. For an Atmega328P just compile the code and run it. Have you done that? What happened?

Hi Nick,

I’m not using ATmega 328P-PU, I’m using ATmega328-PU. I could load the bootloader apparently, using others methods, but I couldn’t load some sketch in the device, I got this error message “MCU ‘atmega328’ supported for assembler only-unknown MCU ‘atmega328’ specified…”

Hi Isais,

You need to edit your avrdude.conf file (varies in location by platform) to permit the PU as it has a different signature from the P.

Search for the section that looks like this..:

part parent "m328"
    id			= "m328p";
    desc		= "ATmega328P";
    signature		= 0x1e 0x95 0x0F;

    ocdrev              = 1;
;



#------------------------------------------------------------
# ATtiny2313
#------------------------------------------------------------

And then, after the part parent section but before the ATTiny2313 declaration, insert another part parent section:

part parent "m328"
    id      = "m328pu";
    desc    = "ATmega328PU";
    signature   = 0x1e 0x95 0x14;

    ocdrev              = 1;
;

This will treat this chip exactly as a 328P and you are able to use, eg: avrdude -p m328pu to specify this chip.

Hi jotapeh,

Thanks for reply. Actually, I tried to do that you mentioned above. I modified avrdude and boards files and apparently I can load the bootloader in ATmega328-PU but when I want to burn a sketch on it I can't, I got this message "MCU 'atmega328' supported for assembler only-unknown MCU 'atmega328' specified..." . I think it could be that bootloader isn't the correct one or it is outdated, any idea?

IsaiasD88:
Hi Nick,

I'm not using ATmega 328P-PU, I'm using ATmega328-PU. I could load the bootloader apparently, using others methods, but I couldn't load some sketch in the device, I got this error message "MCU 'atmega328' supported for assembler only-unknown MCU 'atmega328' specified..."

My bootloader uploader supports the ATmega328. Did you try it?

I got this error message "MCU 'atmega328' supported for assembler only-unknown MCU 'atmega328' specified..."

That message is not output by my sketch.