avrdude: stk500_getsync(): not in sync: resp=0x00

Bonjour,

Je possède un Arduino Ethernet récent, avec une carte à base Atmel 8U2 (carte USB2SERIAL Light).
Lorsque je cherche à programmer l'Arduino, j'obtiens le message d'erreur suivant : "avrdude: stk500_getsync(): not in sync: resp=0x00", qui signale un problème de communication entre le PC et la carte Arduino.
J'ai fait des recherches sur le net, mais je n'ai trouvé que des choses concernant l'Arduino Uno.

J'ai essayé de mettre à jour le firmware du 8U2 grâce au logiciel FLIP 3.4.5, mais j'obtiens deux erreurs : une erreur de dll et une erreur me signalant que le fichier .hex contenant le firmware ne convient pas ... (téléchargé pourtant 4 fois avec 2 ordis différents).

Je ne sais plus que faire pour arriver à intégrer un sketch dans cet Arduino de malheur (termes traduits, car cela me gonfle profondément !).

Quelqu'un aurait il eu ce genre de souci et l'aurait il résolu ?

Merci de vos réponses.

Tu es sous windows ou sous Linux ?

Sous Linux il faut appartenir au groupe "dialout"

Je te remercie de ta réponse.

Je suis sous windows.
Ce problème se pose sous Win XP 32 (x86) ou sous Win 7 64 (x64).
J'ai testé en boucle l'Arduino (reset à la masse et Rx et Tx reliés) et il renvoie bien dans le moniteur série ce que j'envoie ...
J'avoue ne plus savoir que faire ...

Je signale que quand j'envoie un sketch dans l'arduino, la LED Rx (de la carte USB2SERIAL LIGHT) clignote 3 fois puis s’éteint.
La LED L9 (de la carte Arduino Ethernet) reste allumée tout le temps, comme la LED On ...

Salut.

Question bête, mais as tu bien installé le driver sur tes Windows ?

Oui :
Je vois un "Arduino UNO (COM3)" sur le win XP et un "Arduino UNO (COM4)" sur le win 7.
Par ailleurs, il me semble que le test Loop-Back permet aussi de vérifier cette installation ...

L'IDE est en version 1.0.1.

Les differentes cartes Arduino fonctionnenet a des vitesses de port série différentes.
Le test de rebouclage permet de vérifier en effet la bonne installation du driver.

Mais pour que le téléchargement se passe bien il faut d'un part que le bootloader soit bien installé sur ta carte et que tu choisisses le bon type de carte.

D'après tes commentaires j'ai l'impression que tu as choisit un modèle UNO dans le modèle Board. Je ne peut pas vérifier facilement si c'est le bon modèle depuis mon Bby, mais si ton Arduino Ethernet utilise un bootloader Arduino, alors la LED de la carte doit clignoter 3 fois au reset, et notamment au reset provoqué par le début du téléchargement.

Les problèmes peuvent donc etre :

  • mauvais choix de carte dans le menu board. Solution : prendre le bon modèle de carte
  • auto reset non actif. Solution : presser manuellement le bouton reset au début du téléchargement
  • bootloader mal flashé ou effacé. Solution : reflasher le bootloader avec un programmateur ICSP our une autre carte Arduino en mode ICSP.

J'ai eu un problème exactement identique.
Commencer par vérifier les choses basiques :

  • câble USB correctement branché,
  • essayer d'appuyer sur le bouton reset de la carte avant de lancer le programme,
  • driver sous Windows OK dans Panneau de configuration / Gestionnaire de périphériques
  • Choix du bon numéro de port dans le logiciel Arduino et baudrate
  • Choix de la bonne carte Arduino dans la liste des différents modèles.
    Eventuellement on peut éditer le fichier arduino/hardware/arduino/boards.txt

Au final, j'ai remplacé la version du logiciel Arduino 0018-fr (j'avait pris cette version car en français) par la dernière 1.0 et ça a réglé tous les problèmes.

Bonsoir à tous,

Je vous remercie de vos réponses.

