Blogroll

Powered by Blogger.

Thursday, 8 May 2014

AT+CSQ - AT Command to Get the Signal Quality Report in GSM Engine

by realfinetime  |  in TTL at  02:24

To get complete AT Command tutorial, click on this link.

If we want to get the Signal Quality Report of SIMCOM GSM Engine, AT+CSQ command is used. LIke other AT commands it can also be used as a Test Command and an Execution Command.GSM Modem I used is given in this page

Complete the circuit as shown in following figure.



 To get a clear idea about the circuit, refer the following circuits also.




After completing the circuit, run the test command on the GSM Modem.

Test Command - AT+CSQ=?

Upload the following program to your Arduino board to run the test command. While uploading the program, either power off the Modem or disconnect the pins connected to the RX and TX pins of Arduino. After uploading the program , reconnect the disconnected pins to the Arduino board. 



void setup() 
{

  Serial.begin(2400);
  Serial.write("AT+CMGF=1\r");           //set GSM to text mode
  delay(1500);
    
  Serial.write("AT+CSQ=?\r");             //Test Command for Signal Quality Report
  while(1)
  {
    if(Serial.available())
    {
      Serial.write(Serial.read());  
    }   
  }
}

void loop() 
{

}



Output of the above program is given below.

+CSQ: (0-31,99),(0-7,99)
0-31,99  indicates the list of supported rssis
0-7,99    indicates the list of supported bers
 
      rssi -  received signal strength indication
      ber  - channel bit error rate.

Parameters
     rssi
         0              -115 dBm or less
         1              -111 dBm
         2...30       -110... -54 dBm
         31            -52 dBm or greater
         99            not known or not detectable

     ber
         0...7    as RxQual values. RxQual to ber conversion is given in the following table.
         99       not known or not detectable

Execution Command - AT+CSQ

Upload the following program to your Arduino board to run the execution command. While uploading the program, either power off the Modem or disconnect the pins connected to the RX and TX pins of Arduino. After uploading the program , reconnect the disconnected pins to the Arduino board. 


void setup() 
{

  Serial.begin(2400);
  Serial.write("AT+CMGF=1\r");    //set GSM to text mode
  delay(1500);
    
  Serial.write("AT+CSQ\r");           //Test Command for Signal Quality Report
  while(1)
  {
    if(Serial.available())
    {
      Serial.write(Serial.read());  
    }   
  }
}

void loop() 
{
}


Output of the above program is given below.

+CSQ: 10,0
From the above output, we can conclude that rssi value is 10 and ber value is 0. That is ber is less than .2%.

4 comments:

  1. Hi, my name is marlin. Good article, this is very interesting and can increase my knowledge. thank you for sharing. always success

    Arduino Tutorial For Begginers


    Arduino Uno Project For Beginners


    How To Reset Arduino Uno

    ReplyDelete
  2. hi can i ask why im having this output
    xxxxx⸮⸮xxxxx⸮⸮xxxxx⸮⸮ thank ypu

    ReplyDelete
  3. i am also getting the same output; that is, xxxxx⸮⸮xxxxx⸮⸮xxxxx⸮⸮

    ReplyDelete
    Replies
    1. Make sure you have the baud rate set to 115200 baud

      Delete

IMPORTANT NOTICE

All the circuits, published in this blog is only after testing and getting proper results in my private lab. When you try these circuits, you should check the supply voltage, polarity of components, presence of childrens nearby and shorts in the circuits. This website will not be responsible for any harm happened to you or your components caused by your carelessness.

For More Electronic Tips

Blog Archive

Proudly Powered by Blogger.