Arduino Mega 2560 non reconnue après flash [Résolu]

Bonjour à tous,

Voilà je suis en pleine programmation d'un contrôleur MIDI sous arduino et j'utilise le firmware modifié hiduino pour envoyer les messages midi par le port usb de ma MEGA. (Ma MEGA est une révision 2 je crois)

Jusque là tout se déroulait bien, j'avais souvent besoin de reflasher mon arduino avec usbasp (ISP) vers le firmware d'origine pour pouvoir envoyer mon code source via l'IDE pour repasser ensuite sur hiduino. En effet, la communication via usb est désactivé sur le firmware hiduino pour permettre l'envoie d'informations MIDI.
Mais l'autre jour lorsque j'ai voulu reflasher ma MEGA vers le firmware d'origine le terminal m'a renvoyé un message d'erreur après vérification.

Voilà le code que j'ai utilisé :

avrdude -p at90usb82 -F -P usb -c usbasp -U flash:w:/Users/~/Desktop/MEGA-dfu_and_usbserial_combined.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m

Et voilà ce que j'ai eu après vérification :

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0xf4 != 0xfc
avrdude: verification error; content mismatch

avrdude: safemode: efuse changed! Was f4, and is now fc
Would you like this fuse to be changed back? [y/n]

En réponse j'ai mis "y", je ne sais pas vraiment pourquoi d'ailleurs, pensant surement que ça n'avait que peu d'importance.
Depuis mon arduino ne répond plus, elle n'est ni reconnue par le système, ni par l'IDE.

Maintenant, lorsque j'essaie de flasher à nouveau mon arduino (avec le même code), le terminal me renvoie :

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
avrdude: AVR device initialized and ready to accept instructions
avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for AT90USB82 is 1E 93 82
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.

avrdude done.  Thank you.

J'ai fouillé un peu dans les références d'avrdude, tentant de réparer ce problème de safemode (à priori) pour que la carte soit enfin reconnue, rien n'y fait.
Le terminal me renvoie exactement le même code même si ma carte n'est pas reliée à l'ISP, preuve que ma carte n'engage aucun dialogue avec avrdude.
J'ai essayé de mettre mon arduino en mode DFU pour uploader de nouveau le bootloader, un échec.

Mon but est seulement de remettre mon arduino sur les rails pour pouvoir switcher de nouveau entre hiduino et firmware d'origine, donc continuer à développer mon code source.
Mon arduino est-elle morte?
J'ai aussi essayé de flasher via le port ICSP (là ça relève du désespoir, on flash pas par ce port en théorie, ni en pratique d'ailleurs). Pourtant cela semble avoir eu un effet.
J'ai donc obtenu ceci :

avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: Expected signature for AT90USB82 is 1E 93 82
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: reading input file "/Users/Matisse/Desktop/MEGA-dfu_and_usbserial_combined.hex"
avrdude: input file /Users/Matisse/Desktop/MEGA-dfu_and_usbserial_combined.hex auto detected as Intel Hex
avrdude: writing flash (7452 bytes):

Writing | ################################################## | 100% 3.10s



avrdude: 7452 bytes of flash written
avrdude: verifying flash memory against /Users/Matisse/Desktop/MEGA-dfu_and_usbserial_combined.hex:
avrdude: load data flash data from input file /Users/Matisse/Desktop/MEGA-dfu_and_usbserial_combined.hex:
avrdude: input file /Users/Matisse/Desktop/MEGA-dfu_and_usbserial_combined.hex auto detected as Intel Hex
avrdude: input file /Users/Matisse/Desktop/MEGA-dfu_and_usbserial_combined.hex contains 7452 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 2.13s



avrdude: verifying ...
avrdude: 7452 bytes of flash verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
avrdude: reading input file "0xD9"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xD9:
avrdude: load data hfuse data from input file 0xD9:
avrdude: input file 0xD9 contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified
avrdude: reading input file "0xF4"
avrdude: writing efuse (1 bytes):

Writing |                                                    | 0% 0.00s ***failed;  
Writing | ################################################## | 100% 0.06s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0xF4:
avrdude: load data efuse data from input file 0xF4:
avrdude: input file 0xF4 contains 1 bytes
avrdude: reading on-chip efuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0xf4 != 0xfc
avrdude: verification error; content mismatch

avrdude: safemode: efuse changed! Was f4, and is now fc
Would you like this fuse to be changed back? [y/n]

Et là si je choisis "n" (no), le programme s'arrête (avrdude: safemode: Fuses OK avrdude done. Thank you. ),
si je choisit "y" (yes), le terminal fais un retour à la ligne, l'ISP bosse encore (led verte d'activité allumée) mais il ne se passe rien, je dois stopper le programme.
J'ai passer des heures à chercher une solution sur les forums sans rien trouver, et vu que je suis un peu beaucoup un newbie, c'est pas facile facile...

Voilà mon problème, j'espère que vous pourrez m'aider. Merci d'avance :slight_smile:

Après avoir configuré une Mega 1280 en ISP j'ai essayé de flasher de nouveau ma 2560 avec le firmware d'origine, le terminal m'annonce un "Fuse Ok" et pourtant en la rebranchant en usb je n'arrive toujours pas à uploader un sketch... Une idée? Je suis un peu perdu...

Bonjour,

Bon donc pour résumer t'as tenté tout ce que tu pouvais tenter sans vraiment réfléchir ...
Ça promet ... elle était peut être pas morte mais maintenant que le bootloader à du se faire dégager ça va être marrant de remettre les choses en place.

J'ai aussi essayé de flasher via le port ICSP (là ça relève du désespoir, on flash pas par ce port en théorie, ni en pratique d'ailleurs). Pourtant cela semble avoir eu un effet.

Je sait pas où tu as pu lire ça, le port ICSP (=In Circuit Serial Programming) est justement fait pour programmer les microcontrôleurs ...

Bon tu as fait quoi ? Comment ? Et sur quel port ICSP (il y en a deux, un pour l'atmega2560 et un pour le atmega32u4) ?
Et question annexe : tu as quoi comme programmateur d'avr ?

Pour remettre tout en place si tu as un programmateur d'avr compatible ICSP/ISP :

  1. Télécharge https://raw.github.com/arduino/Arduino/master/hardware/arduino/firmwares/atmegaxxu2/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex
  2. Enlève tout ce que tu as pu brancher sur l'arduino (résistance de DFU incluse)
  3. Fait sauter tout les locks et le contenu de la mémoire :
avrdude -p m16u2 -c usbtiny -e
  1. Reprogramme le firmware de sortie d'usine avec le bootloader :
avrdude -p m16u2 -c usbtiny -U flash:w:Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m
  1. Croise les doigts, si il y a une erreur de vérification c'est que tu as (surement) cramé le microcontrôleur

Merci de ton aide.

J'ai un USBasp comme programmateur d'AVR, il est suffisant?
J'avais d'abord essayé de flasher à nouveau le firmware d'origine via le port ICSP de la puce MEGA8U2, près du port usb.
Et puis j'ai essayé via les 2 ports ICSP (de la 8U2 et de la MEGA2560), sans savoir à quoi chacun se rapportaient.
Ensuite j'ai essayé de la flasher avec une autre arduino en suivant cette démarche.

Je pense aussi avoir fais une belle connerie en flashant le mauvais .hex, je n'ai pas utilisé celui que tu m'as filé mais celui-ci.
https://raw.github.com/arduino/Arduino/master/hardware/arduino/firmwares/atmegaxxu2/MEGA-dfu_and_usbserial_combined.hex

J'avais bien vu le tien, mais en voyant Rev3 j'ai pensé que le firmware n'était pas le bon pour ma MEGA, ce n'est pas une Rev3.
Mais en gros j'ai mis un firmware de MEGA1280 sur une 2560 c'est ça?
Mais si je comprends bien, Rev3 c'est pour révision 3 du firmware, j'ai bon?

Dernière question : après ce que tu viens de me dire, si j'ai pigé, la puce 8U2 gère la communication serial (enfin l'infos qui sort de l'usb),
et la MEGA2560 gère le soft et le sketch?

Sinon j'ai fais ce que tu m'as dis, j'ai flasher le .hex que tu m'as filé via le port ICSP de la 2560 (de toute façon la 8U2 ne répond plus) après avoir
fait sauter tout les locks et le contenu de la mémoire.

Donc pour la première ligne de code, j'envoie ça:

avrdude -p m16u2 -c usbasp -e

il me renvoie ça :

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: Expected signature for ATmega16U2 is 1E 94 89
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.

Donc je désactive la verification de la signature :

avrdude -p m16u2 -c usbasp -e -F
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: Expected signature for ATmega16U2 is 1E 94 89
avrdude: erasing chip

avrdude: safemode: Fuses OK

J'envoie alors la deuxième ligne de code :

avrdude -p m16u2 -c usbasp -F -U flash:w:/Users/~/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m

Réponse :

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: Expected signature for ATmega16U2 is 1E 94 89
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "/Users/Matisse/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex"
avrdude: input file /Users/Matisse/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex auto detected as Intel Hex
avrdude: writing flash (15668 bytes):

Writing | ################################################## | 100% 8.15s



avrdude: 15668 bytes of flash written
avrdude: verifying flash memory against /Users/Matisse/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex:
avrdude: load data flash data from input file /Users/Matisse/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex:
avrdude: input file /Users/Matisse/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex auto detected as Intel Hex
avrdude: input file /Users/Matisse/Desktop/Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex contains 15668 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 5.11s



avrdude: verifying ...
avrdude: 15668 bytes of flash verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
avrdude: reading input file "0xD9"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xD9:
avrdude: load data hfuse data from input file 0xD9:
avrdude: input file 0xD9 contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified
avrdude: reading input file "0xF4"
avrdude: writing efuse (1 bytes):

Writing |                                                    | 0% 0.00s ***failed;  
Writing | ################################################## | 100% 0.06s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0xF4:
avrdude: load data efuse data from input file 0xF4:
avrdude: input file 0xF4 contains 1 bytes
avrdude: reading on-chip efuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0xf4 != 0xfc
avrdude: verification error; content mismatch

avrdude: safemode: efuse changed! Was f4, and is now fc
Would you like this fuse to be changed back? [y/n]

Ça sent mauvais non?

J'ai pas vraiment fais n'importe quoi, j'ai cherché des réponses à mon problème en faisant des recherches sur les messages d'erreur obtenus.
Je m'y suis peut-être mal pris, mais je comprends pas pourquoi t'es agressif comme ça. J'apprendrais rien sans faire d'erreurs. Mais en tout cas
merci pour le coup de main, c'est sympa.

sweet_sweats:
J'ai un USBasp comme programmateur d'AVR, il est suffisant?

Oui, n'importe quel programmateur d'AVR fait l'affaire.
C'est un peu fait pour en même temps :grin:

sweet_sweats:
J'avais d'abord essayé de flasher à nouveau le firmware d'origine via le port ICSP de la puce MEGA8U2, près du port usb.
Et puis j'ai essayé via les 2 ports ICSP (de la 8U2 et de la MEGA2560), sans savoir à quoi chacun se rapportaient.
Ensuite j'ai essayé de la flasher avec une autre arduino en suivant cette démarche.

Bon maintenant il y a deux problèmes :

  1. tu n'as plus de gestion usb-série
  2. tu n'as plus de bootloader série pour le second processeur ...

Le connecteur ICSP à côté de l'usb c'est pour l'ATmega8U2 (gestion de l'usb/série) et celui au milieu de la carte pour l'ATmega2560 (sketch utilisateur).

sweet_sweats:
J'avais bien vu le tien, mais en voyant Rev3 j'ai pensé que le firmware n'était pas le bon pour ma MEGA, ce n'est pas une Rev3.

Dans la floppé de log avrdude de ton précédemment message j'avais même pas fait vu que tu avais une carte en révision 2 ...
C'est pas grave ça pose pas de probléme, ça marchera pas mais au moins ça cramera rien.

Pour la mega2560 rév2 le firmware est bien celui ci :
https://github.com/arduino/Arduino/blob/master/hardware/arduino/firmwares/atmegaxxu2/MEGA-dfu_and_usbserial_combined.hex

