I am trying to burn the bootloader to an ATmega328 (Not an ATmega328p) using an Uno. I upload the bootloader to the Uno and then I tried to burn the bootloader to the ATmega328 (using the ATmega328(8mz internal) board which I downloaded from github) but it shows this error message:
avrdude: Device signature = 0x000000 (retrying)
Error while burning bootloader.
Reading | ################################################## | 100% 0.02s
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check.
avrdude done. Thank you.
Can you help me?
Can you show us how you connected the ATmega328?
Please post a clear photo of your actual hardware layout.
I have used an Uno loaded with Arduino as ISP to bootload mega328 (no P) chips with the MiniCore core. That core has a selection for the 328 (no P).
just tried that, still says the same error message. Maybe the ATmega328 is not working?
I never had any trouble.
Can you post a schematic of your connections? And maybe a photo? How is the programming Uno set up?
There are several wiring schemes in the page that you linked. Which exact wiring are you using?
I am using pins 10-13 on the Uno. (the breadboard I am using is very small and has no +5v or GND rails) (will post wiring in a minute)
tried the MiniCore but it shows the same error message. Here is the wiring.

What bootloader are you trying to install? 16MHz external, 8MHz internal or ... ? I do not see the cap to disable the Uno reset. Is there on installed?
Have a look at Nick Gammon's make a standalone 328. tutorial.
avrdude: Device signature = 0x000000
avrdude: Yikes! Invalid device signature.
Double check connections and try again, or use -F to override
this check..
This is a symptom of the target chip's clock not running. That can happen when you are trying to switch a bare ATmega168/328P from a crystal oscillator (like on an Arduino) to the internal 8 MHz RC oscillator. An ATmega that is expecting a crystal needs that crystal to run its system clock. Without the clock you can't burn a bootloader.
There are two ways to provide a system clock:
1: If you can find a crystal between 8 and 20 MHz you can connect it between pins 9 and 10 of the target chip. Do that and try Step 4 again.
2: If you can't find a spare crystal or you try the crystal and still get the "Device signature = 0x000000" error you should get this modified ArduinoISP sketch from adafruit: GitHub - adafruit/ArduinoISP: A fork of the ArduinoISP that has 8mhz output clock Go back to Step 1 and upload this version of ArduinoISP to your ISP Arduino. Connect Pin 9 of the ISP Arduino to pin 9 of the ATmega168/328P on the breadboard. That will provide an 8 MHz clock to allow programming without a crystal.
If you try both methods and it still fails with "Device signature = 0x000000" you might have a chip with configuration fuses set to disable serial programming. To fix the fuses you will need something like the HV Rescue Shield 2 from MightyOhm (HV Rescue Shield 2 | MightyOhm). That uses High Voltage Serial Programming to reset your ATmega/ATtiny configuration fuses to factory defaults. If that doesn't work your ATmega/ATtiny is probably damaged beyond use.
I will try your suggestions.
I have done your second suggestion because I don't have a spare crystal but now it is saying it can't find the pins library.
owen5600:
I have done your second suggestion because I don't have a spare crystal but now it is saying it can't find the pins library.
"pins" library? Never heard of it. Perhaps the full error messages, in the text box below the sketch, would provide enough detail to help.
The 328 and 328P have different device signatures
0x1e 0x95 0x0f (the P signature) vs 0x1e 0x95 0x14 (non-P)