Arduino Pro mini bloquée? [Resolu]

Bonjour à tous

J'ai un soucis avec mon arduino pro mini 3.3v 8MHz ATmega 328 depuis hier. Dès que j'essaye de compiler un programme, j'obtient ce message d'erreur:

avrdude: stk500_recv(): programmer is not responding

Je sais que ca ne vient ni d'un mauvais cablage, ni de mon convertisseur FTDI.

Je ne sais pas exactement à quoi c'est du mais le problème est apparue juste après une grosse merdouille de ma part (j'ai uploadé plusieurs sketch en même temps...) du coup j'ai un peu l'impression que mon arduino est "bloquée"

Ce qui me fait penser ca c'est aussi que la led de la PIN 13 clignote très rapidement alors que le dernier sketch uploadé lui demande de rester éteinte. Si j'appuie sur RESET, au moment même ou je relache le bouton, le led reprend immédiatement son clignotement.

Après quelques recherches, il se pourrait que le problème vienne du Bootloader, c'est ça? D'autan plus que ce n'est pas une vrai carte SparkFun mais une copie chinoise d'eBay.

Du coup, j'ai tenté de réinitialliser le bootloader mais j'arrive a rien J'ai d'abords suivit ce tuto: https://www.sparkfun.com/tutorials/247

J'ai a ma disposition une Arduino mega2560 (qui va servir de programmeur) et je suis sous mac osX 10.8 (si jamais ça a son importance...)

Je lance donc le sketch "ArduinoISP" pour transformer ma mega en programmeur ISP, jusque la ça a l'air de marcher... (Est ce qu'a ce stade je peux savoir si mon Arduino est bien en controlleur ISP?)

Ensuite je cable tout bien, je lance avrdude avec le terminal j'obtient bien une liste de commande donc avrdude est bien installé;

je met la ligne avrdude -P comport -b 19200 -c avrisp -p m328p -v -e -U efuse:w:0x05:m -U hfuse:w:0xD6:m -U lfuse:w:0xFF:m

