Same Sketch. Same Arduino UNO. GPRS Shield V1=OK V2=KO! Why?

Hello,

I need to make communicate an Arduino UNO with a GPRS Shield V1.4 and an Arduino UNO with a Shield V2.0b.

When I apply the same sketch from Seedstudio GPRS Shield V2 wiki page to the V1.4, it works. When I do the same with the V2.0b… I get only some caracters as if there was a port speed problem.

When I try the online AT java system, it talks to the V2.0b with no problem.

What am I doing wrong?

Please help!

Thank you!

For both Shields it starts the same, by those “wrong speed” caracters, but then, only the 1.4 version one continues with “RDY…”
The same sketch is used!

þ€ÿÿÿÿÿÿÿÿ
RDY

+CPIN: NOT INSERTED

+CFUN: 1
at

OK
at

OK

Seeedwino Code:

#include <SoftwareSerial.h>

SoftwareSerial GPRS(7, 8);
unsigned char buffer[64]; // buffer array for data recieve over serial port
int count=0; // counter for buffer array
void setup()
{
GPRS.begin(19200); // the GPRS baud rate
Serial.begin(19200); // the Serial port of Arduino baud rate.
}

void loop()
{
if (GPRS.available()) // if date is comming from softwareserial port ==> data is comming from gprs shield
{
while(GPRS.available()) // reading data into char array
{
buffer[count++]=GPRS.read(); // writing data into array
if(count == 64)break;
}
Serial.write(buffer,count); // if no data transmission ends, write buffer to hardware serial port
clearBufferArray(); // call clearBufferArray function to clear the storaged data from the array
count = 0; // set counter of while loop to zero
}
if (Serial.available()) // if data is available on hardwareserial port ==> data is comming from PC or notebook
GPRS.write(Serial.read()); // write it to the GPRS shield
}
void clearBufferArray() // function to clear buffer array
{
for (int i=0; i<count;i++)
{ buffer[i]=NULL;} // clear all index of array with command NULL
}