Go Down

Topic: GSM Shield, Arduino mega 2560 (Read 973 times) previous topic - next topic

lromagnoli23

Feb 26, 2012, 08:40 pm Last Edit: Feb 26, 2012, 10:06 pm by lromagnoli23 Reason: 1
sto usando il gms shield http://www.open-electronics.org/arduino-gsm-shield per il sim900 che funziona perfettamente su arduino, quando invece provo a farlo parlare con il mega 2560 non ne vuol sapere, abilitando il debug nel file gsm.h vengono fuori queste due risposte

ho usato per entrambi GSM_GPRSLibrary_AT


GSM Shield testing. (mega)
DB:DIFF RESP
DB:DIFF RESP
DB:DIFF RESP
ERROR: SIM900 doesn't answer. Check power and serial pins in GSM.h


GSM Shield testing. (uno)
DB:CORRECT BR
status=READY
OK

il mio shield usa i pin 4/5 e 8/9 se ho letto bene l'header file quindi ci deve essere qualche problema nella diversità tra uno e mega2560 in questi pin, continuo a fare ricerche ma se qualcuno mi sa indirizzare.. sarò grato!

grazie
Luigi
---------
pensandoci forse dipende proprio dai pin 8 e 9 sull'uno e sul mega 2560 sono settati di default in modo diverso? cerco la documentazione......


lromagnoli23

#1
Feb 27, 2012, 02:18 pm Last Edit: Feb 27, 2012, 02:20 pm by lromagnoli23 Reason: 1
un pò di news ho visto come funziona la libreria che comanda lo shield GSm ed utilizza i pin 4 e 5 per l'emulazione della seriale con la libreria SoftwareSerial.h da quello che ho capito potrei avere sul mega un problema di interrupt infatti nella librerie che si scaricano da http://code.google.com/p/gsm-shield-arduino/

SoftwareSerial _cell;  
#define _GSM_TXPIN_ 4
#define _GSM_RXPIN_ 5 -

GSM::GSM():_cell(_GSM_TXPIN_,_GSM_RXPIN_),_tf(_cell, 10),_status(IDLE){;


spulciando le limitazioni della SoftwareSerial

The library has the following known limitations:

   If using multiple software serial ports, only one can receive data at a time.
   Not all pins on the Mega and Mega 2560 support change interrupts, so only the following can be used for RX: 10, 11, 12, 13, 50, 51, 52, 53, 62, 63, 64, 65, 66, 67, 68, 69
quindi credo che per questo lo scketch non funziona...
ora si aprono due possibilità (non posso fare i test quindi ne parlo con voi, ci lavoro nel pomeriggio) spostare i pin GSM RX in un pin della mega che supporta gli interrupt (pensate che funzionerà ?)
oppure dato che la mega2560 ha un sacco di seriali hardware usare una di queste, sarebbe più sensato e andrei anche più veloce però perdo tutte le funzionalità delle libreria che corrispondono alla mia scheda http://store.open-electronics.org/Arduino_GSM_GPRS_shield e dovrei gestire tutto a mano con i comandi AT...

Sto condividendo con voi i miei pensieri e le mie analisi, sarei ben felice se qualcuno di voi mi dicesse che ho scritto un mucchio di baggianate e mi dicesse a me funziona cosi oppure non hai capito si fa cosi... Se vi vengono in mente strade che non ho percorso .. idem.. insomma sono un pò disperato e ieri per cercare di capirci qualcosa ho dormito poco.. quindi potrei essere anche molto rimba.. perdonatemi e se vi vengono idee valide.. sono decisamente le benvenute...

Grazie
Luigi


OpenElectronics

Tutto giusto.
Col mega la newsoftserial non funziona.
Tra l'altro ci sono problemi anche con l'IDE 1.0 (la newsoftserial non va...) già comunque risolti. Se scarichi l'ultima versione della libreria GSM trovi funzionalità anche GPRS.
per poter utilizzare la GSM/GPRS shield col mega ti consiglio di spostare i pin sulla seriale hardware.
Le modifiche non sono impossibili. Se fai riferimento alla libreria sviluppata per il TiDiGino trovi subito cosa va modificato.
La libreria le telecontrollo GSM basato su Arduino la trovi in google code

http://www.open-electronics.org

lromagnoli23

Grazie per le info ho riadattato la libreria del il TdGino e ora il mio modulo gms... è online!

Mi dai una spiegazione tecnica per cosa vengono usati i due pin   GSM_ON e GSM_RESET ?

Grazie di tutto

Luigi


OpenElectronics

I pin vengono utilizzati per accendere il modulo.
Vengono gestiti solamente all'avvio, una volta che il modulo è online non sono più utilizzati.

http://www.open-electronics.org

lromagnoli23

Il modulo funziona perfettamente grazie ai tuoi consigli, ho notato una cosa strana quando lo shield gsm passa dallo stato di normale connessione alla rete ad una qualsiasi attivita' es invio sms o ricezione di una telefonata gli altri shield sembrano ad avere problemi quello Ethernet perde connettivita' ed i sensorii di umidità e temperatura sballano i valori credo che la causa sia il maggiore assorbimento hai qualche dritta da darmi? Non ho trovato le specifiche di assorbimento di quanti ampere può aver bisogno?


Grazie

OpenElectronics

Il modulo GSM in sè non assorbe molto, ma ha dei picchi quando accede alla rete o quando c'è comunque un'attività GSM.
E' da capire comunque se si tratta di un problema di assorbimento o invece un problema di disturbi.
Intanto ti consiglio di alimentare Arduino con un 9÷12V e almeno 1A.
Eventualmente utilizza l'antenna posizionandola lontana dalla scheda


http://www.open-electronics.org

Go Up