[WIN] Aggiornam. compilatore IDE 0022-0023-1.0 all'ULTIMA VERSIONE ATMEL

astrobeed:

leo72:
In un vecchio post tu specificasti meglio questa cosa. Le vecchie versioni di avr-gcc distribuite con l'IDE versione Windows hanno il limite a 64 KB di Flash.

Dai test che ho fatto la versione 4.3.2 di avr gcc compila sketch fino a 128kbyte di flash, ovvero 64 kword, senza problemi, mentre se ci sono dei dati posti nella flash oltre i 64 k o il programma va oltre le 65word ci sono problemi del tipo software in crash, autoreset, dati alterati etc.
Il bug dei dati posti oltre 64k è una issue ufficiale, i 128k sono un limite di quella versione del compilatore perché probabilmente alla data del suo rilascio non esistevano AVR 8 bit con più di 128k, non ho verificato le date, ma non credo di sbagliarmi.

Bene, quindi io avendo la 4.3.5 compilo senza problemi sketch che possono occupare tutta la memoria di un 1284. Ottimo a sapersi.
Se qualcuno ha bisogno, il service di compilazione è aperto a tutti :wink:

Ho fatto in modo che ci sia il -F fisso, e che non ti cacci fuori in caso di signature non combaciante.
credo che come ho detto prima, questo avrdude programmi ciecamente qualsiasi cosa sul socket quindi occhio!.
Questa era solo una prova per vedere se il problema è aggirabile, nulla di definitivo.
Adesso potrei pensare di aggiungere un flag (opzionale) per l'upload cieco.

BrainBooster:
Ho fatto in modo che ci sia il -F fisso, e che non ti cacci fuori in caso di signature non combaciante.
credo che come ho detto prima, questo avrdude programmi ciecamente qualsiasi cosa lul socket quindi occhio!.
Questa era solo una prova per vedere se il problema è aggirabile, nulla di definitivo.
Adesso potrei pensare di aggiungere un flag (opzionale) per l'upload cieco.

Va bene, lo conservo come AVRDUDE_programma_morti, se fai qualcosa di più efficiente fammi sapere :wink:

Bella idea! :slight_smile: spero che torni utile per resuscitarei morti.
Anche così com'è, se usato con criterio e con tutte le prudenze del caso , và bene :wink:

BrainBooster:
Bella idea! :slight_smile: spero che torni utile per resuscitarei morti.
Anche così com'è, se usato con criterio e con tutte le prudenze del caso , và bene :wink:

Sì, infatti ho messo un blink su tre led su questo 2313 che avevo conservato per "usi futuri" e funziona tranquillamente in stand-alone, col mio programmatore gli imposto i fuse che voglio e questo micro è prontissimo per finire nel primo progetto utile. Grazie!

bel lavoro BB

grazie ad Astro e Leo per gli approfondimenti sui limiti di avrgcc

Mi sto piegando dalle risate!! :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes:

Ci siamo quasi, per la prima volta sono riuscito a compilare senza errori, e con eseguibile funzionante, MultiWii 1.9 con la toolchain Atmel.
MultiWii ha la caratteristica di accedere direttamente ai registri macchina scavalcando Wiring, è un buon banco di prova per la toolchain.

Io ho appena finito di ricompilare avrdude 5.11.1 su windoows e gli ho aggiunto una funzione in più.
Adesso è possibile lanciarlo attivando il flag "-R" che sta per "resurrect".
Con l'opzione -R è possibile attivare l'opzione resurrect che permette ad avrdude di programmare (su richiesta) anche i micro con la signature danneggiata ma ancora funzionanti, attenzione, non ho provato ma credo che con -R avrdude programmi anche in caso di micro sbagliato, quindi spero che quelli che lo useranno sapranno quello che stanno facendo :wink:
in seguito vedrò se è possibile implementare l'uso del -R anche dall'ide di arduino magari modificando le upload options :wink:

PaoloP:

