Problema con la libreria GSM_TDGINO

Sezione dedicata al telecontrollo GSM TiDiGino
Rispondi
cirowner
Messaggi: 3
Iscritto il: 12/03/2013, 19:17
Home_Page: http://

Problema con la libreria GSM_TDGINO

Messaggio da cirowner » 13/03/2013, 16:49

Quello che sto per scrivere ha dell'assurdo...
sono giorni che sbatto la testa su un problema annoso che tutt'ora faccio fatica a capire...

Sabato scorso mi è arrivato il TiDiGino e subito mi sono messo a sviluppare per creare il mio sketch che leggesse gli sms e li stampasse sul monitor seriale.

Inizialmente sembrava che lo sketch funzionasse, poi tutto ad un tratto ha smesso di stamparmi il numero del mittente :shock:
Allora con calma ho caricato lo sketch di Daniele Denaro (il TiDiGinoMain V1.25) e anche questo presentava lo stesso problema...inizialmente pensavo che il problema fosse mio e ho perso diverse ore andando a riguardarmi il codice...poi ho cominciato a studiare la GSM fornita proprio da voi (Futura) e mettendoci un po' le mani (ho fatto stampare l'intera risposta del comando AT+CMGR) ho scoperto che...la libreria parserizzava male il numero del mittente in quanto si aspettava una risposta che in realtà era diversa! :?

Manuale AT alla mano ho forzato il modulo SIM900 a mandarmi tutti gli header che la libreria si aspettava

Codice: Seleziona tutto

Serial1.println("AT+CSDH=1");
però ancora non funzionava correttamente...cioè a volte (non sempre) il modulo SIM900 mi rispondeva con una response aggiuntiva (+CMT) che in teoria non ci doveva essere :evil:
per cui ho dovuto anche modificare una delle funzioni di inizializzazione della libreria (contenuta in InitSMSMemory()):

ORIGINALE

Codice: Seleziona tutto

SendATCmdWaitResp("AT+CNMI=2,0", 1000, 50, "OK", 2);
MODIFICATA

Codice: Seleziona tutto

SendATCmdWaitResp("AT+CNMI=0,0", 1000, 50, "OK", 2);

Adesso funziona, ma non è possibile che la libreria ufficiale sia buggata...cosa potrebbe essere?

Grazie in anticipo per i vostri consigli!

Rispondi