java.util.regex.Patterns Error

Buona sera,
ho trovato sul forum alcuni topic sull'argomento ma non mi sono stati utili.
quando compilo mi si blocca su 1/4 della barra di completamento e mi escono questi errori all'infinito.

at java.util.regex.Pattern$GroupHead.match(Pattern.java:4658)
at java.util.regex.Pattern$Loop.match(Pattern.java:4785)
at java.util.regex.Pattern$GroupTail.match(Pattern.java:4717)
at java.util.regex.Pattern$BranchConn.match(Pattern.java:4568)
at java.util.regex.Pattern$CharProperty.match(Pattern.java:3777)

cosa può scatenare questo problema?
ogni consiglio è ben accetto!

Magari un po' di informazioni ...

... versione del sistema operativo?
... versione dell'IDE?
... installato da .exe o da .zip?
... librerie che includi (links)?

Guglielmo

alessandro-arduino:
cosa può scatenare questo problema?

Per caso stai cercando di compilare qualche vecchio codice (pensato per IDE 1.0.*)? Ad esempio avevo letto in altro topic (che ora non ritrovo) che istruzioni come indexOf() su variabili String dava problemi, ossia se scrivo:

i = miaString.indexOf(','); // miaString è di tipo String ovviamente

sul vecchio IDE non dava errore, ma dà quell'errore in quelli recenti. Basta cambiarla in un più corretto:

i = miaString.indexOf(",");

Quindi credo che se non è questo, ti convenga postare lo sketch che ti dà errore così oltre a vederlo lo proviamo.

EDIT: il post mi sembra fosse questo.

Va bene allora faccio che incollare lo sketch

Non vi metto tutto lo sketch completo perchè le varie Mode_subrotuine che troverete sono solo altre sub-routine con ripetizioni di quella automatica.
sono comunque 600 righe di programma :confused:
grazie infinite achi troverà la pazienza di aiutarmi a far funzionare questo programma, premetto che fino a poche modifiche fa funzionava, ma non saprei dove è il mio errore.

arduino_forum.ino (23.3 KB)

Rispondi alle domande di Gpb altrimenti come ti aiutiamo ??!

alessandro-arduino:
sono comunque 600 righe di programma :confused:

Abbastanza grosso per un UNO, hai verificato l'occupazione effettiva?
Io temo che sia dovuto anche a questo, vedo molte variabili e funzioni, ad esempio alcune variabili costanti sarebbe meglio mettere come semplici #define, e poi non usi F() per le stringhe costanti.
Per ora altro non mi viene in mente, e senza sketch completo non si può neanche provare a compilare (hai provato a vedere se caricandolo su Tinkercad ti dice qualcosa?). Per il resto, devi darci le altre info che ti ha chiesto anche Guglielmo.

qui allego la libreria

SIM908IDE100.zip (37.4 KB)

Per quanto riguarda le domande che mi avete fatto:
sistema operativo: xp professional
versione IDE: 1.0.6
installato da .exe
librerie extra solo quella che ho allegato nel messaggio precedente
arduino usato: arduino MEGA

mentre per quanto riguarda le costanti e le variaibili, avendo preso già fatti alcuni pezzi di programma non saprei quali e in che modo dovrei modificare queste variaibili, inoltre non so proprio cosa sia Tinkercard :confused:
infine ho sentito parlare del registro F() ma non ho mai capito come usarlo.

come avrete capito sono un principiante e continuo a rendermi conto che ho ancora un mondo da scoprire, vi chiedo scusa se alcuni concetti faccio un po' fatica a capirli :confused:

credo di aver risposto a tutto,
grazie

La 1.0.6 è moooolto vecchia, ti consiglio di installare la versione ultima (1.8.4) ma non da exe, scarica lo zip, e lo estrai in una cartella tua, esempio c:\Arduino
Ancora meglio se poi dentro alla cartella così creata crei una sottocartella di nome: portable in questo modo tutto Arduino IDE è dentro a quella cartella c:\Arduino

Per F() devi semplicemente usarlo nelle Serial.print() e println()
Serial.print("ciao"); -> Serial.print( F("ciao") );

Ottime Notizie!
era il software che era troppo vecchio, mettendo quello nuovo tramite zip il problema si è risolto.
Ora veo di mettere a posto tutte le Serial.print con il registro F().
Vi ringrazio tutti,
buona serata,
Alessandro