sweet_sweats:
Mais en gros j'ai mis un firmware de MEGA1280 sur une 2560 c'est ça?

Non la mega1280 avait même pas de puce pour la gestion de l'usb, c'était un chipset usb/série FTDI :wink:
En gros t'as mis un firmware de mega2560 rév1&2 sur une carte mega2560 rév2.

sweet_sweats:
Mais si je comprends bien, Rev3 c'est pour révision 3 du firmware, j'ai bon?

Oui c'est moi qui est lu en diagonale :wink:

sweet_sweats:
Dernière question : après ce que tu viens de me dire, si j'ai pigé, la puce 8U2 gère la communication serial (enfin l'infos qui sort de l'usb),
et la MEGA2560 gère le soft et le sketch?

C'est ça :
ATmega8U2 (ou 16U2 sur les rév3) : gestion de l'usb (du port série-usb virtuel)
ATmega2560 : le microcontrôleur pour ton programme.

sweet_sweats:
il me renvoie ça :

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: Expected signature for ATmega16U2 is 1E 94 89
         Double check chip, or use -F to override this check.

avrdude done.  Thank you.

Normal tu essayes de programmer un 8U2 comme un 16U2, du coup avrdude t'informe qu'il y a une boulette quelque pars et de demande de revérifier la référence de ton Atmega.

sweet_sweats:
Donc je désactive la verification de la signature :

avrdude -p m16u2 -c usbasp -e -F

L'option "-F" avec avrdude c'est en gros "tout va surement cramer mais fait moi confiance et fait comme si tout aller bien".
C'est l'option à ne jamais utiliser par excellence, tu peut être sûr que si tu l'utilises c'est qu'il y a un (gros) probléme.
Désactiver TOUTES les vérifications de sécurité n'as jamais été une bonne idée :wink:

sweet_sweats:
Ça sent mauvais non?

Ben maintenant que je vois que tu utilises -F, hummm oui.
Les AVR c'est solide mais là tu l'as bien torturé le pauvre :grin:

sweet_sweats:
Je m'y suis peut-être mal pris, mais je comprends pas pourquoi t'es agressif comme ça. J'apprendrais rien sans faire d'erreurs. Mais en tout cas
merci pour le coup de main, c'est sympa.

Je suis pas agressif, loin de là même.
J'étais un peu dure dans mon précédent message mais c'était de rigueur, si tout le monde utilisait avrdude sans réfléchir je pourrai monter une boite de SAV arduino :grin:

Avrdude c'est un logiciel miracle qui peut tout aussi bien détruire que sauver un AVR, utilisait correctement c'est un formidable outil.
Mais utilisait sans connaissance sur son fonctionnement c'est un coup à cramer tout une carte sans possibilité de réparation.
(ce qui pourrait malheureusement être ton cas)

Le truc c'est que dans ce genre de cas le mieux c'est de demander de l'aide AVANT de tout foutre en l'air :wink:
Ton probléme aurait surement pu être résolu sans faire tout ces manip.

Bon essaye ça :
Sur le port ICSP de l'ATmega8U2

  1. Télécharge https://raw.github.com/arduino/Arduino/master/hardware/arduino/firmwares/atmegaxxu2/MEGA-dfu_and_usbserial_combined.hex
  2. Enlève tout ce que tu as pu brancher sur l'arduino (résistance de DFU incluse)
  3. Fait sauter tout les locks et le contenu de la mémoire :
avrdude -p m8u2 -c usbasp  -U lock:w:0x3F:m -e
  1. Reprogramme le firmware de sortie d'usine avec le bootloader :
avrdude -p m8u2 -c usbasp -U flash:w:MEGA-dfu_and_usbserial_combined.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m
  1. Prie pour que ça marche

Sur le port ICSP de l'ATmega2560

  1. Télécharge https://github.com/arduino/Arduino/blob/master/hardware/arduino/bootloaders/stk500v2/stk500boot_v2_mega2560.hex
  2. Enlève tout ce que tu as pu brancher sur l'arduino
  3. Fait sauter tout les locks et le contenu de la mémoire :
