Arduino mega 2560

ciao a tutti, ho acquistato un kit di elettronica per fare una stampante 3d, in questo kit era incluso una scheda arduino mega ovviamente non originale, anche se ben fatta.

purtroppo collegandola al pc non la riconosce in nessun modo, si accende il led verde on mentre il led giallo L lampeggia 3 volte lento e poi veloce.

oggi ho girato in lungo e in largo per cercare di risolvere questo problema, ho provato anche
con flip 3.4.7 per caricare il firmware aggiornato, ma mi dava sempre errore atlibusb.dll non trovato.

avendo preso una scheda arduino comprata direttamente dallo store qui l'ho collegata e aggiornato i driver con quelli di flip, risultato che flip riesce a comunicare con arduino originale, mentre col clone mi dà "could not open usb device"
qualcuno di voi ha riscontrato questo problema oppure sa come posso recuperare questa scheda?
vorrei utilizzarla al posto dell'originale per le prove, visto che ho sentito che con qualche errore si può bruciare arduino vorrei evitare di bruciare l'originale...

corso_shiba:
purtroppo collegandola al pc non la riconosce in nessun modo, si accende il led verde on mentre il led giallo L lampeggia 3 volte lento e poi veloce.

Molto probabilmente l'interfaccia USB del tuo clone non usa un 16u2 pertanto non puoi usare i driver di Arduino, tocca vedere che chipset è montato e usare i suoi driver.

Controlla bene che chip usa per la conversione USB-Seriale, se è identico all'originale dovresti riuscire a metterci su il firmware.

Fai una foto di buona qualitá e vediamo noi.
Ciao Uwe

sul chip c'è scritto
arduino dubbia provenienza: atmel MEGA 16U2 1418 PH 3Y5369
arduino originale: atmel MEGA 16U2 1410 PH 3Y3656

adesso provo a fare una foto nel dettaglio e dell'insieme comunque sono molto uguali, ne ho viste di foto cloni però io questi riesco a distinguerli solo dalla qualità di stampa, per esempio l'italia sembra senza punta :fearful:

per il resto componenti e disposizione sono se non uguali simili.

arduino dubbia provenienza: atmel MEGA 16U2 1418 PH 3Y5369
arduino originale: atmel MEGA 16U2 1410 PH 3Y3656

1410 e 1418 sono l'anno e settimana di produzione percui non indica un falso o vero.
Mentre il resto del codice non so dirti.

L' arduino che é nel immagine é un falso (si vede dal font utilizzato, confronta per esempio i "A" e i "W")
Fatelo cambiare da chi lo hai comprato.
Ciao Uwe

Un' altro modo per riconoscere un falso :wink:
Ma siccome ho esplicitato il problema al venditore che ancora non mi ha risposto, secondo voi posso ricaricare il firmware tramite porta icsp?
Io ho un convertitore usb_rs232
E un Arduino uno rev3., ho letto che si può usare per programmare.

corso_shiba:
Un' altro modo per riconoscere un falso :wink:
Ma siccome ho esplicitato il problema al venditore che ancora non mi ha risposto, secondo voi posso ricaricare il firmware tramite porta icsp?
Io ho un convertitore usb_rs232
E un Arduino uno rev3., ho letto che si può usare per programmare.

Dovresti ricaricare il firmware del ATmega16U2 e quello non puoi fare con un USB-seriale ma Ti serve un programmatore ISP.
Ma ritornando: se colleghi l' arduino trovi un nuovo device USB sconosciuto?

Il venditore che non si fa vivo:Mandagli un Email dicendogli che ha venduto un Arduino falsisficato e se non risponde entro breve Ti vedi costretto di segnalarli al produttore (trademark et arduino.cc)

Ciao Uwe

no non lo vede e non l'ha mai visto, l'ho collegato alla macchina virtuale con xp, al miniportatile con w8 niente.
pensavo si potesse fare tramite arduino uno o due che posseggo, oltre che al mega.

comunque per quanto riguarda il venditore diciamo che il costo di tutto il kit costava quanto l'arduino mega originale, quindi l'obiettivo dell'acquisto non era il falso arduino, solo che mi interessava l'idea di usarlo come cavia.

Sì, pensavi benissimo, puoi usare Arduino UNO in veste di Programmatore ISP e caricare il firmware nell'ATmega16u2 di Arduino MEGA2560.

Di solito nei falsi il fuse è verde. Nella foto è dorato. :roll_eyes:

Gli hanno messo anche l’adesivo MADE IN ITALY. :grin:

sto cercando di riprogrammare con avrdude usando questa riga di comando:

