GSM sheild problems

Hey guys I'm trying to get the Arduino GSM shield to work with a simple mobile 2G card I purchased. I cannot for the life of me connect.

I am using an external power supply with the GSM module since the amperage should help with the connection?

I have been using a variety of pins with this prepaid card but cannot for the life of me figure out which one I need or if there is even one required.

there is not an antenna on the gsm module do I need one?

I have been trying to get the GSMscannetworks example to try to work for the longest time here.



 GSM Scan Networks

 This example prints out the IMEI number of the modem,
 then checks to see if it's connected to a carrier. If so,
 it prints the phone number associated with the card.
 Then it scans for nearby networks and prints out their signal strengths.

 * GSM shield
 * SIM card

 Created 8 Mar 2012
 by Tom Igoe, implemented by Javier Carazo
 Modified 4 Feb 2013
 by Scott Fitzgerald

 This example code is part of the public domain

// libraries
#include <GSM.h>

// PIN Number
#define PINNUMBER 349292001663640

// initialize the library instance
GSM gsmAccess;     // include a 'true' parameter to enable debugging
GSMScanner scannerNetworks;
GSMModem modemTest;

// Save data variables
String IMEI = "";

// serial monitor result messages
String errortext = "ERROR";

void setup() {
  // initialize serial communications and wait for port to open:
  while (!Serial) {
    ; // wait for serial port to connect. Needed for Leonardo only

  Serial.println("GSM networks scanner");

  // connection state
  boolean notConnected = true;

  // Start GSM shield
  // If your SIM has PIN, pass it as a parameter of begin() in quotes
  while (notConnected) {
    if (gsmAccess.begin(PINNUMBER) == GSM_READY) {
      notConnected = false;
    } else {
      Serial.println("Not connected");

  // get modem parameters
  // IMEI, modem unique identifier
  Serial.print("Modem IMEI: ");
  IMEI = modemTest.getIMEI();
  IMEI.replace("\n", "");
  if (IMEI != NULL) {

void loop() {
  // scan for existing networks, displays a list of networks
  Serial.println("Scanning available networks. May take some seconds.");

  // currently connected carrier
  Serial.print("Current carrier: ");

  // returns strength and ber
  // signal strength in 0-31 scale. 31 means power > 51dBm
  // BER is the Bit Error Rate. 0-7 scale. 99=not detectable
  Serial.print("Signal Strength: ");
  Serial.println(" [0-31]");


Is the external power supply also powering the Arduino board? Which Arduino board? A simple schematic would be helpful. Often times, where people use external power, they do not connect the grounds together which causes problem but without a schematic, it is only a guess.