avrdude -p m2560 -c usbasp  -U lock:w:0x3F:m -e
  1. Reprogramme le firmware de sortie d'usine avec le bootloader :
avrdude -p m2560 -c usbasp -U flash:w:stk500boot_v2_mega2560.hex -U efuse:w:0xFD:m -U hfuse:w:0xD8:m -U lfuse:w:0xFF:m -U lock:w:0x0F:m
  1. Prie une seconde fois pour que ça marche

Ok donc j'ai essayé ça. L'ATmega2560 répond bien apparemment, c'est déjà un bon point. En revanche la 8U2 a l'air HS, pas de réponse.

Locks & Mémoire :

avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

J'essaie tout de même de flasher sans trop d'espoir :

avrdude: error: programm enable: target doesn't answer. 1 
avrdude: initialization failed, rc=-1
         Double check connections and try again, or use -F to override
         this check.


avrdude done.  Thank you.

Pas de réponse donc, c'est bien ce pourquoi elle n'est pas reconnue pas mon Mac.

En revanche pour l'ATmega2560 ça donne ça :

Locks & Mémoire

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "stk500boot_v2_mega2560.hex"
avrdude: error opening stk500boot_v2_mega2560.hex: No such file or directory
avrdude: input file stk500boot_v2_mega2560.hex auto detected as invalid format
avrdude: can't open input file stk500boot_v2_mega2560.hex: No such file or directory
avrdude: read from file 'stk500boot_v2_mega2560.hex' failed

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

Flash :

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9801
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "/Users/Matisse/Desktop/2560/stk500boot_v2_mega2560.hex"
avrdude: input file /Users/Matisse/Desktop/2560/stk500boot_v2_mega2560.hex auto detected as Intel Hex
avrdude: writing flash (261406 bytes):

Writing | ################################################## | 100% 136.99s



avrdude: 261406 bytes of flash written
avrdude: verifying flash memory against /Users/Matisse/Desktop/2560/stk500boot_v2_mega2560.hex:
avrdude: load data flash data from input file /Users/Matisse/Desktop/2560/stk500boot_v2_mega2560.hex:
avrdude: input file /Users/Matisse/Desktop/2560/stk500boot_v2_mega2560.hex auto detected as Intel Hex
avrdude: input file /Users/Matisse/Desktop/2560/stk500boot_v2_mega2560.hex contains 261406 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 84.48s



avrdude: verifying ...
avrdude: 261406 bytes of flash verified
avrdude: reading input file "0xFD"
avrdude: writing efuse (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of efuse written
avrdude: verifying efuse memory against 0xFD:
avrdude: load data efuse data from input file 0xFD:
avrdude: input file 0xFD contains 1 bytes
avrdude: reading on-chip efuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of efuse verified
avrdude: reading input file "0xD8"
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xD8:
avrdude: load data hfuse data from input file 0xD8:
avrdude: input file 0xD8 contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of hfuse verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.00s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of lfuse verified
avrdude: reading input file "0x0F"
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.01s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x0F:
avrdude: load data lock data from input file 0x0F:
avrdude: input file 0x0F contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: 1 bytes of lock verified

avrdude: safemode: Fuses OK

avrdude done.  Thank you.

Je dois en déduire que seule ma 8U2 est cramée?

En tout cas merci pour les tuyaux, ça m'évitera de faire des conneries la prochaine fois, et de lancer un SAV arduino du coup ;).

Autre chose, avant de poster ici j'ai tenté de mettre à jour mon USBasp, vu que j'ai reçu une ligne de terminal du style :

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

Mais il a bien été mis à jour apparemment puisque le flash de l'ATmega2560 a fonctionné, et j'ai plus eu cette ligne.
Après j'en sais rien, ça vient peut-être de ça.

Donc en conclusion, j'ai pas de communication série, mais j'ai maintenant un bootloader. Ça avance :).

Je suis pas agressif, loin de là même.

J'ai mal interprété, désolé ;).

sweet_sweats:
Ok donc j'ai essayé ça. L'ATmega2560 répond bien apparemment, c'est déjà un bon point. En revanche la 8U2 a l'air HS, pas de réponse.

