Errori durante compilazione con IDE 1.0

Ciao ragazzi, ho bisogno di un vostro aiuto.
Causa mancanza cronica di tempo libero =( ho ripreso un progetto iniziato un pò di tempo fa ( si tratta di un sistema per controllare i consumi elettrici di casa ed in grado di avvisarmi quando ci si avvicina alla massima corrente prelevabile ) e visto che era disponibile l'IDE 1.0 (ero fermo alla 022) ho deciso di provarla, ho letto le note di versione e ho anche aggiunto il file WProgram.h che rimanda alla nuova libreria Arduino.h come consigliato nel forum.

Bene, a questo punto provo a ricompilare lo sketch e mi caccia fuori una serie di errori (inutile dirvi che se lo compilo con la 022 funziona tutto regolarmente).
Da quello che ho capito sembra che sia incriminata la libreria DS1307.h in quanto non trova il file WConstant.h e poi l'istruzione string_ser = string_ser.trim(); che dal reference sembra scritta correttamente ( con la 022 non da errore ).

Di seguito vi riporto il log dell'IDE e lo Sketch.

In file included from MonDuino.cpp:10:
D:\Arduino-1.0\libraries\DS1307/DS1307.h:12:24: error: WConstants.h: No such file or directory
In file included from MonDuino.cpp:10:
D:\Arduino-1.0\libraries\DS1307/DS1307.h:49: error: 'boolean' has not been declared
D:\Arduino-1.0\libraries\DS1307/DS1307.h:50: error: 'boolean' has not been declared
D:\Arduino-1.0\libraries\DS1307/DS1307.h:57: error: 'byte' does not name a type
MonDuino.cpp: In function 'void loop()':
MonDuino:69: error: no match for 'operator=' in 'string_ser = string_ser.String::trim()'
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:83: note: candidates are: String& String::operator=(const String&)
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:84: note:                 String& String::operator=(const char*)
MonDuino.cpp: In function 'void Read_Ser()':
MonDuino:306: error: no match for 'operator=' in 'string_ser = string_ser.String::trim()'
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:83: note: candidates are: String& String::operator=(const String&)
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:84: note:                 String& String::operator=(const char*)

Vi ringrazio anticipatamente e non fatevi scrupolo a chiedermi ulteriori info.

Ciao a tutti.

MonDuino.ino (10.5 KB)

Modifica anche il file DS1307.h, probabilmente anche lui carica la lib standard di Arduino e non trovandola dà quell'errore.

Consiglio comunque a tutti quelli che usano librerie di terze parti di aspettare a fare il passaggio alla 1.0. La 0022 (ma anche la 0023) va più che bene per tutti gli usi, la 1.0 è più una questione "tecnica" che altro: l'introduzione del prefisso .ino è dato dal fatto che .pde appartiene anche ad un altro software (così disse Banzi tempo fa). Inoltre introduce il supporto per schede ancora non presenti sul mercato (DUE, Leonardo ecc...).

nel fiel ds1307.h cambia
WConstants.h
in
arduino.h (sperando che ora si chiami così!)

OT: come attui il controllo dei carichi? Con sensori ad effetto di Hall ad anello?

Ciao ragazzi e grazie per il vostro aiuto, allora ho fatto la stessa cosa consigliata per la libreria WProgram.h cioè ho creato un file WConstants.h che contiene #include <Arduino.h> e sembra funzionare, cioè non mi da più l'errore precedente, però continua a darmi questi errori :

MonDuino.cpp: In function 'void loop()':
MonDuino:69: error: no match for 'operator=' in 'string_ser = string_ser.String::trim()'
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:83: note: candidates are: String& String::operator=(const String&)
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:84: note:                 String& String::operator=(const char*)
MonDuino.cpp: In function 'void Read_Ser()':
MonDuino:306: error: no match for 'operator=' in 'string_ser = string_ser.String::trim()'
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:83: note: candidates are: String& String::operator=(const String&)
D:\Arduino-1.0\hardware\arduino\cores\arduino/WString.h:84: note:                 String& String::operator=(const char*)

che sembra relativo all'istruzione string_ser = string_ser.trim(); , dove sbaglio ?

Ciao e grazie ancora.

BaBBuino:
OT: come attui il controllo dei carichi? Con sensori ad effetto di Hall ad anello?

Ciao , per la corrente utilizzo un CT (trasformatore di corrente) come questo http://www.seeedstudio.com/depot/noninvasive-ac-current-sensor-30a-max-p-519.html?cPath=144_154 , per la tensione un semplice trasformatore 6/220 volt entrambi collegati a due raddrizzatori ideali con LM358 con le uscite connesse a a due pin analogici di Arduino.

il sistema sembra funzionare abbastanza bene, di seguito una foto di quando realizzai la parte che misura la corrente.

Ciao.

non devio fare

stringa = stringa.trim();

ma solo

stringa.trim();

che baggainata, ora se fai il primo metodo lo sketch funziona solo sull'ide < 1.0, e la seconda solo sull'IDE > 1.0.... questa è una rottura di compatibilità mica da ridere, e non vedo motivi logici per cui farla.

lesto:
non devio fare

stringa = stringa.trim();

ma solo

stringa.trim();

che baggainata, ora se fai il primo metodo lo sketch funziona solo sull'ide < 1.0, e la seconda solo sull'IDE > 1.0.... questa è una rottura di compatibilità mica da ridere, e non vedo motivi logici per cui farla.

Grazie lesto, appena rientro in possesso del mio pc faccio una prova, però che diamine capisco che i prodotti devono essere migliorati però o si mantiene una retrocompatibilità o si forniscono tutte le info per risolvere i vari problemi , la reference riporta ancora il metodo usato fino alla 022, è un pò come se a Win 7 zio Bill avesse lasciato ancora l' Help di XP.

Ciao e grazie ancora.

Ho testato IDE 1.0 e sono incappato in diversi errori
Cercando in rete ho trovato una discussione sulle modifiche da fare, ho risolto diversi problemi ma non tutti
Questo è il link

thanks

Ciao lambon grazie per il suggerimento.