Measuring signal strength of EVDO / 3G network from USB modems

If you are like me, you will constantly have the itch to get most range for your portable USB modem so that you can enjoy maximum speed, or so.All types of modems actually supports a set of commands categorized as AT Commands ( Also known as Hayes command set ).

Windows

For running AT commands in Windows, you will need HyperTerminal , which is supplied along with Windows XP . But not with Windows Vista and  7 unfortunately. However, you can find it from the XP installation under the System32 folder. It will work  just as good in Windows 7/Vista.

Or else , you can go for an open source implementation named : TeraTerm .

HyperTerminal

Once you have obtained a copy of HyperTerminal , proceed with the following steps :

  1. Start HyperTerminal .
  2. In the new connection window, Type in any name and click OK.image
  3. Select the COM port of your modem . (Try with each port for the step5 to show OK  if you aren’t sure which one to select ) .image
  4. Click Cancel for the COMxx Properties window, No need to bother with any of those settings.
  5. It should be now connected to the COM port. If it’s connected , Type in “AT” and hit ENTER key. You won’t be able to see what you typed but you should be getting an OK as reply. This indicates that the COM port is responding and is valid.
  6. Now that the COM port is responding, You can go ahead with the Signal Check. For that type “AT+CSQ” and hit ENTER key.image
  7. You should be getting a string like (30,99) . If you aren’t getting the string of this format, you have selected wrong COM port or your modem doesn’t support whole AT command set.

TeraTerm

If you are using TeraTerm, You will have a different set of procedures but they are similar .

  1. Start TeraTerm
  2. Select “Serial” Checkbox .image
  3. Select the proper COM port. and press OK. If you are not getting any warnings, then the COM port is valid probably.
  4. It should be now connected to the COM port. If it’s connected , Type in “AT” and hit ENTER key. You won’t be able to see what you typed but you should be getting an OK as reply. This indicates that the COM port is responding and is valid.image
  5. Now that the COM port is responding, You can go ahead with the Signal Check. For that type “AT+CSQ” and hit ENTER key.
  6. You should be getting a string like (30,99) . If you aren’t getting the string of this format, you have selected wrong COM port or your modem doesn’t support whole AT command set.  image

Linux

In linux, the procedure is very straightforward.

  1. Open a terminal  and type
    ls /dev/ttyU*

    This lists all the files created for usb modems representing modem ports.

  2. Open a new terminal tab for each interface. Use
    cat /dev/ttyUSB0
    cat /dev/ttyUSB1

    etc. for the ports listed.  The data interface which you are looking for will be busy and the cat command will fail.

  3. Open another terminal, and issue the AT
    echo "AT^M" > /dev/ttyUSB0

    where ^M is Ctrl-v plus Ctrl-m . and USB0 should be substituted with USB0, USB1 or whichever port you are targeting.

  4. It should return”OK” if the port is responding properly.and it should.
  5. Issue the AT commands
    echo "AT+CSQ ^M" > /dev/ttyUSB0

    for getting the signal power information in the format (xx,99) .

Now , after getting the response in the format (xx,99) . xx wil be a number on a scale of 0 to 31 with 0 being worst. That’s the RSSI  value .For converting it into dBM signal value , you should apply it into formula  -113dBm - (xx X 2) . This will give a value between -113 dBm  and -51 dBm .   -51dBm is the best value.

Here’s a table for easy calculation

RSSI Value Signal Power Meaning

0

-113dBm Very Poor

1

-111dBm

2

-109dBm

3

-107dBm

4

-105dBm

5

-103dBm

6

-101dBm

7

-99dBm

8

-97dBm

9

-95dBm Poor

10

-93dBm

11

-91dBm

12

-89dBm

13

-87dBm

14

-85dBm Average

15

-83dBm

16

-81dBm

17

-79dBm

18

-77dBm

19

-75dBm

20

-73dBm Good

21

-71dBm

22

-69dBm

23

-67dBm

24

-65dBm

25

-63dBm

26

-61dBm Best

27

-59dBm

28

-57dBm

29

-55dBm

30

-53dBm

31

-51dBm Excellent

Notes:

  1. Almost all modems will have two COM ports delivering AT commands, while one of them is for data+status and other one just for status. Use the port for status alone to check signal levels during data transfer.
  2. The modem softwares which comes along with modem will be using the above mentioned status only COM port for showing signal levels, hence you have to quit modem software to use the signal level check during data transfer.
  3. You don’t need an active data connection to check signal levels. Just like cellphones.
  4. I’m running BSNL EVDO . I have personally benefitted from analyzing the signal strength and placing the modem correctly. However, Improvement in signal strength will not be directly proportional to download speed. Several other issues such as network congestion can come into play.

3 thoughts on “Measuring signal strength of EVDO / 3G network from USB modems”

  1. You aren’t measuring “signal quality” that way. You are measuring signal STRENGTH. Big difference. You can have lousy quality even at a good signal strength.

    Signal QUALITY is measured in Ec/Io for CDMA systems.

Leave a Reply