I am getting Device ID errors....

I want to know if there is another way to Program Atmega328P-U chip. I ordered the chip from Jameco, and the catalog said it was a Atmega328P-PU, but it was the was the Atmega328P-U they sent me. The ISP programmer will not program this, because it is not the correct device ID. I informed them I wanted the aforementioned part number, and they said it was the same part. I agree, except for the fact that it will not program in the ISP programming process, it gets the Device ID error. And terminates the program.

I understand you can change something or add a script to the Config file to program it? If this is so, can you walk me through it, so I can use these chips? I tried to change the lines, and write it, but, the folder is write protected, and no matter what I did, in changing the read only, it still would not let me save the changes.

Is there a way to permanently add this to the config file, so it will not have to be change every time?

This is a bit frustrating, but, I failed to find the forum article dealing with this issue.

Thank you in advance for your help, folks!


The 328p-pu and 328p-u are the same part. Microchip (which recently bought Atmel) changed the suffix indicating the package recently to harmonize with the rest of their part numbering scheme.

Enable verbose uploads in preferences. That will tell you what it is actually getting back for the chip signature. I suspect you will find that it's 0x000000, which indicates that either there is a wiring problem, or you set the chip to use an external crystal when none is present. 99+% of the time, when you get the signature error, it indicates a problem that would not be resolved by changing the signature in the config file - either wiring, or that it's set to use a clock source that isn't present. In neither of those cases will changing the signature in the config file fix the problem.

What were you attempting to do? If you're trying to bootload them as Uno (or other board with a crystal), do you have the crystal installed? If not, "burn bootloader" will set it to use a crystal, and then fail because no crystal is present, and a clock signal is needed for ISP programming.