GSM Board on UNO Woes

Hi all,

I received one of these today and started following the tutorial on my UNO at http://tronixstuff.wordpress.com/2011/01/19/tutorial-arduino-and-gsm-cellular-part-one/

However… I get to the “Starting SM5100B Communication…” part and then nothing happens. I have tried the following

USB power
500mA power into UNO
1 amp power into UNO

I have tried baud rates from 4800 to 128000 on each of the above power supplies. The result is more or less the same. Below I show typical output. What have I done wrong?

Starting SM5100B Communication…
14400
Starting SM5100B Communication…
14400
<0>ÿ<0>ÿ<0>ÿ<0>ÿ Øÿî€ r9ü Ø Ü TÿStarting SM5100B Communication…
19200
!÷!÷!÷!÷ ßÕ K¡)$Starting SM5100B Communication…
19200
Starting SM5100B Communication…
19200
!÷!÷!÷!÷Starting SM5100B Communication…
19200
þStarting SM5100B Communication…
19200
!÷ÿÿStarting SM5100B CommýStarting SM5100B Communication…
19200
ôv“=ÿ $5 ¥ !°5 ¥þStarting SM5100B Communication…
28800
€ô €ô €ô €ôStarting SM5100B Communication…
28800
€ô €ô €ô €ôQ ôSì -–‘!H EŸ­²Í¦”ªõ¬ôˆT ýY ôSì ,–™!H Ÿí²Å¦”ªõ¬õˆ ÅÀ 5þA5þA5þA5þ uþ¼øRÇ@$&qä!ä DÑStarting SM5100B Communication…
38400
Starting SM5100B Communication…
38400
Starting SM5100B Communication…
56000
Starting SM5100B Communication…

Regards,
Evyn

From the page you pointed to: "It will take around fifteen to thirty seconds for the text above to appear in full. What you are being presented with is a log of the GSM module’s actions. "

So, are you waiting a good long time before giving up on the GSM shield?

What makes you think that if it doesn't run at 9600 bps it will run better at other rates?

From the page you pointed to: "Instead, power your project with a high-capacity 5V 2 amp power supply to the 5V and GND pins on your shield."

Have you tried a 2 Amp 5 Volt regulated supply?

I waited 60 seconds for boot, no joy.

I read on another site that 9600 is too slow for this board, so I experimented with no joy.

I did not use the 2 Amp 5 Volt regulated supply, because the board should (according to various reports) boot. The need for more power apparently only comes into play when interacting with the cellular network. At this point, I just want to know if the board works.

"Have you tried a 2 Amp 5 Volt regulated supply?"

And now I have - same results as before.

