Nuovi sviluppi IDE 1.8.x

Lo so, ma la domanda è se questa versione permette questa cosa, non se c'è un modo per farlo :slight_smile:

A partire dal compilatore avr-gcc 4.5.1 il bug relativo alla compilazione di sketch più grandi di 128K è stato risolto.

sì, dovrebbe risolvare, in olte questa è una soluzione ufficiale e " trasparente", ovvero basta aggiornare l'ide, che ha un certo vantaggio rispetto a dover impazzire a settare la tool-chain a manina

Difatti, perché ci sono altri che stanno facendo il lavoro al posto tuo :stuck_out_tongue_closed_eyes:

Ottimo

leo72:
Difatti, perché ci sono altri che stanno facendo il lavoro al posto tuo :stuck_out_tongue_closed_eyes:

anche per fare andare quella non ufficiale ci sono altri che hanno lavorato per farla andare.. eppure lo sbattone me lo faccio lo stesso.

Il vantaggio vero è avere qualcosa di ufficiale e uguale per tutti, ovvero errori riproducibili tra tutti :slight_smile:

lesto:
Il vantaggio vero è avere qualcosa di ufficiale e uguale per tutti, ovvero errori riproducibili tra tutti :slight_smile:

Il vantaggio è proprio questo: avere una piattaforma uguale per tutti. In questo modo se scrivo uno sketch so che poi lo potranno compilare tutti. Altrimenti ti ritrovi nel problema di dover fare per il tuo sistema un tipo di codice e poi riadattarlo se hai intenzione di distribuirlo ad altri.

E' stato aggiunto nel file platform.txt il percorso personalizzato per il compilatore.
--> Explicitly define compiler.path in avr/platform.txt · arduino/Arduino@a89f5e6 · GitHub

Non so ancora se possa risolvere il problema avuto con il core tiny al passaggio alla 1.5.x, dove abbiamo dovuto stabilire un percorso per il core.

@Leo
Secondo te risolve il problema che abbiamo incontrato?
(non sto tanto bene e non riesco a ragionare lucidamente)
Mi sa di no perche riguarda il compilatore e non il percorso del core. :sweat_smile:

Aggiunto anche il supporto alla seriale della DUE di diverse configurazioni.
--> Merge branch 'ide-1.5.x_serial_config' of github.com:bluesign2k/Ardui… · arduino/Arduino@f0738fd · GitHub

Anche secondo me non risolve.
Se il compilatore è installato sul sistema, il percorso è nella path dei comandi di sistema quindi dovrebbe essere trovato a prescindere. Casomai potrebbe risultare utile in caso si abbia più di una versione del compilatore, in modo da poter specificare per ogni MCU quale si vuole utilizzare immettendo il suo percorso.

Un altro backimport dalla 1.5.x alla 1.0.x
--> Import WString from 1.5.6 · arduino/Arduino@8a1fffd · GitHub
Questo riguarda le modifiche effettuate sulla classe String.

Non ricordo se ve lo avevo già segnalato
--> Use a union in IPAddress for uint8_t[] <-> uint32_t conversion · arduino/Arduino@3035239 · GitHub

Si sta provvedendo a rimuovere i warnigs dal core.
Questo più recente --> Fixed other trivial warnings in AVR USB core. · arduino/Arduino@f864cdc · GitHub

Inoltre la 1.5.6 con toolchain 3.4.3 (https://github.com/arduino/Arduino/tree/ide-1.5.x-avr-toolchain-gcc-4.8.1) è sempre aggiornata --> Merge branch 'ide-1.5.x' into ide-1.5.x-avr-toolchain-gcc-4.8.1 · arduino/Arduino@e2de88c · GitHub
Peccato che a me in fase di compilazione su Windows dia un fastidioso warning dovuto a CygWin... ]:smiley: ]:smiley:

Ne approfitto per segnalare che stamani ho aggiornato il core 644P/1284P all'IDE 1.5.6-R2, qui il package. Ho sistemato anche un bug che impediva l'upload tramite bootloader (funzionante al 100% su 644P, su 1284P c'è sempre l'incognita dell'upload da seriale che a qualcuno fa e ad altri no).

Grazie Leo.

Sul forum degli sviluppatori stanno testando l'introduzione della "Link Time Optimization".
--> https://groups.google.com/a/arduino.cc/d/msg/developers/21G5w2HbUOg/yhmkVd-gL3UJ

pare abbiano sistemato anche il warning di cgwin o quel che l'è.

In oltre approfitto per avvisare che grazie alla nuova libreria jssc non è più necessario dare i permessi alla cartela /run/lock, in quanto la libreria usa il nuovo sistema di lock di linux... moolto comodo.

Se usate il sistema vecchio (permessi su /run/lock) + il sistema nuovo vi ritrovate con 2 seriali, una che punta al sistema vecchio e una a quello nuovo, funzioneranno entrambe ma è scomodo se usate più arduino

PaoloP:
Inoltre la 1.5.6 con toolchain 3.4.3 (https://github.com/arduino/Arduino/tree/ide-1.5.x-avr-toolchain-gcc-4.8.1) è sempre aggiornata --> Merge branch 'ide-1.5.x' into ide-1.5.x-avr-toolchain-gcc-4.8.1 · arduino/Arduino@e2de88c · GitHub
Peccato che a me in fase di compilazione su Windows dia un fastidioso warning dovuto a CygWin... ]:smiley: ]:smiley:

