Communication avec le programmateur AVRISPmkII pour reflasher le bootloader

Bonjour,

Je cherche à reflasher le bootloader de plusieurs cartes arduino UNO.

Pour cela, je me base sur la page web suivante : Flasher le bootloader d’une carte Arduino - PoBot

Après des problèmes d'accès aux fichiers, j'ai fini par mettre dans un répertoire les fichiers :

avrdude.conf avrdude.exe libusb0.dll optiboot_atmega328.hex

L'ordinateur fonctionne sous windows 7 et le programmateur est un AVRISP mkll

Le panneau de configuration donne pour le périphérique USB AVRISP mkll

Pour l'état du périphérique :
es pilotes de ce périphérique ne sont pas installés. (Code 28)

Contrairement à ce que j'ai pu faire pour le pilote de la carte arduino, la mise à jour du pilote ne trouve aucun pilote à installer pour le programmateur.

En lançant la commande
avrdude -p m328 -P COM1 -c stk500 -U flash:w:optiboot_atmega328.hex

j'obtiens juste des :
avrdude: stk500V2_Receivemessage(): timeout

Les autres ports COM ne sont pas reconnus.

Comment faire pour débloquer la situation ?

bech2:
L'ordinateur fonctionne sous windows 7 et le programmateur est un AVRISP mkll

Le panneau de configuration donne pour le périphérique USB AVRISP mkll

Pour l'état du périphérique :
es pilotes de ce périphérique ne sont pas installés. (Code 28)

Comment faire pour débloquer la situation ?

Bonjour
Il mlanque le driver specifique" au MKII
voir ici une marche à suivre qui semble bien documentée

Ça marche un peu mieux, à savoir que le programmateur est reconnu :
Voir image.

Toutefois, contrairement aux arduino, lorsqu'on le connecte sur un port USB,
aucun port COM associé à ce périphérique ne s'affiche.

Et lorsqu'on lance la commande avrdude ... avec le port COM1 (les autres n'étant pas
reconnus), on a toujours les messages d'erreur

avrdude.exe: stk500v2_ReceiveMessage(): timeout

bech2:
Et lorsqu'on lance la commande avrdude ... avec le port COM1 (les autres n'étant pas
reconnus), on a toujours les messages d'erreur

avrdude.exe: stk500v2_ReceiveMessage(): timeout

Il faut lancer avec usb à la place d'un port com
exemple
avrdude -p m328 -P COM1 -c stk500 -U flash:w:optiboot_atmega328.hex
par
avrdude -p m328 -P usb -c stk500 -U flash:w:optiboot_atmega328.hex

Ca communique.

Clignotement une ou deux secondes d'une LED du programmateur AVR, puis allumage d'une autre LED en vert (avec une fraction de seconde en rouge pendant le cycle).

Par contre, message d'erreur :
avrdude.exe: stk500v2_command(): command failed
avrdude.exe: stk500v2_program_enable(): bad AVRISPmkII connection status: Target not detected
avrdude.exe: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.

et en rajoutant l'option -F
avrdude.exe: stk500v2_command(): command failed
avrdude.exe: stk500v2_program_enable(): bad AVRISPmkII connection status: Target not detected
avrdude.exe: initialization failed, rc=-1
avrdude.exe: AVR device initialized and ready to accept instructions
avrdude.exe: Device signature = 0x5e0000
avrdude.exe: Expected signature for ATmega328 is 1E 95 14
avrdude.exe: NOTE: "flash" memory has been specified, an erase cycle will be performed
To disable this feature, specify the -D option.

L'option -D ne change rien

J'ai essayé aussi avec les fichiers ATmegaBOOT_168_atmega328.hex et ATmegaBOOT_168_atmega328_pro_8MHz.hex sans changement.

MKII officiel ou provenance asia ?
les 328P a reflasher sont connecté comment/sur quoi au MKII ?

Bonjour.

Pour le microcontroleur, la seule chose que j'ai pu arriver à lire est la référence ATMEGA 328P-PU

Les cartes Arduino sont toutes sérigraphiées MADE IN ITALY

Le microcontroleur est enfiché sur un support.

La connexion avec le boitier de programmation se fait par le cable nappe 6 broches.

A noter que l'essai avec une carte neuve (sortie de son emballage antistatique) donne le même résultat avec le programmateur.

Le programmateur est "Made in Malaysia".

bech2:
Bonjour.

Pour le microcontroleur, la seule chose que j'ai pu arriver à lire est la référence ATMEGA 328P-PU

Les cartes Arduino sont toutes sérigraphiées MADE IN ITALY

Le microcontroleur est enfiché sur un support.

La connexion avec le boitier de programmation se fait par le cable nappe 6 broches.

A noter que l'essai avec une carte neuve (sortie de son emballage antistatique) donne le même résultat avec le programmateur.

Le programmateur est "Made in Malaysia".

bonjour
il faut alimenter le 328 et bien configurer les fuses
regarde ça
et attention à une chose : un 328P usine est configuré en 1 MHz interne , un 328P déjà "arduino" est configuré en 16 MHz externe

pour "calculer" les fusibles ce lien interessant

Ça marche ! Merci pour vos renseignements.

Je fais ci-dessous une synthèse :

Installation des drivers :

Préparation d'un répertoire de flashage avec les fichiers requis

copier dans ce répertoire :

  • hardware/tools/avr/bin/avrdude.exe
  • hardware/tools/avr/bin/libusb0.dll
  • hardware/tools/avr/etc/avrdude.conf
  • hardware/arduino/avr/bootloaders/optiboot/optiboot_atmega328.hex

Branchements

  • connecter le cable nappe du programmateur AVRISP mkll sur le port ICSP de l'arduino
  • relier l'aduino à une alimentation (prise d'alimentation femelle sur 9 V ou 5 V + masse
    sur le connecteur POWER)
  • relier le programmateur à l'ordinateur via un cable USB

Flashage

  • Ouvrir sur l'ordinateur un terminal
  • se positionner dans le répertoire contenant les 4 fichiers énoncés plus haut
  • lancer la commande
    .\avrdude -p m328 -P usb -c stk500 -U flash:w:optiboot_atmega328.hex -F