Network Scan - Get Network Environment Quality


Did you know that a unique AT Command can help scanning network environment to have a snapshot of its quality at a given location ?

Network Scan easily help to prevent that due to a bad network environment, a final application presents poor quality of service. Especially for wireless objects that remain in a fix location, where network quality is a key aspect.

By executing AT+NWKSCAN command, you can get detailed or synthetic report of network quality.
Speeding up installation time for an immediate decision on which network to manage the service at a given place. Less than 2 minutes needed, without SIM card inserted to get a result.

Network Scan - Example 1: Detailed command result, for exact network environment visibility. Carriers are sorted by network environment quality.


PLMN:“CARRIER XXX",MCC:123,MNC:45,MeanPower:30,CellNb:8

PLMN:“CARRIER YYY",MCC:123,MNC:67,MeanPower:26,CellNb:6


Network Scan - Example 2: Synthetic command result, with number of surrounding base station and average power. Carriers are sorted by network environment quality.




Network Scan availability:

  • Included with Extended AT Application 1.21, coming with firmware R7.51.
  • Check release notes.


What are your metrics for “quality” :question:

What are your criteria for “suitable” :question:


It is not defining what is the right quality. This is dependent of the end user to define what is the necessary quality to ensure that its application will run proerly at a given location.
The command consist in delivering the parameters that can help the end user to properly select the good carrier to use at a given place.

Take the following network environment example:

A customer need to maximize wireless object connectivity. But carrier doesn’t offer SLA. And all carrier doesn’t have the same price.
So, the technician installing an application in field shall ensure that it will run properly at a given place, and if possible in a minimum of time.
Running the AT+NWKSCAN command, he will get the network environment at the current place.
Result could be:

  • There is a unique cell with good quality on “Carrier A”
  • On “Carrier B”, there are 6 cell with good quality.
  • On “Carrier C”, there are 3 cells with good quality
  • Which carrier to select ?

The decision is up to the end user, and can be influenced by multiple aspect:

  • Carrier price
  • Number of available cell (in case carrier is proceeding to base station maintenance)
  • Average quality

Decision may rely on:

  • RSSI may not be enough. Especially if there is a unique cell, network quality will be seen good with AT+CSQ command. But it will make the wireless object dependent of a unique cell. Is it acceptable that carrier proceed to base station maintenance for hours/days/week ? “Carrier C” could be good enough.
  • An end application would run better with a good bandwidth, so better to select a carrier where there are low bit error rate, so with a maximum of “Qual” parameter equal to “0”, to minimize re-transmission. “Carrier B” will be selected.
  • The unique aspect of the carrier price is applicable. “Carrier A” will be good enough.

In this case, the command is not deciding which carrier is the best, but the command expose the cell environment situation, so the technician, per the company rules, can decide which carrier to use.

Per the kind of parameters used with AT+NWKSCAN, depending of the competencies of the people installing device, it could be easier to manage only the synthetic command. That gives an easier answer to analyze, while the other bring the exact content. The command also sort the result per quality. For this it is a simple algorithm based on number of SUITABLE cell.

SUITABLE is a already a GSM criteria defined in the 3GPP standard which rely on multiple GSM stack algorithm that help a device to know if a cell is potentially usable or not. It is not only the one on which a GSM module is connected to, could be also a neighbor cell.

All the point of AT+NWKSCAN command is to help end user to select a proper carrier to run his end application.
In urban area where there are multiple carriers with multiple cells around, the interest of this will be probably low.
But once you go in rural area, where network coverage is more questionable, it would probably help.


Is this functionality available outside of the Extended AT command application? It would be useful to be able to access this information from within an OpenAT application?




Yes, can do this using Open AT application too. Look up network_scan library sample in OS 6.52 or “ADL Layer 3 Service” in ADL User guide.

Extended AT internally uses network_scan library from OS 6.52 package and network_scan library is based on ADL Layer 3 Service APIs.


Great thanks Sushil. I will have a look.