C'est déjà ça, ça fait un probléme en moins à régler :wink:

sweet_sweats:
Je dois en déduire que seule ma 8U2 est cramée?

Pas forcément, soyons optimiste, comment tu as soudé ton connecteur ICSP ?
(une petite photo du connecteur suffira)

sweet_sweats:
Autre chose, avant de poster ici j'ai tenté de mettre à jour mon USBasp, vu que j'ai reçu une ligne de terminal du style :

avrdude: warning: cannot set sck period. please check for usbasp firmware update.

Mais il a bien été mis à jour apparemment puisque le flash de l'ATmega2560 a fonctionné, et j'ai plus eu cette ligne.
Après j'en sais rien, ça vient peut-être de ça.

J'utilise pas d'usbasp donc je pourrai pas te dire pourquoi ça fait ça ...
Google me trouve ça : http://www.rogerclark.net/?p=702 et pour la dernière version du firmware : USBasp - USB programmer for Atmel AVR controllers - fischl.de

Ouaip, c'est la méthode que j'ai utilisé, mais c'était avant de lancer le topic. Et il a l'air de fonctionner normalement maintenant.

Les connecteurs ICSP étaient tous les deux déjà montés lorsque j'ai reçu la carte.
Voilà les photos.

sweet_sweats:
Ouaip, c'est la méthode que j'ai utilisé, mais c'était avant de lancer le topic. Et il a l'air de fonctionner normalement maintenant.

Dans ce cas touche plus à rien de ce côté là, quand un truc tombe en marche c'est la meilleur chose à faire :grin:

sweet_sweats:
Les connecteurs ICSP étaient tous les deux déjà montés lorsque j'ai reçu la carte.

Moi à l'époque je devais les souder moi même, la politique sur le second connecteur ICSP a manifestement changé depuis :roll_eyes:

Bon je vois rien au niveau des soudures ...
Tu est sûr que tu as mis ton câble ICSP du bon côté ?
Si oui ben ... c'est mauvais signe ...

Toujours du même côté ouai, j'ai re-flashé mon arduino pas mal de fois, jamais eu de problème jusqu'à maintenant.
Le chipset s'use au fur et à mesure des flashs non?

C'est pas très grave, ça me fera les pieds et j'ai appris des trucks, ça en valait la peine.
J'ai commandé des copies de révision 3 à 9 € l'unité, je vais quand même pouvoir bosser.

Merci du coup de main en tout cas :wink:
Ça aurait été difficile tout seul.

sweet_sweats:
Toujours du même côté ouai, j'ai re-flashé mon arduino pas mal de fois, jamais eu de problème jusqu'à maintenant.
Le chipset s'use au fur et à mesure des flashs non?

Mouai enfin la mémoire flash des AVR c'est 100 000 cycles d'écritures normalement ...

sweet_sweats:
C'est pas très grave, ça me fera les pieds et j'ai appris des trucks, ça en valait la peine.
J'ai commandé des copies de révision 3 à 9 € l'unité, je vais quand même pouvoir bosser.

Heu ... 9€ l'unité ...
Enlève moi d'un doute : ce sont des cartes officielles ou chinoises ?

Si c'est du chinois tout s'explique, ça arrivent parfois qu'elles prennent feu spontanément donc bon, je cherche plus trop à comprendre.

Des chinoises, mais j'ai d'abord pensé qu'elles étaient officielles vu qu'elles avaient le nom arduino.
Ma Rev2 n'a pas de mention "Made in Italy", en plus elle vient de Chine, donc même chose.
Si ça marche à peu près c'est déjà ça.

sweet_sweats:
Des chinoises, mais j'ai d'abord pensé qu'elles étaient officielles vu qu'elles avaient le nom arduino.
Ma Rev2 n'a pas de mention "Made in Italy", en plus elle vient de Chine, donc même chose.
Si ça marche à peu près c'est déjà ça.

Ça explique tout ...
Ces contrefaçons chinoise sont de si mauvaise qualité (intérieur) que c'est "normal" quelles crament ...