J'ai vérifié que le port COM sélectionné dans l'IDE (version 1.0.1) soit le bon (COM3 pour mon ordi sous XP et COM4 pour mon ordi sous Seven).
Le board sélectionné dans l'IDE est le bon : Arduino Ethernet.
J'ai essayé l'appui sur le bouton reset de la carte, sans succès.
J'ai essayé plusieurs baudrate dans la config du pilote de port COM et j'ai aussi vérifié le baudrate dans le fichier boards.
Je m'oriente aussi de plus en plus vers un problème de bootloader ...
En effet, la LED "L9" de la carte ne clignote pas aux reset (appui sur le bouton ou téléversement). Elle reste allumée fixe ...
Du coup, quel est le bootloader que je dois prendre et comment le flasher ? (grâce au module USB2Serial et à l'IDE, ou bien faut il un autre programme ?)

S'il existe un tuto, je suis preneur !

Bonjour

Voici un lien décrivant 'en anglais) une procédure pour mettre à jour le bootloader d'une carte Arduino Ethernet
Une seconde carte Arduino est utilisée , elle exécute un sketch fourni.
http://scuola.arduino.cc/en/content/upgrade-arduino-ethernet-bootloader-latest-version

Le bon bootloader est fourni avec Arduino 1.0.1 dans le dossier hardware\arduino\bootloaders\optiboot, c'est le fichier optiboot_atmega328.hex (version 4.4 d'Optiboot)

Bonjour,

La page vers laquelle vous me renvoyez me semble très utile.
Je ne l'avais pas trouvé lors de mes recherches.
Le seul souci est que je vais devoir acheter un autre Arduino pour dépanner le mien (qui est tout neuf !)
C'est un surcoût de 25 € minimum ...

Sur ma carte USB2SERIAL, se trouve un connecteur 2x3 broches, ainsi que sur ma carte Arduino Ethernet. Est-il possible de reprogrammer le bootloader de l'ATMEGA328 par ce biais, en réalisant un câble spécifique ?

Essaye de regarder ce lien:

J'avais eu des déboires avec une carte UNO officielle.

Est ce que les deux LED Tx et Rx clignotent rapidement ensemble très vite lors du chargement (ça doit être le cas) ? Ou une seule d'entre elles ?

