Getting Signal Strength


Am using Q2686G.
The firmware version is :: R74_00gg.Q2686G
Application OS :: 06.21
Boot loader version :: V08b0e.

                               I want to detect the signal strength. Now am using "adl_atCmdCreate" to send AT+CSQ.  In the handler am getting  adl_atResponse_t strdata as "OK " only.  But i want the return values too., like "  +CSQ: 11,2 ".  I want the returned 2 arguments. Is there any way to get those?

                       Thank you,


Have a look at the response handler part of the adl_atCmdCreate function.

For Example:

// Send the AT command.
adl_atCmdSend("AT+CSQ", ResponseHandler, "+CSQ", NULL);

// Response Handler Function
bool ResponseHandler(adl_atResponse_t *AT_Response)
ascii str_CSQ[2];
wm_strGetParameterString(str_CSQ, AT_Response->StrData, 1);


Note that AT+CCED can be used to request an unsolicited +CSQ whenever the signal level changes - ie, you don’t have to keep asking for it.

See the AT Commands Manual for details of the command, and the ADL manual for details of handling unsolicited responses…


thank you awneil


Correction: you get an unsolicited +CSQ whenever the signal level changes except when it changes to 99 (ie, unknown or unavailable).


So, if your application needs to know that, you’ll have to think again!



ok. thank you :wink: