[Non réglé] Problème de téléversement sur ArduinoMega

Bonjour, je possède une carte arduino mega 2650. Elle fonctionnait bien jusqu'au jour ou j'ai voulu mettre à jour le programme.
Maintenant elle ne veux plus prendre de programme. Windows reconnait la carte mais l'IDE me dit que le port est occupé.
La led sur la carte (L) clignote à intervals réguliers et ne s'arrete pas.
J'ai essayé de la programmé sur un autre pc mais la même chose se produit.
Avez vous une idée ?

Avec le bouton reset, ça fait quoi ?

Lorsque j'appuie dessus, la led L reste fixe et lorsque je le relache elle se remet à clignoter régulierment (env. toute les secondes)

J'ai déjà eu un problème de ce type là.
As tu vérifié le port COM ? Du logiciel et du PC ?
Lorsque ça m'était arrivé le PC avait effacer la configuration du COM dédier à l'ARDUINO

GillesT:
J'ai déjà eu un problème de ce type là.
As tu vérifié le port COM ? Du logiciel et du PC ?
Lorsque ça m'était arrivé le PC avait effacer la configuration du COM dédier à l'ARDUINO

Alors le port com du pc correspond bien a celui de l'IDE
J'ai aussi essayé de supprimé les pilotes et réinstallé mais même problème
J'ai changé de PC et même problème

Normalement à la mise sous tension de la carte cette led ne devrait pas clignoté 3 fois très rapidement ? Moi elle ne le fait pas

Bonjour,

La led ne clignote pas au reset ... c'est mauvais signe ...

Si tu met un fils entre les broches 0 et 1 et que tu écris quelques chose dans le "serial monitor" est-ce que tu vois ton texte s'afficher ?
Si oui ça voudrai dire que la partie usb fonctionne.

Est-ce que tu as un programmateur d'AVR ou une autre carte arduino sous la main ?
Si oui essaye ArduinoISP pour reprogrammer le bootloader de ta mega2560.
Et si la re-programmation du bootloader ne marche pas ou qu'elle te sort une erreur il y a de forte chance que tu ai fait une fausse manip qui ai cramé l'atmega sur la carte.
Dans ce cas il n'y a pas grand chose à faire malheureusement ...

skywodd:
Bonjour,

La led ne clignote pas au reset ... c'est mauvais signe ...

Si tu met un fils entre les broches 0 et 1 et que tu écris quelques chose dans le "serial monitor" est-ce que tu vois ton texte s'afficher ?
Si oui ça voudrai dire que la partie usb fonctionne.

Est-ce que tu as un programmateur d'AVR ou une autre carte arduino sous la main ?
Si oui essaye ArduinoISP pour reprogrammer le bootloader de ta mega2560.
Et si la re-programmation du bootloader ne marche pas ou qu'elle te sort une erreur il y a de forte chance que tu ai fait une fausse manip qui ai cramé l'atmega sur la carte.
Dans ce cas il n'y a pas grand chose à faire malheureusement ...

Alors, bornes 0 et 1 reliée et serial monitor en marche : le rx s'allume à la reception des données mais rien ne s'affiche et le tx ne s'allume pas.
J'ai un arduino uno sous la main mais je ne sais pas comment le brancher pour pouvoir reprogrammer le bootloader ni la manip a faire (charger le programme isp dans le uno je pense mais après ? comment faire ?)
Dans quel cas peut-on cramer un atmega en chargeant un prog ?

pigloox:
Alors, bornes 0 et 1 reliée et serial monitor en marche : le rx s'allume à la reception des données mais rien ne s'affiche et le tx ne s'allume pas.

Le Rx s'allume mais pas le Tx ...
Donc quelque chose bloque le Tx manifestement, ou le chipset usb est HS (peu probable).
Ton programme "avant bug" utilisait les broches D0/D1 ?

pigloox:
J'ai un arduino uno sous la main mais je ne sais pas comment le brancher pour pouvoir reprogrammer le bootloader ni la manip a faire (charger le programme isp dans le uno je pense mais après ? comment faire ?)

Suffit de suivre ce tuto :

(en uploadant ArduinoISP dans la uno au lieu de la mega et en mettant le condensateur sur le reset de la uno)

pigloox:
Dans quel cas peut-on cramer un atmega en chargeant un prog ?

Normalement on peu pas ...

skywodd:
Le Rx s'allume mais pas le Tx ...
Donc quelque chose bloque le Tx manifestement, ou le chipset usb est HS (peu probable).
Ton programme "avant bug" utilisait les broches D0/D1 ?

Non mon programme n'utilisait pas ces broches

skywodd:

pigloox:
J'ai un arduino uno sous la main mais je ne sais pas comment le brancher pour pouvoir reprogrammer le bootloader ni la manip a faire (charger le programme isp dans le uno je pense mais après ? comment faire ?)

Suffit de suivre ce tuto :
http://www.instructables.com/id/How-to-use-Arduino-Mega-2560-as-Arduino-isp/
(en uploadant ArduinoISP dans la uno au lieu de la mega et en mettant le condensateur sur le reset de la uno)

Alors, j'ai essayé mai l'ide ma ressorti une erreur au premier coup puis ensuite des erreurs d'initialisation.

J'ai essayer de recharger un programme d'exemple dans mon arduino mega et cette fois ci l'ide ne me sort plus d'erreur mais reste bloqué sur la phase de téléversement et sur ma carte, la led L, Tx et Rx clignotent successivement. Est-ce bon signe ? :~

pigloox:
Alors, j'ai essayé mai l'ide ma ressorti une erreur au premier coup puis ensuite des erreurs d'initialisation.

Tu peut copier/coller l'erreur ?

pigloox:
J'ai essayer de recharger un programme d'exemple dans mon arduino mega et cette fois ci l'ide ne me sort plus d'erreur mais reste bloqué sur la phase de téléversement et sur ma carte, la led L, Tx et Rx clignotent successivement. Est-ce bon signe ? :~

C'est bizarre ... tu as choisis la bonne carte dans l'ide avant de faire le "burn bootloader" ?

Désolé de répondre seulement maintenant mais je n'ai pas pu essayer avant.
Voici le message d'erreur fournit par l'IDE lors d'un essai de reprogrammation :

IDE:
avrdude: verification error, first mismatch at byte 0x1e000
0xff != 0x0d
avrdude: verification error; content mismatch

skywodd:
La led ne clignote pas au reset ... c'est mauvais signe ...

Si tu met un fils entre les broches 0 et 1 et que tu écris quelques chose dans le "serial monitor" est-ce que tu vois ton texte s'afficher ?
Si oui ça voudrai dire que la partie usb fonctionne.

Maintenant, après plusieurs essais de reprog, en faisant cette manip, cela fonctionne.

pigloox:
avrdude: verification error, first mismatch at byte 0x1e000
0xff != 0x0d
avrdude: verification error; content mismatch

Aie ...
Autant quand ça renvoi 0xquelquechose != 0x00 on peut penser à un problème de montage.
Autant quand ça renvoi une erreur de vérification sur quelque chose autre que 0x00 c'est mauvais signe ...
A mon avis le bootloader de la carte est corrompu ...
Il va falloir passer par la case "Burn bootloader" au moyen de ArduinoISP ou d'un programmateur d'AVR, je vois pas vraiment d'autre solution.

pigloox:
Maintenant, après plusieurs essais de reprog, en faisant cette manip, cela fonctionne.

Ok donc le port série est bon ...

skywodd:
A mon avis le bootloader de la carte est corrompu ...
Il va falloir passer par la case "Burn bootloader" au moyen de ArduinoISP ou d'un programmateur d'AVR, je vois pas vraiment d'autre solution.

Justement, c'est en voulant recharger le bootloader que cette erreur apparaît. (J'utilise ArduinoISP, un uno + la mega qui me fait ce problème)

pigloox:
Justement, c'est en voulant recharger le bootloader que cette erreur apparaît. (J'utilise ArduinoISP, un uno + la mega qui me fait ce problème)

Carrément c'est l'ATmega en ISP qui répond pas correctement ...
Vérifie ton câblage mais c'est pas normal.

En reliant les deux ports icsp sur les deux cartes ça marche aussi ?

pigloox:
En reliant les deux ports icsp sur les deux cartes ça marche aussi ?

Oui si tu met bien la résistance/diode/condensateur (je sait même plus ce qu'il préconise pour ArduinoISP) sur RESET de l'arduino "maitre" (celui qui programme) c'est bon.

Salut Pigloox,

je suppose que tu as déjà réglé ton problème, mais au cas où...

J'ai eu le même souci, lors d'une mise à jour de mon programme, la carte s'est mise en vrac avec clignotement de la LED L. Le téléversement d'une version antérieure permettait de faire fonctionner la carte normalement.

J'ai pas mal cherché et par élimination enfin trouvé mon problème :

j'avais voulu écrire sur un LCD le texte " >100% !!! " , et visiblement il n'aime pas le point d'exclamation.
Il a suffit de les enlever pour régler le problème.

WRP2:
j'avais voulu écrire sur un LCD le texte " >100% !!! " , et visiblement il n'aime pas le point d'exclamation.
Il a suffit de les enlever pour régler le problème.

C'est la suite de 3 points d'interrogation qui pose problème. Il suffit d'en retirer un et c'est bon