Go Down

Topic: [Risolto] Arduino mi stà lasciando (Read 2929 times) previous topic - next topic

lesto

vero, ed è proprio quello che mi preoccupa, l'at.-mega da solo non lo prendi sotto i 3/4€ anche in grosse quantità... qualche scatolone "caduto dal camion?"
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Gono

Quote

ci sono tanti post sull'argomento, forse sul sito di leo trovi i file già confezionati!


Sul sito di leo non ho trovato nulla.
In giro ho trovato questo ma non sò quali file usare.


> Leo: :P XD

In compenso bisogna ammettere che e' un discreto posto per prendere solo i componenti se devi farti degli standalone ... ad esempio:

http://www.aliexpress.com/item/Free-shipping-ATMEGA328P-PU-without-Ar-duino-BOOTLOADER-DIP-Socket-16MHz-crystal-Kit/1268861160.html

8 atmega328p-pu, 8 7805, 8 quarzi da 16MHz ed una manciata di condensatori per circa 3 Euro e mezzo scarsi, spedizione inclusa, non mi sembrano proprio un cattivo prezzo, anche senza bootloader installato :P

Edit: dimenticavo gli zoccoli :P (qui con 60 centesimi al pezzo, non ci prendi neppure gli zoccoli :P XD)


Ho acquistato poco tempo fa (e mi devono ancora arrivare) 5 atmgea328p da ebay a circa 7€, mi sembrava già quello un ottimo prezzo, ma qui mi sa proprio dell'incredibile.
SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

Etemenanki

Lo store ha alcune migliaia di componenti, e piu di 300 tipi di integrati diversi, piu che scatoloni caduti dal camion, probabilmente e' un distributore che cerca di smaltire delle scorte extra :P

Anche se non cosi economici, comunque il 328p lo si trova sul dollaro, dollaro e qualcosa, in stock da 5 o 10 pezzi, anche da altri distributori ... quindi nulla di troppo trascendentale ... questo sta semplicemente facendo un'offerta migliore, magari solo perche' ha un'invenduto maggiore, chissa' ...

Ad esempio io ho trovato gli FX614 che mi servivano a 7 dollari l'uno, mentre su ebay partivano tutti da 28 :P ...
"Sopravvivere" e' attualmente l'unico lusso che la maggior parte dei Cittadini italiani,
sia pure a costo di enormi sacrifici, riesce ancora a permettersi.

lesto

interessante, devo ammettere che parto prevenuto sul quel sito perchè "a pelle" non mi è mai piaciuto..

BTW stavo pensando che potrebbe dissaldare il chip, e usare un convertotre esterno, rimpiazzarlo è mooooolto ardua
sei nuovo? non sai da dove partire? leggi qui: http://playground.arduino.cc/Italiano/Newbie

Gono


Lo store ha alcune migliaia di componenti, e piu di 300 tipi di integrati diversi, piu che scatoloni caduti dal camion, probabilmente e' un distributore che cerca di smaltire delle scorte extra :P

Anche se non cosi economici, comunque il 328p lo si trova sul dollaro, dollaro e qualcosa, in stock da 5 o 10 pezzi, anche da altri distributori ... quindi nulla di troppo trascendentale ... questo sta semplicemente facendo un'offerta migliore, magari solo perche' ha un'invenduto maggiore, chissa' ...

Ad esempio io ho trovato gli FX614 che mi servivano a 7 dollari l'uno, mentre su ebay partivano tutti da 28 :P ...

Interessante, ci darò un'occhiata!

Però come faccio a riprogrammare la 16U2?
SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

Gono

SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

PaoloP


Però come faccio a riprogrammare la 16U2?


Tramite il connettore ICSP.
--> http://arduino.cc/en/Hacking/DFUProgramming8U2
oppure tramite il classico Arduino as ISP e il firmware che trovi nell'IDE.

Gono



Però come faccio a riprogrammare la 16U2?


Tramite il connettore ICSP.
--> http://arduino.cc/en/Hacking/DFUProgramming8U2
oppure tramite il classico Arduino as ISP e il firmware che trovi nell'IDE.


