transfert de sketch directement entre deux arduino uno

Bonjour,
il faut faire une recherche "Arduino as isp" il ya plein d'exemple dont celui-ci:

A+

Je ne trouve nulle part l'exemple de transfert direct de programme entre deux arduino uno;
dans le lien que tu me mets, Leptro, il est question d'un uno "donneur" et d'un promini"receveur".
Si j'ai deux uno les liaisons seraient t'elles 11 avec 11 ,12 avec 12, 13 avec 13,10 avec reset input du bornier power sur le receveur puis 5v avec 5v et gnd avec gnd?
si tu peux me confirmer , merci d'avance pour ton aide...
Ce serait dommage de cramer celui qui va bien!

l'Arduino uno et l'Arduino pro-mini utilisent le même micro contrôleur.
La procédure pour programmer une Uno ou promini ou bien une nano, reste la même.

Ce qu'on obtient au final c'est:

La Uno fonctionnel dans lequel on a téléverser le sketch ArduinoIsp se trouvant dans exemple., relié au port usb de l'ordinateur.

La deuxieme Uno sera relier à la premiere Uno comme suit:

Uno 1 Uno2

10 reset

11 11

12 12

13 13

+5v +5v

Gnd Gnd

Selectionner le programmateur "Arduino ISP"

Pour televerser un sketch dans la Uno defectueuse , il faut utiliser l'option téléverser avec un programmateur.

Bonne bidouille.

j'ai essayé ce que tu m'as dit mais quand je transfère blink par exemple
j'ai le message "avrdude:Error: could not find Usb tiny device(0x2341/0x49)

Leptro:
Selectionner le programmateur "Arduino ISP"

Petite erreur de ma part.

Selectionner le programmateur "Arduino As ISP"

bien verifier le port com aussi.

oui Leptro j'avais vu que ce devait être Arduino As ISP , c'est ce programmateur là que j'ai utilisé
et pour le port com , il charge bien le sketch ArduinoISP sur l 'arduino qui fonctionne ...

je viens de refaire plusieurs tentatives , a chaque fois que je veux transferer blink j'ai ce message:

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x66
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe0
Une erreur est survenue lors du transfert du croquis

ça ressemble à un problème de câblage.

il faut aussi vérifier que le type de carte soit la bonne.

Une photo du câblage et une capture d'écran pourraient nous donner des piste.

Bonjour Leptro,

je te suis reconnaissant de t'intéresser à mon problème
je suis quasiment sûr du câblage comme tu ma l'a indiqué voir photo( si suffisamment lisible)
nouvel essai ce matin: voir copies d'écran
sketch de gauche chargé de façon conventionnelle (AVRISP mkII) dans l'Arduino qui va bien
sketch de droite chargé avec téléverser avec un programmateur après avois sélectionner outil
arduino as ISP


Bonjour Guillaumetell De rien..
mais il n'y a pas de pièce jointe.
Pourrais-tu vérifier stp?

Excuse moi, :confused:
j'essaie encore,
cette fois au lieu de faire "insert an image", je vais faire "Attach:"