en remplacant "comport" par "/dev/tty.usbmodem411" (c'est le nom de mon port sur l'IDE arduino, je ne sais pas pourquoi ce n'est pas portX, peut-ètre à cause du faite que je sois sous mac?) Et voila ce que j'obtient:

avrdude: Version 5.11.1, compiled on Feb 12 2013 at 01:24:54
         Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
         Copyright (c) 2007-2009 Joerg Wunsch

         System wide configuration file is "/usr/local/CrossPack-AVR-20130212/etc/avrdude.conf"
         User configuration file is "/Users/Max/.avrduderc"
         User configuration file does not exist or is not a regular file, skipping

         Using Port                    : /dev/tty.usbmodem411
         Using Programmer              : avrisp
         Overriding Baud Rate          : 19200
avrdude: stk500_recv(): programmer is not responding

avrdude done.  Thank you.

avec toujours cette magnifique ligne a la fin...

2ème methode: (je me dit que la première n'est peut-ètre pas fiable.) Je suis le tuto là: https://forum.sparkfun.com/viewtopic.php?f=32&t=27960

Donc au debut même principe, je transforme ma mega en programmeur ISP (mais est-ce que ca a vraiment marché...?) Je débranche l'arduino, cable la mini Pro sur les broches ICSP de la Mega, rebranche, séléctionne "Arduino Pro mini 3.3v 8MHz ATmega 328 " dans le type de carte de l'IDE arduino. La je vais dans Outils>Programmateur> séléctionne Arduino as ISP Je clique ensuite sur "graver la séquence d'initiation"

Et la, devinez ce qui s'affiche... he oui! :

Erreur lors de la gravure de la sequence d'initiation
avrdude: stk500_recv(): programmer is not responding

La je ne sais plus quoi faire... Pensez vous que mon Arduino Pro Mini est morte? Est-ce que je me plante dans mes manip?

Merci

Bonjour,

Les deux erreurs “programmer is not responding” sont totalement différentes :wink:
La 1er semble venir d’un bootloader un peu beaucoup planté sur ton Arduino pro.
La seconde vient du fait que ton arduino Mega ne répond pas à avrdude quand celui ci lui demande de programmer ton arduino pro.

As tu mis un condensateur de ~10µF entre GND et RESET sur ta mega2560 ?
Pas de condensateur = reset auto activé = pas de programmation possible.
http://playground.arduino.cc/Code/MegaISP

As tu mis un condensateur de ~10µF entre GND et RESET sur ta mega2560 ?

:astonished: T'es un chef!! Le pire c'est que j'avais cherché à couper l'auto reset mais j'avais lu qu'il suffisait d'une resistance de 120?, et ca n'avait pas marché...

La 1er semble venir d'un bootloader un peu beaucoup planté sur ton Arduino pro.

Du coup j'avais réussi à le débloquer. J'avais lu qu'il fallait appuyer sur reset et vite uploader un nouveau programme avant que le "bug" n'ai le temps de se mettre en place pour pouvoir la débloquer. Le problème c'est que chez moi, dès le relâchement du reset, le bug apparaissait. Mais je me suis rendu compte que lors de la mise sous tension de l'Arduino, il y avait une demi seconde sans que l'arduino se bloque.

Donc voila comment faire pour la débloquer (si certains sont dans le même cas que moi): 1-Brancher l'arduino et uploader un sketch (Si l'Arduino est débranché lors du clique sur le boutton "Download", on va alors vous demander de séléctionner un port valide, donc impossible d'aller plus loin) 2-juste après le clique sur le boutton de download, vite débrancher et rebrancher l'arduino (pendant que le sketch s'upload) 3-Et voila, normalement c'est uploadé sans erreur :)

Ce qui m'étonne c'est que le après avoir déplanté mon arduino, j'ai pus uploadé une dizaine de sketch puis tout d'un coup, le problème de bloquage est réapparue (alors que le dernier sketch envoyé ne contenait pas d'erreur) Ca m'est arrivé 2 ou 3 fois. Grace à ce que tu m'as dit, skywodd, j'ai donc pus réinitialiser le bootloader et ca na plus l'air de bloquer... ca fait maintenant plusieurs heures que rien à planté...

Vous pensez que ca pouvait venir d'un bootlaoder déficient? Dù au faite que la carte a été achetée sur Ebay pour une bouchée de pain?

Merci en tout cas!!

LeDahu: Vous pensez que ca pouvait venir d'un bootlaoder déficient? Dù au faite que la carte a été achetée sur Ebay pour une bouchée de pain?

Un bootloader corrompu dans une carte chinoise "à pas cher", impossible voyons :grin: Des cartes de si bonne qualité que parfois elles prennent feu ou partent en fumé spontanément ne pourrait jamais avoir un tel probléme :grin: (oui c'est de l'ironie, quand on regarde plus le prix que la qualité voila ce qui arrive ;))

Mouai... surtout que la différence de prix sur les mini 3.3v est pas énorme par rapport aux SparkFun, je savait juste pas ou les commander donc j'ai fait au plus simple: eBay On m'y reprendra plus...

Bon par contre la Mini remarche nickel mais j'ai l'impression que c'est la Mega qui fait des siennes maintenant... J'arrive à uploader des programmes sans problème mais des que je veux me servir du port série (les pins 0 et 1) afin de lire une trame d'un GPS relié sur ces deux bornes, rien ne s'affiche. Je me sert de ce port depuis quelques temps et j'ai jamais eu de soucis. Pourtant je charge bien un programme vide avant de lancer le terminal:

void setup() {}
void loop() {}

Et je met bien la bonne vitesse en Baud.

Ca marche nickel avec la mini mais rien avec la Mega; et ce, depuis que je m'en suis servi comme programmateur ISP....

Je suis sensé faire quelque chose avec la Mega lorsque j'ai fini de m'en servir comme programmeur? Ou juste le faite de recharger un programme vide suffit?

Et dans la fenêtre outils>programmateur de l'IDE, Je choisit quoi? (Etant donné que j'avais mis "arduino as ISP" pour recharger le bootloader, je ne sais plus ce qui est sélectionné d'origine)

Et un truc basique style blink ça marche ?

Oui... :(

J'ai aussi essayer de nettoyer l'EEPROM (apparemment parfois source de conflit avec la liaison serie si j'ai bien compris) en lançant le programme "eeprom_clear"; Mais ça n'as pas aidé.

EDIT: Rhhaaa c'est bon j'ai trouvé! Saleté de problème de masse! Le GPS était alimenté indépendamment par une source externe à l'Arduino. Du coup j'ai juste relié la masse de l'arduino à celle de l'alimentation et c'est tout bon. Bon, ce que je comprend pas c'est que ca ai marché avec la mini qui n'était pas plus relié avec la masse, mais bon....

Bon ben merci skywodd!!

La communauté francophone est drôlement plus positive. Je vous adopte... Je sais que c'est hors sujet, mais j'adore ce que je viens de lire ici.