Il DFU lo avevo provato ma non funziona   :(
Quello che volevo fare era appunto usare l'ISP però nell'IDE non c'è il 16U2 e non riesco a capire come procurarmelo!
SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

leo72


Hai 2 strade. O ti crei una voce a mano nel file boards.txt con il percorso del bootloader oppure agisci direttamente da terminale con avrdude passando tu i parametri.

Se non riesci a crearti una voce da solo, carica lo sketch ArduinoISP su un altro Arduino, poi collega un connettore ISCP a 6 pin dal connettore ISCP posto vicino al chip 8U2 (se la tua Arduino non ce l'ha, devi saldarcelo tu) al connettore ISCP dell'altro Arduino, avendo cura di collegare il pin 10 di quest'ultimo al pin RESET del primo (vedi guida di Michele per capire come fare).
A questo punto, procurati il file .hex del firmware del chip: lo trovi nella cartella di Arduino /hardware/arduino/firmwares/atmegaxxu2, insieme alle istruzioni per caricarlo da terminale usando avrdude nel file README.txt che c'è sempre in quella cartella.

Gono

Grazie mille Leo!
Allora ho fatto come mi hai detto ma mi da tantissimi timeout!

Quote

avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_ReceiveMessage(): timeout
avrdude: stk500v2_getsync(): timeout communicating with programmer
SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

leo72

Sembra che non riesca a spedire il file. Sei sicuro dei collegamenti? Hai collegato il pin di reset del chip 8U2 al pin 10 dell'Arduino su cui hai caricato lo sketch ArduinoISP?
Stai usando 2 schede diverse?

Anzi, se descrivessi come hai fatto i collegamenti e come stai operando sarebbe meglio, aiuterebbe a capire.

Gono

Allora collego ICSP dell'atmega 328 (programmatore) ai piedini della 16U2 dell'arduino da programmare.
Vcc - Vcc
Gnd - Gnd
Mosi - Mosi
Miso - Miso
Sck - Sck
Reset (del 16U2) al pin 10 dell'arduino programmatore.

Codice:

Code: [Select]

sudo avrdude -p at90usb82 -F -P /dev/ttyACM0 -c avrimkii -U flash:w:UNO-dfu_and_usbserial_combined.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m


File:

Code: [Select]

UNO-dfu_and_usbserial_combined.hex


Ho precedentemente inserito lo sketch Arduino ad ISP.
SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

leouz

comunqu quella dell'offerta un po piu sopra presa dal sito aliexpress è intesa come 4,80€ al lotto, cioè  tutti quei componenti 1 atmega + quarzo .. etc
non ti danno mica 8 atmega! ()se notate i componenti in tutto sono 8
http://www.aliexpress.com/item/Free-shipping-ATMEGA328P-PU-without-Ar-duino-BOOTLOADER-DIP-Socket-16MHz-crystal-Kit/1268861160.html

leo72

@Gono:
il programmatore è errato:
-c avrimkii

Devi usare
-c stk500v1
oppure
-c arduino
A seconda se usi avrdude della tua distro oppure quello allegato con l'Arduino.


Gono

Così fà qualcosa ma mi pare dia errore e rimane tutto come prima.

Codice:

Code: [Select]

sudo avrdude -p at90usb82 -F -P /dev/ttyACM0 -c stk500v1 -U flash:w:UNO-dfu_and_usbserial_combined.hex -U lfuse:w:0xFF:m -U hfuse:w:0xD9:m -U efuse:w:0xF4:m -U lock:w:0x0F:m


Output:

Code: [Select]

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.01s

avrdude: Device signature = 0x000000
avrdude: Yikes!  Invalid device signature.
avrdude: Expected signature for AT90USB82 is 1E 93 82
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "UNO-dfu_and_usbserial_combined.hex"
avrdude: input file UNO-dfu_and_usbserial_combined.hex auto detected as Intel Hex
avrdude: writing flash (7440 bytes):

Writing | ################################################## | 100% 1.21s

avrdude: 7440 bytes of flash written
avrdude: verifying flash memory against UNO-dfu_and_usbserial_combined.hex:
avrdude: load data flash data from input file UNO-dfu_and_usbserial_combined.hex:
avrdude: input file UNO-dfu_and_usbserial_combined.hex auto detected as Intel Hex
avrdude: input file UNO-dfu_and_usbserial_combined.hex contains 7440 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 0.96s

avrdude: verifying ...
avrdude: 7440 bytes of flash verified
avrdude: reading input file "0xFF"
avrdude: writing lfuse (1 bytes):

Writing |                                                    | 0% 0.00s ***failed; 
Writing | ################################################## | 100% 0.08s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xFF:
avrdude: load data lfuse data from input file 0xFF:
avrdude: input file 0xFF contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.00s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0xff != 0x00
avrdude: verification error; content mismatch

avrdude: safemode: lfuse changed! Was ff, and is now 0
Would you like this fuse to be changed back? [y/n] y
avrdude: stk500_recv(): programmer is not responding
SO Linux - Ubuntu 12.04 - Arduino Uno R3 - IDE 1.0.5

Go Up