Problemi per ricaricare il bootloader in un Atmega 16u2 su Arduino Uno

Buongiorno a tutti,
ho una scheda Arduino Uno in cui il chip USB/TTL Atmega 16u2 non è programmato (la scheda non è proprio riconosciuta da Windows). Ho cercato su internet come fare innanzi tutto a caricare il bootloader e, a parte l'utilizzo di Flip che però sul mio portatile (SO: Win XP) non ne vuole sapere di funzionare, ho trovato questa pagina web:
"https://www.gammon.com.au/bootloader"
che suggerisce un modo alternativo utilizzando una seconda scheda Arduino Uno e collegando tra le due schede le relative porte ICSP. I file necessari sono scaricabili da questa pagina:
"arduino_sketches/Atmega_Board_Programmer at master · nickgammon/arduino_sketches · GitHub"
li ho scaricati tutti in un'unica cartella ma quando provo a compilare il file "Atmega_Board_Programmer.ino" il compilatore da subito l'errore: "stray '' in program".
Dove sto sbagliando? Devo organizzare i vari file di contorno al programma in qualche cartella separata?
Grazie per l'aiuto.

Tiziano

Il bootloader non ha nulla a che vedere con il firmware che è caricato nel ATmega16U2 che fa da convertitore Seriale - USB. Esso si occupa esclusivamente del caricamento dei programmi in arrivo dalla porta seriale (che viene convertita in USB dal ATmega16U2 e dal suo firmware).

Detto firmware si trova in arduino\hardware\arduino\avr\firmwares nella cartella atmegaxxu2 e ti serve necessariamente Flip.

Guglielmo

Grazie per la risposta.
I problemi con Flip sono i seguenti:

  • se lancio il programma e vado su Settings/Communication/USB appare il messaggio: "AtLibUsbDfu.dll not found" e di conseguenza: "Could not load dynamic librery";
  • nel "read me" il programma mi suggerisce di aggiornare i files USB di Windows XP in "Gestione Periferiche" sotto la sezione "Jungo", peccato che nel mio Gestione Periferiche la sezione Jungo non esista.
    Concludendo Flip si installa, si apre ma poi non è in grado di comunicare con nulla.
    Avete qualche suggerimento? Grazie. :confused:

Hai installato l'ultima versione di Flip da QUI (installa quella con il runtime di Java)? Credo che ci sia anche un driver USB da installare ...

Io sono sotto macOS e quindi posso poco aiutarti sotto WinXP ... ::slight_smile:

Guglielmo

Ciao Guglielmo, grazie per la risposta.

Ho installato Flip con runtime di Java. In effetti c'è anche la cartella con il driver USB da installare ma il driver non si installa (se una cosa non deve andare non deve andare...).

Poiché se collego la scheda Arduino Uno "incriminata" al computer tramite cavo USB essa non viene riconosciuta da Windows, mi chiedevo se esista uno sketch per Arduino (da caricare su un'altra scheda, s'intende) che consenta, collegando la porta ICSP dell'Atmega 16u2 (sulla scheda da controllare) alla porta ICSP dell'ATmega 328P (sull'altra scheda, quella funzionante) di controllare lo stato dell'Atmega 16u2. A questo punto vorrei capire se è un problema firmware o è l'integrato che è "deceduto"...

Tiziano958:
In effetti c'è anche la cartella con il driver USB da installare ma il driver non si installa (se una cosa non deve andare non deve andare...).

Senza il driver come vuoi poter colloquiare con il chip? O tutto il software è correttamente installato, oppure è INUTILE qualsiasi tipo di prova visto che senza Flip ed il suo driver il ATmega16U2 non lo riprogrammi ... ::slight_smile:

Non hai un'altro PC dove provare?

Guglielmo

Grazie del suggerimento!
Ho preso un altro portatile con Windows 7, ho caricato Flip e ho installato manualmente il driver per il 16u2 prendendolo dalla sottocartella USB nella cartella Atmel sotto Programmi.
Ora chiedendo il collegamento USB Flip apre una finestra denominata "USB Port Connection" con all'interno tre possibili selezioni: "Open", "Close" e "Cancel". Seleziono "Open" e subito appare l'alert "Could not open USB device" nella finestra "com.atmel.flip.IspException".
Ovviamente la scheda Uno era collegata al computer! Ho provato anche a mettere brevemente in corto i pin GND e RST del connettore ICSP (ho letto che fosse necessario per porre il 16u2 in modalità DFU...) ma il risultato è rimasto lo stesso...
Che faccio, mi deprimo???

... come ti ho detto io sono su macOS (dove non c'è Filp) e per la programmazione di quei chip uso dfu-programmer, quindi non ti so dire.

Non so se con Flip devi usare un programmatore ISP ... prova a leggere QUI ...

Guglielmo

Secondo quanto leggo qui (istruzioni per installare un firmware alternativo ma è lo stesso)

immagino che tu ti blocchi al punto che dice "Click the USB Cable and click open."

E allora sorge la domanda: ma in gestione dispositivi il tuo Arduino compare o c'è sempre il dispositivo sconosciuto con il triangolino giallo?