Tengo un montón de tablones de arduino que estoy intentando restaurar: Arduino Uno con chips ATmega328p. No responden a los comandos de parpadeo habituales, por lo que estoy intentando hacer flash a través de los encabezados ICSP de arduino, a través de un bus pirate .
El proceso falla debido a una firma no válida, como por ejemplo:
$ avrdude -c buspirate -P /dev/buspirate -p m328p -v -F
avrdude: Version 6.0.1, compiled on Sep 21 2013 at 11:40:49
Using Port : /dev/buspirate
Using Programmer : buspirate
AVR Part : ATmega328P
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :
Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack
----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- ---------
eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00
Programmer Type : BusPirate
Description : The Bus Pirate
Attempting to initiate BusPirate binary mode...
BusPirate binmode version: 1
BusPirate SPI version: 1
avrdude: Paged flash write enabled.
AVR Extended Commands not found.
avrdude: initialization failed, rc=-2
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x881608
avrdude: Expected signature for ATmega328P is 1E 95 0F
BusPirate is back in the text mode
avrdude done. Thank you.
(esto solo ejecuta -v
pero al intentar establecer fusibles o flash falla de la misma manera)
Lo extraño es que la firma del dispositivo cambia ligeramente en cada intento, por lo que definitivamente algo no se está comportando correctamente.
Intenté el mismo proceso conectándome directamente a los pines del atmega328p (y no a través de los pines del encabezado ICSP de la placa arduino), pero sin éxito.
¿Se está salvando el atmega328p o no se puede reparar?