Help unbricking a pro mini clone

hi, I have a Chinese clone pro mini m328p that has appeared to be bricked. Usually, I use my Uno with the ISP sketch to upload sketches to the pro mini (Vcc to 5V from Uno) (the reason to not using bootloader is due to some hardware peculiarity associated with this clone, the reset prior to sketch upload does not work). Everything seemed to work quite fine until I made the following changes to experiment with low power modes. 1) Changed fuse settings, and removed clock crystal to use the internal 8Mhz oscillator. The command I used to change the fuse setting is : avrdude -C ... -c avrisp -P COM7 -b 19200 -p m328p -v -e -U lfuse:w:0xE2:m -U fuse:w:0xDA:m -U efuse:w:0x07:m As is evident from the commandline , I have also disabled the brown out detection functionality, and the low fuse setting indicates internal clock source with a long boot delay. Avrdude tells me everything is fine and the fuse settings read back all okay. At this point, I've uploaded quite a number of sketches and they all work as expected.

2) I then proceeded to remove the voltage regulator. After this step, I've verified with my digital meter that in deep sleep mode, the current consumption is very low at 0.6uA, which is fantastic. At this point, I've uploaded many number of sketches and they all work as expected.

3) Changing the Vcc on the pro mini from 5v to 3.3v, I then uploaded another blink sketch with 3.3v Vcc. This step bricked the pro mini clone. I do not have a screenshot of the IDE, but the error message has to do with verification error at some code offset (possibly at 0x0000) .

After step 3) whenever I try to upload a sketch (with 5V Vcc) I get this error: http://pastebin.com/raw.php?i=rwfe8ram

I could also try to set fuse settings, the error message for that is: http://pastebin.com/raw.php?i=YgqDe5L3

The pro mini still blinks its light when I press the reset button on the Uno ISP. I have tried to solder back the 8Mhz crystal , but that does not help. When the 8Mhz crystal is soldered back onto pro mini clone, it will stop responding even to the Uno ISP reset buttons.

I have double checked my wiring and replaced the cables, still the same bricked pro mini clone. Wiring is the same as from Arduino ISP wiki page (10->RST, 11->11, 12->12, 13->13 , and Vcc, Gnd)

Please assist. Thanks

Just to be clear, you're using an external programmer to do all this correct?

It looks like your fuse settings are still set to actually run the bootloader so you'll need to replace the bootloader so it's running an 8Mhz one, not the initial 16Mhz one, since you said it was initially a 5v part and every 5v unit I've ever seen is running 16Mhz. You also appear to have changed where the chip is trying to actually boot from, 0x3F00 to 0x3C00

How are you powering the chip when trying to flash it?

Try to list with avrdude if it works.

avrdude -cavrisp -PCOM7 -b19200 -pm328p -vv

Is crystal is okay? Or try to use external clock. Add this code to setup() and 8MHz clock sig. should be on port #9.

    pinMode(9, OUTPUT); //for UNO 
    OCR1A  = 0; 
    ICR1   = 1; 
    TCCR1A = _BV(WGM11) | _BV(COM1A1);                 
    TCCR1B = _BV(WGM13) | _BV(WGM12) |_BV(CS10);

Few weeks ago I bought set of crystals in one reel and one of them worked just short time. I spent 5 days to find out the problem.

Just to be clear, you're using an external programmer to do all this correct? yes, I am using the Uno as the ISP programmer. With the ISP sketch. I am using pins 10, 11, 12, 13 on the Uno connected to the pins RST, 11, 12, 13 on the pro mini.

It looks like your fuse settings are still set to actually run the bootloader so you'll need to replace the bootloader sorry I forgot to mention I have also burned the 8Mhz bootloader successfully once, onto the pro mini clone

actually boot from, 0x3F00 to 0x3C00 I didn't do that, is that necessary when using the Uno ISP programmer ? The pro mini clone and Uno used to work perfectly fine despite Pro mini clone has a 8Mhz bootloader on it.

How are you powering the chip when trying to flash it? using the 5V from Uno.

Budvar10:
Try to list with avrdude if it works.

avrdude -cavrisp -PCOM7 -b19200 -pm328p -vv

Is crystal is okay? Or try to use external clock. Add this code to setup() and 8MHz clock sig. should be on port #9.

    pinMode(9, OUTPUT); //for UNO 

OCR1A  = 0;
    ICR1  = 1;
    TCCR1A = _BV(WGM11) | _BV(COM1A1);               
    TCCR1B = _BV(WGM13) | _BV(WGM12) |_BV(CS10);



Few weeks ago I bought set of crystals in one reel and one of them worked just short time. I spent 5 days to find out the problem.

the pro mini is not communicating with the Uno ISP at all.
I cannot upload any code to the pro mini, and I cannot talk to it using avrdude.

hi, thanks. After more research I've stumbled upon the XTAL1 external clock fix. I've tried that with the ISP code from adafruit and the code from scratchmonkey, however, the clone pro mini is still not communicating with the ISP despite my best efforts. any more insights ? thanks

I found this : http://www.xuan-wu.com/2012-11-19-Arudino-Uno-Bootloader

by the way, how do I properly supply clock to XTAL1 to a atmega328p tqfp 32 package? can I just solder some wire lead to where the clock crystal used to be , those might be connected to some filter caps. I have tried this, and it does not seem to work.

Just attachhing a wire is enough if you have firm hand. Capacitor shouldn't be a problem. If internal clock is still set it doesn't helps. And back to the Vcc. Are you sure if everything is OK? You have changed vcc to 3.3V. Check this with voltmeter.

Budvar10: Just attachhing a wire is enough if you have firm hand. Capacitor shouldn't be a problem. If internal clock is still set it doesn't helps. And back to the Vcc. Are you sure if everything is OK? You have changed vcc to 3.3V. Check this with voltmeter.

hi, thanks. I have tried many different ISP firmwares and none helped. (a few of them have clock input on pin 9, which I attach to XTAL1 on the chip) I have also tried the gdb open() delay trick, which is also not working. For all of these experiments I am using the 5v from Arduino Uno , with Arduino Uno powered by a 9V external wall plug.