facciamo chiarezza, con quello che ho scoperto oggi.
Devo ammettere che se non frequentassi da un pò il forum non ne sarei venuto certamente a capo, sopratutto se non avessi saputo dell'optiboot modificato, che si trova quì: http://arduino.cc/forum/index.php?topic=64105.0
allora:
risposta alla 4)
optiboot has problems uploading sketches bigger than about 30 KB
e fin quì ci siamo, diciamo che con un 328P è molto difficile raggiungere i 30KB (il limite sono 32KB)
risposta alla 2)
questo capita se usi il bootloader 2009 sulla UNO. Hai per caso armeggiato con i micro, cambiandoli con altri che avevi in casa o flashando dei bootloader?
non trovo la discussione, ma è legato sempre al fix
optiboot can start sketchs with inconsistent regster configuration side-effects
in pratica (un registro, una varibile? bho, la definirò variabile) R0 viene usata per spegnere il watchdog. Purtroppo questa variabile non è inizializzata all'avvio del boot-loader (cosa che invece era fatta nella versione pre-optiboot), e di conseguenza in rari casi porta al reset infinito del micro.
Questo si può notare dal fatto che il led L continua a lampeggiare. Se invece non lampeggiasse, allora ci si trova di fronte al più raro caso in cui sia l'8u2 da fleshare (non sò perchè).
risposta alla 3)
non ho detto che ttyACM0 NON viene creata, ma che la libreria TXRX (tranne quella inclusa in arduino patchata ad hoc) NON rileva ttyACM0 come seriale, e la scarta a priori; quindi tutti i software basati su questa libreria (processing & java in primis) NON funzionano, salvo utilizzare la libreria inclusa in arduino e non quella scaricabile dal sito (non ho controllato il change-log della versione beta, ma il ticket con la soluzione non risulta processato, quindi da considerare ancora una "ferita" aperta). Posso confermare ciò in virtù del fatto che sostituendo le librerie ora funziona tutto "alla perfezione" (o meglio a baud di 9600 e con 1 secondo tra una trasmissione e l'altra)
risposta alla 1)
effettivamente la procedura che ho trovato è difficoltosa e non abbastanza documentata, ma dal punto di vista HW basta mettere 2 cavi da GND a 2 pin non popolati della board per ottenere di entrare in modalità boot-loader dell'8u2. A questo punto su può uppare lo sketch per il chip, CREDO che l'hex contenuto nell'IDE sia già patchato, ma non ne sono certo.
Nel caso in cui si renda necessario compilarselo, basta un programma aggiuntivo e modificare qualche riga di configurazione.
Questo perchè il firmware dell'8u2, se non erro, è scritto da un altro sito, lo stesso che rende disponibili gli sketch per far rilevare l'8u2 (e di conseguenza l'arduino) come una qualsiasi altra periferica, usando direttamente i driver generici invece di creare un ponte lato macchina tra seriale e periferica virtuale.
CREDO che una discussione come questa fosse da intavolare prima, sinceramente non pensavo che l'UNO fosse così tanto inutilizzabile (basta una Serial.print(), anche ogni 10 secondi, per impallare tutto!), e anzi ora ti supporto pienamente quando dicevi che bisognava mettere il nuovo boot-loader appena questi problemi base erano stati risolti. In oltre anche la pagina "getting started" dovrebbe come minimo menzionare il fatto.
anche il fatto che
Optiboot does not support ArduinoasISP programmer
non aiuta per niente... meno male che affermi:
lo sketch ArduinoISP non funziona se non usi un condensatore anti-autoreset
ciò vuole comuque dire che se non hai un FTDI o un programmatore, puoi cavartela con un secondo arduino (anche UNO)
ahah sarà felice ora menniti che tocca a me andare a chiedere aiuto a lui (o meglio che la sua megaguida mi torni utile :))
scusate il papiro ma voglio essere molto chiaro sull'argomento, che è già incasinato di per sé
edit: per completezza metto pure il link alla guida di menniti, per gli sciagurati che troveranno questa discussione utile: http://arduino.cc/forum/index.php/topic,60789.0.html