Ho compilato ora su Mac, nessun problema. Avviata l'IDE, ho provato il famigeratissimo test dell'esempio Ethernet/WebServer. Compilato ma con warning:

In function '__vector_16':
/Users/leonardomiliani/Downloads/Arduino-ide-1.5.x-avr-toolchain-gcc-4.8.1/build/macosx/work/Arduino.app/Contents/Resources/Java/hardware/arduino/avr/cores/arduino/wiring.c:47:1: warning: '_vector_16' appears to be a misspelled signal handler [enabled by default]
 ISR(TIMER0_OVF_vect)
 ^
In function '__vector_18':
/Users/leonardomiliani/Downloads/Arduino-ide-1.5.x-avr-toolchain-gcc-4.8.1/build/macosx/work/Arduino.app/Contents/Resources/Java/hardware/arduino/avr/cores/arduino/HardwareSerial0.cpp:40:3: warning: '_vector_18' appears to be a misspelled signal handler [enabled by default]
   ISR(USART_RX_vect)
   ^
In function '__vector_19':
/Users/leonardomiliani/Downloads/Arduino-ide-1.5.x-avr-toolchain-gcc-4.8.1/build/macosx/work/Arduino.app/Contents/Resources/Java/hardware/arduino/avr/cores/arduino/HardwareSerial0.cpp:59:1: warning: '_vector_19' appears to be a misspelled signal handler [enabled by default]
 ISR(USART_UDRE_vect)
 ^

Lo sketch usa 9.964 byte (30%) dello spazio disponibile per i programmi. Il massimo è 32.256 byte.
Le variabili globali usano 602 byte (29%) di memoria dinamica, lasciando altri 1.446 byte liberi per le variabili locali. Il massimo è 2.048 byte.

Forse con l'ultima versione del compilatore hanno cambiato il nome alla macro della ISR? Boh.

Si Leo, sono gli stessi warnigs segnalati da un altro utente sul forum degli sviluppatori.
Credo che vi porranno presto rimedio. :grin:

@Lesto.
Ho appena scaricato la nigthly build avr-4.8.1 e su Windows XP mi appare il warning del CygWin. =(

PaoloP:
@Lesto.
Ho appena scaricato la nigthly build avr-4.8.1 e su Windows XP mi appare il warning del CygWin. =(

Forse hanno rimediato
--> Setting CYGWIN=nodosfilewarning env variable on windows · arduino/Arduino@63a271e · GitHub
Bisogna verificare con le build di domani

PaoloP:
Nightly builds are here
http://downloads.arduino.cc/arduino-avr-toolchain-nightly-gcc-4.8.1-windows.zip
http://downloads.arduino.cc/arduino-avr-toolchain-nightly-gcc-4.8.1-macosx.zip
http://downloads.arduino.cc/arduino-avr-toolchain-nightly-gcc-4.8.1-linux32.tgz
http://downloads.arduino.cc/arduino-avr-toolchain-nightly-gcc-4.8.1-linux64.tgz

PaoloP:
Si Leo, sono gli stessi warnigs segnalati da un altro utente sul forum degli sviluppatori.
Credo che vi porranno presto rimedio. :grin:

E' un bug di gcc 4.8.1:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59396
Vi porranno rimedio nella versione 4.8.3, perciò si parla di un'altra toolchain... speriamo che la includano però :roll_eyes:

Quello che non mi spiego è che nella descrizione del bug c'è scritto che si presenta nella 4.8.2 mentre non c'è nella 4.8.1 e nella 4.8.3.
Ma la nuova toolchain di ATmel non sta usando gcc 4.8.1? Mi devo essere perso qualcosa.... :sweat_smile:

--> http://distribute.atmel.no/tools/opensource/Atmel-AVR-GNU-Toolchain/3.4.3/#__utma=51109366.1574394391.1397487336.1398355268.1398763533.3&__utmb=51109366.4.10.1398763533&__utmc=51109366&__utmx=-&__utmz=51109366.1398763533.3.3.utmcsr=google

Effettivamente la cosa buffa è che rileggendo la pagina di quel bug c'è scritto:
Known to work: 4.8.1, 4.8.3
Known to fail: 4.8.2

Poi un commento dice:

The warning is purely cosmetic.

Quindi sembra che non affligga in nessun modo il codice compilato.

Resta da capire però che cavolo di compilatore c'è in quella build, allora.... la 4.8.1 o la 4.8.2?? Mannaggia ho cancellato la cartella, l'altro giorno.. :zipper_mouth_face: ora mi scarico tutto di nuovo e ricompilo... :roll_eyes: