Go Down

Topic: Arduino GSM Shield M10 programming or AT Commands (Read 2800 times) previous topic - next topic

Capt_Rhizz

Hey everyone,

My question is fairly simple. I have just got the GSM shield and have to yet to program it. But rather than programming it for a certain tasks can it be used like an out of the box Cell modem?

I have played with one particular cell modem a bit. MTC C2 cell modem by Multitech. In case any one is familiar with them. And when I was playing with it, I simply plugged it in usb and opened up a serial application like Putty. From there I could just use the AT commands directly.

Is there something similar I can do?

If not, perhaps someone could point me in the right direction to understanding this module. I have started reading the manual and saw the list of commands as well as specs. Although, I want to learn the hardware level design like the arduino. I am aware of how to hardcode the Arduino mega, but have no idea of where to start or how to go about it with the GSM shield. I understand that arduino has made that not necessary(built in commands), but I would love to learn the hard ware level as well.


Any help is appreciated!

-Rhizz

dannable

You can. Just load a Serial Relay program into the Arduino which takes the input from Serial and sends it to the modem, and vice versa.

Capt_Rhizz

#2
Nov 12, 2014, 05:19 pm Last Edit: Nov 13, 2014, 09:25 am by Capt_Rhizz
Problem Solved!

Code: [Select]

/*
 
  This sketch is the most basic way to communicate with the Arduino
  GSM Shield.  Upload the sketch and use Cool Term to send AT Commands
  directly to the GSM Module. 
 
  View Quectel M10 AT Command Set:
  http://arduino.cc/en/uploads/Main/Quectel_M10_AT_commands.pdf
 
*/

#include <SoftwareSerial.h>

SoftwareSerial mySerial(10, 3);

char inChar = 0;

void setup() 
{
  Serial.begin(9600);
  Serial.println("Device ready");
  // set the data rate for the SoftwareSerial port
  mySerial.begin(9600);
}


void loop() // run over and over
{
  if (mySerial.available()){
    inChar = mySerial.read();
    Serial.write(inChar);
    delay(20);
    }
   
  if (Serial.available()>0){
    mySerial.write(Serial.read());
  }
}


Notice in this code the very minor difference:
Code: [Select]

***SoftwareSerial mySerial(10, 3);***// for mega 2560

vs
Code: [Select]

***SoftwareSerial mySerial(2, 3);***


Found a great resource for anyone just wanting to use AT commands here:
https://itp.nyu.edu/classes/towers-spring2014/labs-how-to/sending-at-commands

So now that that works, now I need to figure out why I cant communicate with this darn thing using the GSM network. Perhaps for sketches like send text I need to go into the the header files and change some things around? I thought the compiler would handle this for us though.

**Reference to another thread I have going**:
http://forum.arduino.cc/index.php?PHPSESSID=tat2afi0va3e0athfc7e9c2385&topic=278419.0

Anyone want some karma?

//////edit///////////////
There is clearly a lot of unanswered questions going on for the gsm threads at this point in time. Just from searching around on google. To say the least, all modem issues were user error for me. Primarily knowing the subtle details or right direction goes a long way. But... PROBLEM SOLVED!

Go Up