Problema caricamento su scheda arduino compatibile

https://www.eevblog.com/forum/microcontrollers/troubleshooting-custom-arduino-nano-board/

Qui (not in sync 0x1d) parla di segnale tx/rx errato, fai tramite usb ? Hai provato a cambiare cavo ?

Si uso USB, si ho provato a cambiare cavo

un viaggetto a Lourdes?... :slight_smile:

non sarebbe una cattiva idea

Cercando di capire cosa fanno i bootloader Arduiniani (optiboot, caterina,etc.) e avrdude (leggendo i sorgenti) alla fine mi è capitata questa pagina di Nick Gammon (uno degli admin):
https://www.gammon.com.au/forum/?id=11633
Hai una Uno originale, mi pare. La usi per caricare il suo sketch Atmega_Board_Detector e colleghi le schede tramite ICSP.
A monitor seriale ti darà i dettagli di che cosa c'è sulle DCcduino.

Altra prova sarebbe un altro PC.

Ho provato a cambiare computer ma sempre non funziona. Da ieri mi sono accorto che ora anche la uno originale mi da lo stesso errore su entrambi i computer, così ho subito provato una mega originale e una nano falsa, queste funzionano e ricevono il codice, in pratica ora l'errore si presenta soltanto nel momento in cui vada a inserire una scheda Arduino UNO sia originale o fasulla mentre per tutte le altre tipologie di schede(originale e non) questo problema non sussiste

A naso direi che sulle Uno c'e' un bootloader diverso da quello che dovrebbe esserci.
Che IDE usavi prima ?

nid69ita:
A naso direi che sulle Uno c'e' un bootloader diverso da quello che dovrebbe esserci.
Che IDE usavi prima ?

E' esattamente ciò che penso io.

Siccome mi succede spesso sui NANO cinesi e comunque, a causa del vecchio bootloader dovevo sempre cambiare il firmware per far funzionare il watchdog, consiglio di ripartire da zero, scrivere il bootloader e poi passare lo sketch.

Come IDE usavo la 1.8.2 ora ho la 1.8.5, allora oggi provo a caricare il bootloader e vi dico come va

...e ti dico già subito che potresti avere problemi a caricare il bootloader...

Ma ne riparliamo.

Si infatti ecco l'errore

Arduino:1.8.5 (Windows 7), Scheda:"Arduino/Genuino Uno"

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM13 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 

avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
        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                    : COM13
        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

Errore durante la scrittura del bootloader
Reading | ################################################## | 100% 0.02s

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

avrdude done.  Thank you.

Uso un arduino mega come programmatore
I collegamenti che ho fatto sono i seguenti:
pin 53 mega al reset della uno
pin 51 mega al pin 11 della uno
pin 50 mega al pin 12 della uno
pin 52 mega al pin 13 della uno
Gnd mega alla gnd della uno
5v mega al 5v della uno

Sono riuscito a caricare il bootloader sull'arduino uno originale, in pratica il pin reset della uno va collegato al pin 10 della mega, ora funziona correttamente, sui cloni invece non riesco a caricarlo, questo è l'errore

Arduino:1.8.5 (Windows 7), Scheda:"Arduino/Genuino Uno"

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM13 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m 

avrdude: Version 6.3, compiled on Jan 17 2017 at 12:00:53
        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                    : COM13
        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

Errore durante la scrittura del bootloader
Reading | ################################################## | 100% 0.02s

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

avrdude done.  Thank you.

use -F to override this check

cioè dove dovrei inserire F?

copia il comando che arduino ide lancia, aggiungendo -f
in una finestra "prompt dei comandi"

C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM13 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m -f

il risultato che mi da il prompt è

\Arduino\hardware\tools\avr/bin/avrdude non atteso.

mentre così ho inserito il comando(traducendo Program Filse in Programmi), andava inserito così nel prompt?

C:\Users\Acer>cd c:\
c:\><C:\Programmi (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Programmi (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM13 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m -f >

Credo che dove ci sono frasi con spazi devi racchiudere tra doppi apici

"C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude" -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM13 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0xFD:m -Uhfuse:w:0xDE:m -Ulfuse:w:0xFF:m -f

P.S. di questi problemi di solito non ne ho, decido io dove installare, e di sicuro non faccio installare a windzoz le cose sotto a cartelle con nomi stupidi (dal 7 in poi) "Program Files (x86)" o "Program Files" (nomi fisici) che poi in esplora file vedi come "programmi" e "programmi (x86)" (nomi virtuali)
Di solito ho mia cartella "c:\Programmi" e basta. E ci metto programmi win64 bit e win32 senza inutili (per me) distinzioni