[Correctif] - Uno & Mega 2560 - problème série

Les cartes Arduino, les platines

[Correctif] - Uno & Mega 2560 - problème série

Message non lude Lionel » Mer 16 Fév 2011 17:16

Edition du message le 25/06/12
ATENTION CETTE PROCEDURE EST OBSOLETE
POUR LES ARDUINO UNO R3,
NE PAS L'UTILISER SANS SAVOIR CE QUE VOUS FAITES

[edit 26.04.2016] => Voir ce tutoriel pour la MAJ du firmware de l'ATmega16U2 sur les Arduino/Genuino Uno R3

Des problèmes de communication ayant été constatés à l'utilisation des cartes Arduino Uno et Mega 2560, un correctif est possible moyennant une mise a jour du firmware du composant assurant la liaison série (8U2)

http://arduino.cc/blog/2011/02/15/fix-t ... -problems/

la méthode de mise à jour est décrite ici
http://arduino.cc/en/Hacking/DFUProgramming8U2

Détails de la mise à jour sous windows 7 quelques infos sont manquantes à ce niveau

C'est un processus sans risque, en cas d’échec à la première tentative, vous pouvez réitérer l'opération.

Télécharger le logiciel Flip Atmel (version testée avec succès : 3.4.2)
http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886

Télécharger le driver certifié pour les OS windows 64 bits (Windows 7, Vista...)
Le logiciel Flip Atmel, nécessite un driver certifié pour les OS windows 64 bits,
on peut le trouver ici,
http://www.avrfreaks.net/index.php?modu ... showinfo=1
Télécharger le fichier zip et le dezipper

Télécharger le firmware mis à jour pour le µC 8U2
Le firmware se trouve sur le dépot github
Choisir la version correspondant à votre carte (Uno ou Mega 2560) soit
(utiliser bouton de droite, enregistrer sous...)
Uno -> arduino-usbserial/Arduino-usbserial-uno.hex
Mega 2560 -> arduino-usbserial/Arduino-usbserial-mega.hex

Les firmwares sont aussi disponibles dans le répertoire /hardware/arduino/firmwares/arduino-usbserial de vorte installation du logiciel Arduino

Si votre carte n'est pas une version CMS du Uno
Souder une résistance de 10k (Marron Noir Orange) à l'arrière de la carte comme indiqué sur la photo
Image

Connecter l'Arduino à l'aide du cable USB
De la même manière que pour uploader un sketch.

Ré-initialiser le µControlleur 8U2 (reset)
Pour ce faire, relier brièvement la pastille reset à la masse. Les pastilles sont situées près du connecteur USB, comme indiqué sur l'image. Les relier brièvement avec un bout de câble.

Image

Pour vérifier que vous avez ré-initialisé correctement le µC 8u2 : Dans le logiciel Arduino, vérifier la liste des ports séries, celui initialement affecté a la carte Uno doit avoir disparu.

Mise à jour du pilote signé pour Flip :
Dans le gestionnaire de périphériques, le matériel Arduino Uno DFU apparaît comme non installé

arduino uno dfu.png
arduino uno dfu.png (28.81 Kio) Vu 3229 fois


Choisir Arduino Uno DFU, bouton de droite / Mettre à jour le pilote
Choisir Rechercher un pilote sur mon ordinateur
Choisir le chemin dans lequel le pilote signé Flip lib usb a été dézippé, par exemple...

C:\Users\Pamela Ewing\Downloads\Flip-libusb-signed-driver\driver

dossier.png
dossier.png (38.75 Kio) Vu 3229 fois


Cliquer sur Installer à l'affichage de la fenêtre de sécurité
sécurité.png
sécurité.png (43.92 Kio) Vu 3229 fois


Lorsque l'installation s'est correctement déroulée, le périphérique AT90USB82 apparaît comme installé

majflipok.png
majflipok.png (77.75 Kio) Vu 3229 fois

Fermer la fenêtre

Le périphérique AT90USB82 est visible et correctement installé dans le gestionnaire de périphérique

gest periph ok.png
gest periph ok.png (84.41 Kio) Vu 3229 fois


Mise à jour
Lancer le logiciel flip
Menu Device / Select
choisir AT90USB82 et confirmer

Puis menu Settings / Communication
Choisir USB et cliquer sur open

Ensuite, menu File / Load Hex File
Choisir le fichier correspondant a votre carte (ici un Uno) et valider

flip load.png
flip load.png (99.91 Kio) Vu 3229 fois


Enfin, cliquer sur Run,
Le µControlleur 8u2 est mis à jour (attention ça va vite !!) et tous les voyants sont au vert \o/

maj uc ok.png
maj uc ok.png (60.71 Kio) Vu 3229 fois


Débrancher puis rebrancher la carte
Le port série devrait réapparaître dans le menu Tools / Serial port du logiciel Arduino, ainsi que dans le gestionnaire de périphériques.

Sources et liens :
http://fourwalledcubicle.com/blog/2009/ ... t-windows/

x4I6E6009.jpg
x4I6E6009.jpg (191.58 Kio) Vu 3211 fois


x4I6E6008.jpg
x4I6E6008.jpg (230.78 Kio) Vu 3211 fois
Image - Distributeur officiel Arduino - Conception de shields
Avatar de l’utilisateur
Lionel
 
Messages: 734
Inscription: Mar 21 Déc 2010 09:52
Localisation: Toulouse

Re: [Correctif] - Uno & Mega 2560 - problème série

Message non lude phreakartz » Ven 29 Aoû 2014 13:06

Bonjour,

Merci pour ce tuto très bien fait qui m'a permis de mettre mon ATmega16U2 de ma board ArduinoMega2560.

Un point qui m'a fait perdre pas mal de temps est que le fichier Arduino-usbserial-atmega16u2-Mega2560-Rev3.hex présent à l'adresse : https://github.com/arduino/Arduino/tree ... -usbserial m'affichait constamment une erreur de syntax.

En utilisant le fichier présent dans le dossier d'installation du logiciel Arduino C:\Program Files (x86)\Arduino\hardware\arduino\firmwares\atmegaxxu2\arduino-usbserial ça a fonctionner du premier coup.

D'ailleurs, il semblerait que les drivers DFU soient également présent dans ce dossier : C:\Program Files (x86)\Arduino\drivers\FTDI USB Drivers ;même si ceux présent à l'adresse indiquée dans le tuto fonctionnent également.

Un autre point important pour mettre l'ATmega16U2 en mode DFU est de maintenir son reset à la mise sous tension. Pour ma part, le fait d'avoir fait le Reset alors que la board était déjà allumée n'a eu aucun effet.

Je précise également que les pins RESET et GND du 16U2 ont la même localication que la 8U2 ; et bien évidemment que ce RESET est différent du RESET de la board (pin et bouton poussoir). Je me suis posé la question l'espace d'un instant. ;-)

Bon, malgré tout ça, je n'arrive toujours pas à envoyer de sketch dans ma board. Je pense que mon ATMega2560 est mort suite à un +12V sur l'UART Serial 1.

Quelqu'un saurait comment mettre à jour l'ATMega2560 ?

Merci,
Bonne journée
phreakartz
 
Messages: 1
Inscription: Ven 29 Aoû 2014 12:58


Retourner vers Arduino

Qui est en ligne

Utilisateurs parcourant ce forum: Google [Bot] et 1 invité

cron