GPRS Shield v2.0 (reset) Baud Rate Serial

I have been working with my new GPRS board for Arduino. But now I’m stuck.

I had some problems with my Serial Data, so I tried changing the baud rate with AT commands (AT+IPR=[number]). Without success, and now I am not able to change it back to the default (AT+IPR=19200, that was working before).

I tried changing it with SSCOM3.2, but it’s showing me “) )I!!$”, even if i select the right settings in the interface.
I attached a screenshot.

Also the ‘AT Command Tester’-tool is not able to connect. I tried all rates, on the correct port.

Help? How can I change, or reset to factory defaults.

Sander, The Netherlands, “Pardon my English”
19200.png

Maybe you can refer to this topic: viewtopic.php?f=23&t=4117&p=15424&hilit=GPRS+BAUD+RATE#p15424

Just have a try.Good luck
Jacket

Jacket. Thanks for your quick reply.

I looked at the post you suggested, tried all the different baud rates. But still no luck.
In the monitor I’m seeing different text by different rates, but none of them are readable (by human).

Just to be sure. I did this:

  • Open *.ino
  • Set baud rate to (eg. 1200) for GSM, 19200 for arduino.
  • upload to ardino (uno).
  • look in monitor (with 19200 baud, no hardware restart…) with command “AT”
  • close serial monitor
  • try next rate for GSM, still 19200 for arduino. Upload, etc.

Something I missed?

After many, many extra test I have success at last.

This it what I did after reading (all) post about board.

  1. Used this code on Arduino One:

[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(9600); // the GPRS baud rate
Serial.begin(9600); // 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
}
[/code]

  1. Connected to SSCOM, after reset hardware. (9600-8-1) See image
  2. First Command ‘A’ --> A
  3. AT --> OK
  4. AT+IPR=9600 --> OK
  5. All is working. Happy

Why is working?
Not sure. Was almost giving up. But one last try in 9600 baudrate, because I checked COM4 port in Windows. (Not sure if this was the problem).
And, I tried the reset factory setting code in this forum, although this code was for WIFI board (but also suggested by Jacket).

Thanks for help, Sander.
COM4_Screen.png
9600 GPRS.png

One more difference: I used an other USB port. USB 2.0. Might have been testing only on USB 3.0 before (but not sure anymore because of many tests I have done).

If you have set the baud rate of GPRS , like 9600, you should better set the baud rate of Serial port to 9600. If i have set the baud rate of GPRS to a low level, GPRS can’t get complete information if i still use 19200 serial port.

Jacket