[quote author=Michele Menniti link=topic=96976.msg729618#msg729618 date=1332089322]

BrainBooster:
@Menniti lascia il resto così com'è , copia solo l'eseguibile

Non funziona è si è pure incazzato con te :fearful:

 Yikes!  Invalid device signature.

Double check connections and try again, BB!



Giuro che quel BB non l'ho scritto io ma è uscito da solo :cold_sweat:

Mi sto piegando dalle risate!! :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes: :stuck_out_tongue_closed_eyes:
[/quote]
XD

BrainBooster:
Io ho appena finito di ricompilare avrdude 5.11.1 su windoows e gli ho aggiunto una funzione in più.
Adesso è possibile lanciarlo attivando il flag "-R" che sta per "resurrect".

L'ideale sarebbe che in caso di signature 0xffffff fa l'override da solo, scrivendo comunque una warning, così non c'è il rischio di programmare un micro diverso dal previsto, cosa che potrebbe brickarlo.

BrainBooster:
Io ho appena finito di ricompilare avrdude 5.11.1 su windoows e gli ho aggiunto una funzione in più.
Adesso è possibile lanciarlo attivando il flag "-R" che sta per "resurrect".
Con l'opzione -R è possibile attivare l'opzione resurrect che permette ad avrdude di programmare (su richiesta) anche i micro con la signature danneggiata ma ancora funzionanti, attenzione, non ho provato ma credo che con -R avrdude programmi anche in caso di micro sbagliato, quindi spero che quelli che lo useranno sapranno quello che stanno facendo :wink:
in seguito vedrò se è possibile implementare l'uso del -R anche dall'ide di arduino magari modificando le upload options :wink:

Quello che devi fare fallo subito :smiley: (non so se conosci l'origine di questa frase....); se metti mano all'IDE però sappi che dovresti farlo sia sulla 0022/3 che sulla 1.0.

astrobeed:
Ci siamo quasi, per la prima volta sono riuscito a compilare senza errori, e con eseguibile funzionante, MultiWii 1.9 con la toolchain Atmel.
MultiWii ha la caratteristica di accedere direttamente ai registri macchina scavalcando Wiring, è un buon banco di prova per la toolchain.

Ottimo! quindi ora siamo in trepida attesa XD

Se non vengono fuori altri problemi mi sa tanto che già domani metto online i file modificati e la procedura.

@astro ma il semplice -F non funziona, invece -R lo richiami come il -F ma funge :grin:
ho aggiornato anche il usage con la nuova opzione ed il relativo warning. (gli automatismi non mi piacciono, perferisco che data la pericolosità dalla cosa, l'utente debba richiamarla volontariamente e manualmente).

[quote author=Michele Menniti link=topic=96976.msg729806#msg729806 date=1332098231]se metti mano all'IDE però sappi che dovresti farlo sia sulla 0022/3 che sulla 1.0.
[/quote]
Voto per la 1.0.

PaoloP:

[quote author=Michele Menniti link=topic=96976.msg729806#msg729806 date=1332098231]se metti mano all'IDE però sappi che dovresti farlo sia sulla 0022/3 che sulla 1.0.

Voto per la 1.0.
[/quote]
Paolo, dove lo hai visto questo referendum o sondaggio? :fearful: questo è il nostro male, uno si mette a disposizione gratuitamente per il bene della comunità e subito spuntano i paletti dei propri interessi personali. Fammi indovinare, scommetto che stai usando la 1.0 per le tue cose :stuck_out_tongue:

Dai, domani metto il link per scaricare avrdude 5.11.1 e se ci riesco vi dico come modificare il file preferences.txt per attivare la funzione -R in caso serva (si spera mai) :slight_smile:

Paolo, dove lo hai visto questo referendum o sondaggio? :fearful: questo è il nostro male, uno si mette a disposizione gratuitamente per il bene della comunità e subito spuntano i paletti dei propri interessi personali. Fammi indovinare, scommetto che stai usando la 1.0 per le tue cose :stuck_out_tongue:
[/quote]
Si uso la 1.0 e tutto quello che ho fatto fino adesso, anche se veramente poco :cold_sweat:, è tutto condiviso nel forum. :stuck_out_tongue: XD

commento generale..

Arduino 1.0 è la piattaforma su cui lavorare. Fare migliorie sulla 22/23 è tempo perso perché va in obsolescenza, non la supportiamo più e non sarà più compatibile con tutti i prodotti nuovi arduino che escono ora (per esempio la Leonardo)

m