re-burn bootloader failed

I followed this blog to burn bootloader to raw 328P with my Uno.

Here is what I did:

  1. run the detector sketch to read the raw chip --> ok
  2. use the internal clock method to burn the bootloader --> ok
  3. detach Uno, use FTDI to connect the chip to PC, set IDE's board option to lilypad and run ASCII table example --> ok

Then I use a 4MHz crystal to try the external clock method on the same chip to repeat the above. But it failed at the burning step. Serial console just said cannot open the programming mode. Do I need to do some kind of erase before I re-burn the bootloader on the same chip?

I use another raw 328P with the 4MHz crystal and I can repeat the success. But when I plug this chip into Uno, I cannot load an sketch onto it, or the load failed after 10 attempts with out of sync. Must I use a 16MHz crystal to make a spare 328P for Uno?

Please help.

(deleted)

@spycatcher2k, can you elaborate more on your answer? do I need a eraser before I re-burn bootloader to the same chip? I've search a lot about burning bootloader but never come across any mentioning about erase before re-burn. can you point me to where I can read more about this?

Erase is done as part of the burn bootloader process, you do not have to take any special action.

The fuse settings for 4mhz and 16mhz crystal is different - see pg28 of the datasheet. Could this be it? Did you set the clock source to "external clock"? External Clock means you need an external clock signal - not just a crystal; you don't want external clock.

@DrAzzy, thanks for the reply. The more I read about fuses, the more I think my 328P is bricked. My mistake was: after successfully burnt it the first time without crystal and select Lilypad option (internal 8MHz osc) in Gammon's sketch, I connected a 4MHz crystal to it and re-burnt again expecting the programmer sketch would detect it, but it was not work like this.

My questions now are:

  1. Is HV programming the only way to recovery the chip?
  2. Say if I have another chip that is also burnt for internal 8MHz osc, what is the proper way to re-burn it for Arduino Uno R3 (i.e. external crystal 16MHz)? I want it to be the backup of the chip on Uno. Should I do the re-burn without or with a 16MHz crystal? Gammon's tutorial doesn't describe this clearly, he only said that any crystal will do.
    Please advise.