Et bien voilà : signature invalide.
Il se peut (mais ce n'est pas obligatoire) que ce soit atmega328 au lieu d'un atmega328p
Peut tu donner toutes les indications écrites sur le boîtier du CI

Nota : le texte aurait été préférable à un gif.
La prochaine fois pour avoir le max d'indications, dans l'onglet préférences tu actives le mode "verbose" et tu copies tout le texte qui s'affiche dans la console d'erreur.

Info : insert image c'est quand on a l'adresse d'un fichier image déjà situé sur un site.
Attach permet de mettre les images sur ce site.

La procédure est caca poux mais c'est comme cela :

  1. Tu ajoute l'image avec "attachment"
  2. Tu publies le message
  3. Avec la souris tu survole le lien vers l'image et tu en copies l'adresse
  4. Tu édites ton message et tu copies l'adresse dans insert image (l'icone en forme d'écran)
  5. Tu publies pour finir et l'image est dans le texte.

OUF, c'est pénible mais dis toi qu'ici certains utilisent tablettes ou téléphones.

Bonjour,

On voit mal sur la photo, mais on dirait que le 5V de la carte cible n'est pas relié. Est ce que la led power s'allume bien?

Bonjour à vous,
à Karmill c'est vrai que la photo n'est pas belle mais je suis sûr de mes liaisons , la carte est alimentée en 5v

à 68tjs :c'est un AMTEL MEGA 328P AU1741
il y a aussi un quartz 12.000 près de l'usb
un autre 16.000 près d l'icsp
et un c.i. CH340G

Sur l'IDE que j'utilise version 1.8.1 texte en français ,je ne vois pas de "verbose" dans préférences !

merci pour votre intéret à mon problème.

Oui, on voit mieux comme ça.
Le fil reset fait bien contact?

pour 68tjs:
voilà ce qui apparaît dans le bloc note après avoir fait "recopier les messages d'erreur" de la console

(Arduino : 1.8.1 (Windows 10), Carte : "Arduino/Genuino Uno"

Le croquis utilise 928 octets (2%) de l'espace de stockage de programmes. Le maximum est de 32256 octets.
Les variables globales utilisent 9 octets (0%) de mémoire dynamique, ce qui laisse 2039 octets pour les variables locales. Le maximum est de 2048 octets.
avrdude: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.
Mauvais microcontrôleur trouvé. Avez-vous sélectionné la bonne carte dans le menu Outils > Type de carte ?

Ce rapport pourrait être plus détaillé avec
l'option "Afficher les résultats détaillés de la compilation"
activée dans Fichier -> Préférences.)

Je me demande si dans le cas de l'utilisation d'arduino comme programmeur "arduino as ISP" pour que la cible soit reconnue , ne faudrait-il pas la considérer comme un ATMEGA tout seul comme s'il était sur une breadboard ?

pout 68tjs: voici la recopie complète de la console après tentative de téléverser blink:
j'ai dû effacer le début car trop de caractères

Arduino : 1.8.1 (Windows 10), Carte : "Arduino/Genuino Uno"

Detecting libraries used...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10801 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\sketch\Blink.ino.cpp" -o "nul"
Generating function prototypes...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10801 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\sketch\Blink.ino.cpp" -o "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\preproc\ctags_target_for_gcc_minus_e.cpp"
"C:\Program Files (x86)\Arduino\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\preproc\ctags_target_for_gcc_minus_e.cpp"
Compilation du croquis...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-g++" -c -g -Os -Wall -Wextra -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega328p -DF_CPU=16000000L -DARDUINO=10801 -DARDUINO_AVR_UNO -DARDUINO_ARCH_AVR "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\cores\arduino" "-IC:\Program Files (x86)\Arduino\hardware\arduino\avr\variants\standard" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\sketch\Blink.ino.cpp" -o "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\sketch\Blink.ino.cpp.o"
Compiling libraries...
Compiling core...

Utilisation du fichier déjà compilé : C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\core\abi.cpp.o
Utilisation du fichier déjà compilé : C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\core\main.cpp.o
Utilisation du fichier déjà compilé : C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\core\new.cpp.o
Utilisation du fichier déjà compilé : C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\core\core.a
Linking everything together...
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-gcc" -Wall -Wextra -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections -mmcu=atmega328p -o "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/Blink.ino.elf" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644\sketch\Blink.ino.cpp.o" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/core\core.a" "-LC:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644" -lm
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -j .eeprom --set-section-flags=.eeprom=alloc,load --no-change-warnings --change-section-lma .eeprom=0 "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/Blink.ino.elf" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/Blink.ino.eep"
"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avr-objcopy" -O ihex -R .eeprom "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/Blink.ino.elf" "C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/Blink.ino.hex"
Le croquis utilise 928 octets (2%) de l'espace de stockage de programmes. Le maximum est de 32256 octets.
Les variables globales utilisent 9 octets (0%) de mémoire dynamique, ce qui laisse 2039 octets pour les variables locales. Le maximum est de 2048 octets.
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM3 -b19200 -Uflash:w:C:\Users\JEAN_C~1\AppData\Local\Temp\arduino_build_400644/Blink.ino.hex:i

avrdude: Version 6.3, compiled on Dec 16 2016 at 13:33:19
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf"

Using Port : COM3
Using Programmer : stk500v1
Overriding Baud Rate : 19200
AVR Part : ATmega328P
Chip Erase delay : 9000 us
PAGEL : PD7
BS2 : PC2
RESET disposition : dedicated
RETRY pulse : SCK
serial program mode : yes
parallel program mode : yes
Timeout : 200
StabDelay : 100
CmdexeDelay : 25
SyncLoops : 32
ByteDelay : 0
PollIndex : 3
PollValue : 0x53
Memory Detail :

Block Poll Page Polled
Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack


eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff
flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff
lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00
calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00
signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00

Programmer Type : STK500
Description : Atmel STK500 Version 1.x firmware
Hardware Version: 2
Firmware Version: 1.18
Topcard : Unknown
Vtarget : 0.0 V
Varef : 0.0 V
Oscillator : Off
SCK period : 0.1 us

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.02s

avrdude: Device signature = 0x00ff00
avrdude: Expected signature for ATmega328P is 1E 95 0F
Double check chip, or use -F to override this check.

avrdude done. Thank you.

Mauvais microcontrôleur trouvé. Avez-vous sélectionné la bonne carte dans le menu Outils > Type de carte ?

0x00ff00 : ouille ...

Signature inconnue : https://web-engineering.info/node/28

A cette liste on peut ajouter le 328PB : 0x1e9516

@+

Précision : ce n'est pas le programme ArduinoISP qui trouve la signature fausse, c'est le programme "avrdude" de la société Atmel et qui est lancé automatiquement par tous les programmeurs.

ArduinoISP envoie à avrdude le fichier à transférer et c'est avrdude qui effectue le transfert physique des bits dans le micro et avrdude vérifie que le micro est le bon en lisant sa signature.

Si sur le boîtier il est bien écrit atmega328p soit c'est un faux, mais je serais surpris car faire des copies illiscites d'un vieux micro comme le 328p est ruineux, soit le micro "a souffert grave", soit effectivement il y a un problème de câblage.

Question : à la première mise sous tension la del (led) sur la pin 13 clignotait-elle ?
Normalement toutes les cartes sont livréees avec le programme "blink" préchargé.

Pour les problèmes de câblage je ne connais qu'une solution : tout refaire en commençant par tout décabler.

la led rouge "on" est allumée en permanence
la led jaune "L" clignote : 2 coups brefs un temps d'extinction d' environ 2 s de façon cyclique..donc pas vraiment blink