Problem with programming GPS and GPRS shield to work together


hello,
i'v ordered gprs , gps shield arduino uno board.
i use them building simple gps tracking device take position , send web application periodically.

however, i've tested both of shields seperately see if work arduino uno expected. , do.
i gps coordinates (parsed tinygps) , managed send simple sms message phone gprs shield.

but problem when combined shields @ same time.
i believe problem in software serial baud rate. gprs shield use requires 19200 baud rate while gps works @ 9600.
as i'm new arduino i'm doing stupid mistake because i've never worked more software serials opened @ same time.

so, here code. when upload board i'm able receive , see gps coordinates @ 9600 i'm not able send sms message. hope can tell me problem , what's best way fix it.

thank much


code: [select]
#include <softwareserial.h>
#include <tinygps.h>

// create instance of tinygps object
tinygps gps;

void getgps(tinygps &gps);


softwareserial myserial(7, 8);
void setup()
{
myserial.begin(19200);               // gprs baud rate  
serial.begin(9600);    
delay(500);
}
void loop()
{
 byte a;

 if (serial.available()) {
  = serial.read();
 
  if (gps.encode(a)) {
    getgps(gps);
  }
 
  if (a=='send') {
    sendtextmessage();
  }
 }

if (myserial.available()) {
  serial.write(myserial.read());
}
}

void getgps(tinygps &gps) {
 long latitude, longitude;
 gps.get_position(&latitude, &longitude);
 serial.print("lat: ");
 serial.println(latitude);  
 serial.print("lon: ");
 serial.println(longitude);
}

void sendtextmessage()
{
myserial.print("at+cmgf=1\r");    //because want send sms in text mode
delay(100);
myserial.println("at + cmgs = \"+385xxxxxxxxx\"");//send sms message, careful need add country code before cellphone number
delay(100);
myserial.println("a test message!");//the content of message
delay(100);
myserial.println((char)26);//the ascii code of ctrl+z 26
delay(100);
myserial.println();
}

serial works 1 device.

if gps , gprs both use serial communications,   then need 2 actual or virtual serial interfaces communicate them.

you need check whether possible software serial,    , have worry pin conflicts if stacking boards.


Arduino Forum > Using Arduino > Programming Questions > Problem with programming GPS and GPRS shield to work together


arduino

Comments

Popular posts from this blog

VIDIOC_S_FMT error 16, Device or resource busy - Raspberry Pi Forums

using a laptop skeleton to build a pi laptop - Raspberry Pi Forums

Forum for Joomla? - Joomla! Forum - community, help and support