The article you linked to has a link to "http://littlebirdelectronics.com/products/Cellular-Shield-with-SM5100B.html" which seems to be the SparkFun cellular shield (http://www.sparkfun.com/products/9607). Is that the shield you have?

Both places say that the module is "pre-configured for 9600bps.". You should probably stick with 9600bps unless you are sure it has been reconfigured.

I assume the serial solder jumpers still set to pins 2 and 3.

What SIM card do you have? Are you sure it's good?

Doesn't work on 9600. Sim card is fine.

Tried 2 different 2a power supplies, both into the Uno and into the GSM board. Tried a different sim under all combinations of connecting all 5 of my PSUs to Uno and GSM board. Result it the always the same.

Are you sure the module even works? Here's an easy way to communicate directly with the shield, pretty much bypassing the Arduino. Make sure the shield is set to send Tx and Rx out to pins 2 and 3. Next download the below sketch. It puts pins 0 and 1 (your hardware serial ports) into a high impedance state so what ever you connect to the Rx and Tx lines will go straight to Serial Monitor. Now here's the important thing, using some wire, connect the pin 3(Tx) to pin 1(Tx) and pin 2(Rx) to pin 0(Rx). Open up serial monitor and you'll be communicating directly with the SM5100B. You should see something on the screen while the device is booting up. If it looks like gibberish then you're probably set to the wrong baud rate. Just cycle through the baud rates in serial monitor until you find one that works. You can also control it directly by issuing AT commands from serial monitor.

void setup(){
  pinMode(0,INPUT);
  digitalWrite(0,LOW);
  pinMode(1,INPUT);
  digitalWrite(1,LOW);
}

void loop(){
  while(1);
}

wayneft: Are you sure the module even works? Here's an easy way to communicate directly with the shield, pretty much bypassing the Arduino. Make sure the shield is set to send Tx and Rx out to pins 2 and 3. Next download the below sketch. It puts pins 0 and 1 (your hardware serial ports) into a high impedance state so what ever you connect to the Rx and Tx lines will go straight to Serial Monitor. Now here's the important thing, using some wire, connect the pin 3(Tx) to pin 1(Tx) and pin 2(Rx) to pin 0(Rx). Open up serial monitor and you'll be communicating directly with the SM5100B. You should see something on the screen while the device is booting up. If it looks like gibberish then you're probably set to the wrong baud rate. Just cycle through the baud rates in serial monitor until you find one that works. You can also control it directly by issuing AT commands from serial monitor.

Thanks!

Ah... I think this has revealed something, but I am not sure what. I have been powering the shield while attached to the Uno. However, with Wayne's suggestion I had to disconnect the shield...

Powering the shield alone through 5v and gnd does not work - the shield does not power on. I tried with 4.5 and 6v at 2a.

However, the shield powers on when I use vin and gnd. However, neither the original or Wayne's I/O config and code gives any output to the serial monitor.

evyn: I think this has revealed something, but I am not sure what. I have been powering the shield while attached to the Uno. However, with Wayne's suggestion I had to disconnect the shield...

Powering the shield alone through 5v and gnd does not work - the shield does not power on. I tried with 4.5 and 6v at 2a.

However, the shield powers on when I use vin and gnd.

That makes sense. The schematic of the sparkfun shield shows a built-in 3.8v regulator connected to Vin and nothing connected to 5V. Probably because drawing 2 A from the 5v line would be bad for the Arduino regulator.

The schematic also shows a red LED on the shield that will light when the 3.8v power is good.

johnwasser: That makes sense. The schematic of the sparkfun shield shows a built-in 3.8v regulator connected to Vin and nothing connected to 5V. Probably because drawing 2 A from the 5v line would be bad for the Arduino regulator.

The schematic also shows a red LED on the shield that will light when the 3.8v power is good.

Running the same PSU on the Uno itself, 5v and gnd, and the board runs.

So... am I to conclude that there is some issue with the 5v circuitry on the board? The red led comes on when I use vin, when I attach the board to the Uno, but not when I run power to the 5v and gnd pins.

Well I never said you had to remove the shield from the UNO...it works just fine with it attached.

First thing I would do is remove the SIM card. If there is any question about not supplying enough current and so forth, removing the SIM card will solve that problem. Without a SIM card in the unit the chip will not try and register to the network. This registration process is when the unit draws the most current.

OK, reattached and tried again - only change is I now get characters in the serial monitor again.

I have tried two different sims - on both of them and without a sim at all I get the same trickle of characters…

Starting SM5100B Communication…
ùùÿÿÿ

or sometimes

<0>ÿ<0>ÿ<0>ÿ<0>ÿÄÿÄÿ

To me that looks like an incorrect baud rate. Isn't this the shield that a lot of people have said it's running at 115200 not the 9600 as documented?

Yes. I have tried baud rates from 4800 to 128000, and all that varies is the type of characters I receive, but nothing coherent at any rate.

I thought I remembered reading somewhere problems running NewSoftSerial at 115200. If that is the case that could be causing the problems. If you go back and download the sketch like I mentioned before and cycle through the baud rates, starting at 115200, to see if any of them work. If the baud rate is set to 115200, you can change it to 9600 through AT commands in Serial Monitor.

I did that. No response at any baud rate.

Tried AT+IPR=9600 too... no change.

How do you have the jumpers set on the board?

Which jumpers on which board? (clearly I am no expert here).

If you mean either th jumpers next to the aref pin or the jumpers marked icsp - none of them are set.

They are solder jumpers in the top left corner of the board...next to tx and rx.