riscrivere bootloader su già esistente

ciao,
cerco di spiegare il mio problema al meglio.
Possiedo 3 microcontrollori atmega328PU che , non appena li acquistai, caricai il bootloader con la procedura indicata sul sito ufficiale, utilizzando però la versione del software di arduino 0022, che è quella che viene piu consigliata.
caricando il bottloader tanti luccichini dei vari led e tutto filò liscio.
Ultimamente ( è circa un anno che nn adopero questi micocontrollori) riscontro che posso sì caricare il programma su questi microcontrollori però una vota che scollego arduino dalla usb e lo ricollego, il programma caricato non rimane inn memoria.
La mia paura era quella che fosse fottuto l'intero arduino., però poi ho provato a caricare lo stesso programma sul microcontrollore originale che ho trovato nella confezione e invece su quello tutto fila liscio rimandendo in memoria il programma; quindi presumo nn sia un problema dell'intera scheda arduino.
Mi son detto: proviamo a riscrivere il bootloader sul l'atmega, magari si può essere deteriorato ( forse è un idiozioa quella che ho pensato! non so ) però noto che seguendo la stessa procedura con gli stessi collegamenti della volta scorsa mi da il famoso errore 0x00 sync 0x14 e via dicendo.!!1
Stranissimo, non capisco proprio il motivo! eppure è la stessa procedura dell'altra volta. Ho provato a inserire condensatore sul reset come da guida x 'autoreset, ma nulla da fare.
qualcuno ha avuto lo stesso mio problema x caso?
è possibile riscrivere il bootloader su uno caricato precedentemente??
Ogni consiglio è gradito!
ciao! e grazie!!

michele

UN pò di info in più non facevano male, eh!

  1. che bootloader avevi caricato
  2. che bootloader stai scrivendo
  3. che IDE stai usando
  4. che Arduino/programmatore stai usando
  5. come stai eseguendo la procedura
  6. varie ed eventuali che ti potrebbero venire in mente

questa è la procedura che sto eseguendo.
l'ide utilizzata è quella 0022.
sto utilizzando arduino isp come programmatore.

il fatto è che ho capito il problema: omettevo di caricare il codice, adesso lìho fatto :slight_smile:
mi si protrae però il problema iniziale: carico uno skech sul micro gia 'bootloaderato' ( su breadboard)e il programma viene eseguito;
disconnetto arduino, lo ricollego ed è come se avesse perso la memoria, nn succede niente. ho provato col codice basic blink.
ricapitolando, finche resta connesso funziona tutto, una volta disconnesso arduino perde tutti i dati e devo riprogrammarlo di nuovo e lasciarlo collegato se voglio che funzioni il programma. Scomodissima questa cosa se volessi creare un arduino standalone!

Ti do un consiglio: utilizza IDE 1.0.4 e cerca la guida di menniti. È una vera propria bibbia in fatto di programmazione Arduino. Io ho fatto uno stand alone con la sua guida oltre un anno fa ed ad oggi non ha perso mai la programmazione.
Ciao

allora, tutto sembra risolto.
Sono riuscito ad eseguire il bootloader ai miei 3 micro con arduino isp usando la versione 1.0.5 e non la 0022 come precedentemente.
Non so il motivo , forse un conflitto tra le cartelle presenti nel mio pc della versione piu recente dell'ide arduino e quella 0022, fatto stà che adesso il programma caricato resta in memoria e il micro non è piu ''smemorato''. :smiley:
grazie a tutti x i consigli dati!!
ciao!!

Il micro NON può scordarsi il programma in memoria.
L'unica possibilità è che tu abbia a suo tempo programmato un bootloader dell'Arduino 2009 e poi quel chip lo stia usando sulla Uno. Siccome cambiano i chip di interfaccia USB/seriale, il bootloader della 2009 manda in reset la scheda.
Per questo ti avevo chiesto che bootloader avevi messo, per capire se era questo il problema. Ma non mi avevi risposto su questi punti :wink:

La domanda a questo punto: hai provato a riscrivere il bootloader della UNO su quel chip?

sì, :slight_smile: penso proprio che tu abbia spiegato alla perfezione il problema che ho avuto Leo!
Ho 'bootloaderato' il mio micro della UNO con un IDE molto precedente a quella attualmente aggiornata (la 0022) e sicuramente è per il problema che hai detto tu sopra, che una volta scollegato arduino dall'alimentazione e ricollegato , non mi eseguiva il programma inviato.

L'ultima versione disponibile per la UNO è la 1.0.5r2 che rispetto alla 1.0.5 integra un aggiornamento dei driver di Windows (compreso Windows 8.1)
Per Linux e Mac la 1.0.5.

Il problema è noto, ne parlammo al tempo del progetto del mio HV. Il bootloader UNO della 0022 molto spesso crea problemi in configurazione stand-alone. All'epoca risolsi con il bl 2009, ancora oggi funziona. Il problema si è spesso verificato anche su Arduino con micro sostituito. Come avete già verificato si risolve con optiboot 4.0 o successivi, presenti nell'IDE1.01 e seguenti.

Errata corrige:
"nell'IDE 1.0.1 e seguenti."