avrdude.exe -C avrdude.conf -c arduino -P /dev/ttyACM0 -b 19200 -p m16u2 -vvv -U flash:w:/home/USER/newFirmware/16u2.hex:i

ho risolto alcuni problemi ma altri ancora non riesco
avrdude.exe----------ok spostato in cartella comoda
-C avrdude.conf------ok spostato in cartella comoda
-c arduino ------------ancora non mi ha restitutito nessun errore
-P /dev/ttyACM0------come faccio a sapere qualedato inserire? arduino uno è sulla com1 ora
-b 19200--------------presumo che vada bene
-p m16u2-------------questo nel file .conf non lo trova, l'unico presente è m32u4
-vvv-------------------questo presumo non dia errore
-U flash:w:/home/USER/newFirmware/16u2.hex:i--- questa dovrebbe essere la cartella contenente il file .hex

se voi avete ustao questo metodo sapete come risolvere gli errori?
io intanto ci provo e ci riprovo :art:

Quali errori? Ce li dobbiamo immaginare o li puoi postare? :sweat_smile:

Stai usando MAC o Windows? Se hai Windows devi scrivere COM1 al posto di /dev/ttyACM0.

Per trovare ATmega16u2 devi usare l'ultima versione di AVRDUDE, la 6.1, e non quella in dotazione all'IDE di Arduino, che è più vecchia.

Naturalmente su Arduino UNO devi caricare il firmware ArduinoISP in dotazione all'IDE, ma immagino che questo tu lo abbia già fatto.

windows infatti quel /dev mi sembrava molto sospetto, però sulla pagina di spiegazione riporta questa riga come l'ho scritta, anche per windows

la versione che stavo usando appunto è la 5.1 che non era in uso con l'ide, ma l'avevo scaricato con un'altro programma winavr nelle cartelle ho recuperato il file exe e conf (quest'ultimo nell'ide non esiste e con la riga di comando lo richiama)
si sull'UNO avevo già caricato ArduinoISP

rieseguo tutto con le correzioni che mi hai dato, vediamo cosa viene fuori :grin:

adesso mi resituisce qsto errore

avrdude.exe: Device signature = 0x000000

avrdude.exe: Yikes! invalid device signature.
----------------Double check connections and try again, or use -F overide this check

Per non correre rischi scarica AVRdudess
--> AVRDUDESS – A GUI for AVRDUDE – Zak's Electronics Blog ~*
Poi copi dentro la cartella di AVRdudess il file libusb0.dll che trovi nella directory principale dell'IDE.
Mi raccomando di usare l'IDE 1.0.6.

Dentro l'IDE trovi anche il firmware da usare: arduino-1.0.6\hardware\arduino\firmwares\atmegaxxu2\Arduino-COMBINED-dfu-usbserial-atmega16u2-Mega2560-Rev3.hex

Poi devi fare i giusti collegamenti tra l'Arduino usato come programmatore e il connettore ICSP dell'16U2.

Se hai collegato tutto e installato bene il programma premi su Detect

Ricorda di indicare il programmatore ma soprattutto la velocità a 19200 (Baud Rate).

questo è quello che ho ottenuto che poi sarebbe quello ottenuto usando avrdude

questo è lo schema usato per il collegamento
prima ancora di collegare anche il MEGA all'usb, i +5v e GND li ho presi direttamente dall'UNO,

Arduino MEGA NON dovrebbe essere collegato all'USB del PC, e il pin 5V del connettore ICSP di Arduino UNO va collegato al corrispondente pin dell'ICSP relativo al 16u2. AVRDUDESS sta infatti trovando il micro di Arduino UNO mentre dovrebbe rilevare il 16U2. Secondo me con AVRDUDES hai solo aggiunto un elemento di disturbo, visto che la stringa di AVRDUDE era fondamentalmente corretta. Peraltro nella maschera che hai postato ora leggo una COM5, non era COM1 quella a cui è collegato Arduino UNO?

ciao michele non preoccuparti non ho compromesso nulla, al massimo non riuscivo a programmarlo, il resto dei pin sono collegati correttamente.
l’usb sul mega2560 l’ho collegata nelle ultime prove che ho fatto senza cambiare risultato.
la com 5 l’ho cambiata io nelle prove che ho fatto, altrimenti non mi avrebbe letto neanche il 328p.

il fatto che facendo varie prove ho simulato, senza portare a termine, di voler programmare il mega2560 e me lo ha trovato correttamente, mentre per quanto riguarda 16u2 proprio non ne vuole sapere.
la gui che mi ha indicato paolo è veramente buona, forse io non la so usare a pieno però è molto più intuitiva che usare cmd.

anzi ora che ci penso collego arduino due al posto del mega2560 dovrebbe vedermelo quantomeno.