Si la défaillance vient bien du bootloader de la carte Arduino Ethernet (l'absence de clignotement de la LED L9 va dans ce sens ainsi que le succès du bouclage) et non du module USB-UART l'utilisation d'un petit programmateur externe serait une alternative économique à l'achat d'une seconde carte Arduino. Un jour ou l'autre l'utilisateur intensif des cartes Arduino a besoin d'un tel accessoire pour remettre les choses d'aplomb ou pour sortir un peu des 'sentiers battus'.

Le programmateur USBasp est facile à construire USBasp - USB programmer for Atmel AVR controllers - fischl.de et très facile à acquérir à faible côut.
Il est pris en charge par avrdude et donc utilisable avec les outils de l'environnement Arduino.

Se trouve sur ebay à 3€ port compris. 5€ si l'on ajoute l'adaptateur 10 pins vers 6 pins.

Questions pour préciser les conditions des essais :
-la carte Arduino Ethernet est elle alimentée par le module ou par une alimentation externe ?
-carte Arduino Ethernet seule (sans module connecté) la led L9 réagit-elle lors de l'appui sur le reset ?

USBasp.jpg

10 vers 4.jpg

Bonjour,

Merci pour vos réponses.
J'ai l'impression d'avancer dans la résolution de mon problème.
J'ai vu le programmateur USBasp à 3€ port compris (mais hors frais de douane).
Je suis en train de chercher des sources pour me fabriquer l'adaptateur 10 broches vers 6 broches avec du matériel de récupération (je pense avoir trouvé).

Du coup, j'en suis à me demander comment brancher ce programmateur sur mon Arduino Ethernet : je pense que c'est sur le connecteur à 6 broches marqué ICSP, situé entre le connecteur SD et le connecteur EXT PROGR. Me le confirmez-vous ?
Par ailleurs, je suis à la recherche de son brochage : le petit point situé en haut à droite de ce connecteur correspond-il à la broche 1 ? (Edit : apparemment, d'après le schéma du connecteur, trouvé sur http://www.on4jx.net/microcontroller/IspSerialAtmel/isp-con-avr.jpg et l'observation du circuit imprimé de l'Arduino Ethernet, ce serait bien ça ... )
Quel couplage dois-je faire avec mon adaptateur ?

J'ai vu le programmateur USBasp à 3€ port compris (mais hors frais de douane).

Frais de douane nuls dans 99,99% des cas pour ces envois de faible valeur, marqués 'gift' par l'expéditeur.
Délais relativement long parfois , 2 à 3 semaines.

Equivalence ci dessous pour les deux types de connecteurs ISP de programmation AVR.
La conncetion se fait bien sur les 6 pins marquées ISP, le point étant le repère de la broche 1 (=MISO sur le 6 pins).

Pour le raccord il suffit de relier point à point les signaux de même nom dans ce cas particulier.

brochages.png

J'ai commandé le programmateur à 2,99 €, frais de port compris.
Merci pour le brochage. Cela correspond à ce que j'avais trouvé ou compris.

Par contre, pour charger le bootloader (fichier optiboot_atmega328.hex) dans l'Arduino Ethernet, quel logiciel de programmation dois-je utiliser et y-a t'il un paramétrage spécifique ?

J'ai lu que l'IDE permettait de charger le bootloader, mais dans ce cas là, on n'a pas vraiment le choix du fichier ...

Bonjour

quel logiciel de programmation dois-je utiliser et y-a t'il un paramétrage spécifique ?

Sur le fond tout revient à utiliser (directement ou indirectement) le logiciel avrdude.exe qui se trouve dans le répertoire *c:\Program Files\arduino-1.0.1\hardware\tools\avr\bin* sous Windows XP.

-avrdude par l'IDE Arduino : la sélection du bootloader à flasher est en principe effectuée par le biais du choix de carte (board). La correspondance carte <-> bootloader est renseignée dans le fichier boards.txt du répertoire *c:\Program Files\arduino-1.0.1\hardware\arduino* sous Windows XP.
Pour Aduino Ethernet on lit :

ethernet.bootloader.low_fuses=0xff
ethernet.bootloader.high_fuses=0xde
ethernet.bootloader.extended_fuses=0x05
ethernet.bootloader.path=optiboot
ethernet.bootloader.file=optiboot_atmega328.hex
ethernet.bootloader.unlock_bits=0x3F
ethernet.bootloader.lock_bits=0x0F

Avec ces indications l'IDE saura 'passer commande' à avrdude.exe et installer le bootloader ainsi que la bonne configuration de 'fusibles'.

-certains préfèrent lancer directement avrdude.exe en ligne de commande avec les parametres nécessaires.
Voici un tutoriel qui donnera les éléments :

-d'autres enfin (j'en suis) préfèrent lancer avrdude.exe , hors IDE Arduino, avec en plus le confort d'une petite interface graphique. C'est ce que je fais sous XP avec SinaProg2 trouvé sur le forum AvrFreaks .... et adopté après comparaison avec d'autres GUI pour Avrdude.
http://www.avrfreaks.net/index.php?name=PNphpBB2&file=viewtopic&t=105007&highlight=sinaprog

SinaProg2.png

Bonjour,

Sathard:
Par contre, pour charger le bootloader (fichier optiboot_atmega328.hex) dans l'Arduino Ethernet, quel logiciel de programmation dois-je utiliser et y-a t'il un paramétrage spécifique ?

J'ai lu que l'IDE permettait de charger le bootloader, mais dans ce cas là, on n'a pas vraiment le choix du fichier ...

Comme le précise Al1fch le résultat sera le même, à savoir que avrdude sera appelé avec les arguments adéquat.

Le mieux est encore de laissait faire l'ide, il programmera les fusibles, le lock byte et la mémoire flash automatiquement.
Après rien n'interdit de passer par un interface graphique pour avrdude ou directement en ligne de commande, mais le résultat sera exactement le même.

Ou j'ai rien compris et vous oubliez ce que je dit ,
Mais ce n'est pas le 328 qui gère l'USB mais le 8U2, pourquoi vouloir changer le bootloader du 328 ?

L'énoncé du problème me rappelle exactement les déboires que j'avais eu au départ avec la livraison d'une carte buggée coté 8U2.
Ce bug ne touchait pas les gens sous XP mais ceux qui étaient sous seven et linux.

Pour résoudre "stk500_getsync(): not in sync: resp=0x00" j'avais suivi les explications de Snootlab.
Cela c'est fait uniquement en USB sans utiliser avrdude mais dfu.
Revoir le lien que j'ai indiqué précédement dans ce sujet.

Il se peut que la carte en question ait été oubliée sur une étagère et soit un peu vieille (environ 1an/1an 1/2).

@68tjs

Non c'est bien l'Arduino qu'il veut reflasher.
l'adaptateur USB marche bien (rebouclage fonctionnel) c'est le bootloader de l'Arduino qu'on met en cause car la LED de l'Arduino ne clignote pas au démarrage comme elle est sensé le faire.