Changes

no edit summary
Line 8: Line 8:  
Not all modems support cell locking. To find out if your device is compatible, in your device WebUI, go to '''Status → System''' page. Under the '''Internal modem''' section, you'll see the '''Model''' row:<br>
 
Not all modems support cell locking. To find out if your device is compatible, in your device WebUI, go to '''Status → System''' page. Under the '''Internal modem''' section, you'll see the '''Model''' row:<br>
 
[[File:Cell_locking_find_Modem_model_v2.png|border|class=tlt-border]]<br>
 
[[File:Cell_locking_find_Modem_model_v2.png|border|class=tlt-border]]<br>
If the model starts with '''EG or EC''', and '''not SLM or RG''', this feature should work. However to make sure it's supported, command '''''gsmctl -A 'AT+QNWLOCK=?'''''' should '''not''' return '''ERROR''', when ran via [[Command_Line_Interfaces_RutOS#SSH|SSH]] or [[Command_Line_Interfaces_RutOS#CLI_.28WebUI.29|CLI]]. The response should look something like this:<br>
+
If the model starts with '''EG, EC''' ''(Quectel)'' or '''SLM''' ''(Meig)'', and '''not RG''' ''(5G devices)'', this feature should work. However to make sure it's supported, command '''gsmctl -A 'AT+QNWLOCK=?'''' ''(for Quectel modems)'' or '''gsmctl -A 'AT^CELLLOCK=?'''' ''(for Meig modems)'' should return these options when ran via [[Command_Line_Interfaces_RutOS#SSH|SSH]] or [[Command_Line_Interfaces_RutOS#CLI_.28WebUI.29|CLI]]:<br>
 +
===Quectel===
 +
----
 
<pre>
 
<pre>
 
root@Teltonika-RUTX11:~# gsmctl -A 'AT+QNWLOCK=?'
 
root@Teltonika-RUTX11:~# gsmctl -A 'AT+QNWLOCK=?'
Line 14: Line 16:  
+QNWLOCK: "common/lte"[,<action>[,<EARFCN>,<PCI>[,<status>]]]
 
+QNWLOCK: "common/lte"[,<action>[,<EARFCN>,<PCI>[,<status>]]]
 
</pre>
 
</pre>
 
+
===Meig===
 +
----
 +
<pre>
 +
root@Teltonika-RUT955:~# gsmctl -A 'AT^CELLLOCK=?'
 +
^CELLLOCK: (0-1),("02","03"),(0-1),("arfcn"),("pci")
 +
</pre>
 
==When to use cell locking==
 
==When to use cell locking==
 
Let's say you're setting up RUTX14, which supports '''Carrier Aggregation''' of up to 3 bands, and you have two cell towers within a similar distance. Let's say Cell A transmits on bands 1, 7, and 20, while Cell B transmits on bands 3 and 20.
 
Let's say you're setting up RUTX14, which supports '''Carrier Aggregation''' of up to 3 bands, and you have two cell towers within a similar distance. Let's say Cell A transmits on bands 1, 7, and 20, while Cell B transmits on bands 3 and 20.
Line 32: Line 39:  
* The described method works with Teltonika RUT/RUTX/TCR/TRB series devices, that contain '''Quectel''' modems;
 
* The described method works with Teltonika RUT/RUTX/TCR/TRB series devices, that contain '''Quectel''' modems;
 
* Using this command will lock the device into '''LTE-only mode''';
 
* Using this command will lock the device into '''LTE-only mode''';
* Rebooting the device ''might'' remove the cell lock;
+
* Rebooting the device ''might'' remove the cell lock on Quectel modems;
 
* '''It is not recommended to perform these actions while the device is connected remotely as if it loses connection, it will not be recoverable!'''
 
* '''It is not recommended to perform these actions while the device is connected remotely as if it loses connection, it will not be recoverable!'''
   −
===Configuring LTE-only mode===
+
===Quectel===
 +
----
 +
====Configuring LTE-only mode====
 
----
 
----
 +
 
To start, we'll set the router to LTE-only mode, by using the command:<br>
 
To start, we'll set the router to LTE-only mode, by using the command:<br>
 
<pre>gsmctl -A 'AT+QCFG="NWSCANMODE",3,1'</pre>
 
<pre>gsmctl -A 'AT+QCFG="NWSCANMODE",3,1'</pre>
Line 49: Line 59:  
'''''Note: Do not use WebUI to change this setting. It has to be done via AT commands.'''''
 
'''''Note: Do not use WebUI to change this setting. It has to be done via AT commands.'''''
   −
===Finding the serving cell details===
+
====Finding the serving cell details====
 
----
 
----
To know if our changes had any effect, we'll check the current cell we're connected to, by using a command:<br>
+
 
 +
To know if our changes will have any effect, we'll check the current cell we're connected to, by using a command:<br>
 
<pre>gsmctl -A 'AT+QENG="SERVINGCELL"'</pre>
 
<pre>gsmctl -A 'AT+QENG="SERVINGCELL"'</pre>
 
The output should look something like this:
 
The output should look something like this:
Line 63: Line 74:  
* '''1850''' - LTE EARFCN stands for E-UTRA Absolute Radio Frequency Channel Number. This will be the second variable when setting up cell locking.<br>
 
* '''1850''' - LTE EARFCN stands for E-UTRA Absolute Radio Frequency Channel Number. This will be the second variable when setting up cell locking.<br>
   −
===Finding the neighbouring cells details===
+
====Finding the neighbouring cells details====
 
----
 
----
   Line 85: Line 96:  
'''From these outputs, the most fitting cell should be picked, and its EARFCN and PCI value should be noted.'''
 
'''From these outputs, the most fitting cell should be picked, and its EARFCN and PCI value should be noted.'''
   −
===Locking to a selected cell===
+
====Locking to a selected cell====
 
----
 
----
 +
 
Once we pick out the cell that we prefer, we can execute this command, with <EARFCN> and <PCID> replaced with desired variables from the previous commands (< and > are not needed):
 
Once we pick out the cell that we prefer, we can execute this command, with <EARFCN> and <PCID> replaced with desired variables from the previous commands (< and > are not needed):
 
<pre>gsmctl -A 'AT+QNWLOCK="common/lte",2,<EARFCN>,<PCI>'</pre>
 
<pre>gsmctl -A 'AT+QNWLOCK="common/lte",2,<EARFCN>,<PCI>'</pre>
 
Output from the command should be '''OK''', if it's not, please double-check the spelling.
 
Output from the command should be '''OK''', if it's not, please double-check the spelling.
 +
 +
===Meig===
 +
----
 +
====Configuring LTE-only mode====
 +
----
 +
 +
To start, we'll set the router to LTE-only mode, by using the command:<br>
 +
<pre>gsmctl -A 'AT^SYSCFGEX="03"'</pre>
 +
 +
The [[RUTOS_gsmctl_Commands|'''gsmctl''']] module is responsible for communication with the modem using [[AT_Commands|AT commands]]. By using the argument -A we can directly send the AT commands to the modem.
 +
 +
This may cause the router to lose connection for a few seconds, so before continuing to the next step, please make sure the router is connected to the network.
 +
 +
'''''Note:''''' Do not use WebUI to change this setting. It has to be done via AT commands.
 +
 +
====Setting the device to the airplane mode====
 +
----
 +
 +
To set the device to the airplane mode, run this command:
 +
<pre>gsmctl -A 'AT+CFUN=0'</pre>
 +
'''This process may take up to one minute''', and when it's done, the modem will reply '''OK''' in the terminal.
 +
 +
====Finding the serving cell details====
 +
----
 +
 +
To know if our changes will have any effect, we'll check the current cell we're connected to, by using a command:<br>
 +
<pre>gsmctl -A 'AT+CELLINFO=1'</pre>
 +
The output should look something like this:
 +
<pre>
 +
root@Teltonika-RUT955:~# gsmctl -A 'AT+CELLINFO=1'
 +
+CELLINFO:LTE,FDD LTE,246,02,1284885,459,5019,21,144,3,100,1850,19850,-47,-77,-5,164,12,4,255,-,-,1,-,1,-,0,0,0
 +
</pre>
 +
We're mostly interested only in the highlighted parts:
 +
* '''1284885''' - currently serving cell ID. This ID is unique to each cell. It is only used as a reference point in this configuration.<br>
 +
* '''459''' - PCI or Physical Cell Identity. PCI is necessary for a modem to communicate with a cell tower. This is one of the variables we will use when setting up cell locking.<br>
 +
* '''1850''' - LTE EARFCN stands for E-UTRA Absolute Radio Frequency Channel Number. This will be the second variable when setting up cell locking.<br>
 +
 +
====Finding the neighbouring cells details====
 +
----
 +
 +
 +
To check the neighboring cells, that we can connect to, this command should be used:<br>
 +
<pre>gsmctl -A 'AT+CELLINFO=2'</pre>
 +
And the output should look like this:
 +
<pre>
 +
root@Teltonika-RUT955:~# gsmctl -A 'AT+CELLINFO=2'
 +
+CELLINFO: "intra","LTE",1850,451,-5,-72,-59,-,0,0,-,-,0,0,0,0,0,0,0,0,-2080444074,-2080444074
 +
</pre>
 +
Here's an explanation of the first line for each value:<br>
 +
* '''LTE''' - network generation;
 +
* '''1850''' - EARFCN value. EARFCN is used to determine the channel frequency and bandwidth, thus it can be useful to determine the band of neighbouring cell. This can be achieved using [https://5g-tools.com/4g-lte-earfcn-calculator/ EARFCN calculator];
 +
* '''451''' - PCI;
 +
* '''-5''' - RSRQ (dB);
 +
* '''-72''' - RSRP (dBm);
 +
* '''-59''' - Signal Strength - RSSI (dBm).
 +
 +
The explanation for the last 3 measurements can be found on our [[Mobile_Signal_Strength_Recommendations|Mobile signal strength recommendations]] page.
 +
'''From these outputs, the most fitting cell should be picked, and its EARFCN and PCI value should be noted.'''
 +
 +
====Locking to a selected cell====
 +
----
 +
 +
Once we pick out the cell that we prefer, we can execute this command, with <EARFCN> and <PCID> replaced with desired variables from the previous commands (< and > are not needed):
 +
<pre>gsmctl -A 'AT^CELLLOCK=<0-disable / 1-enable>,<2-WCDMA / 3-LTE>,1,<EARFCN>,<PCID>'</pre>
 +
So an example command would look like this:
 +
<pre>gsmctl -A 'AT^CELLLOCK=1,3,1,1850,451'</pre>
 +
Output from the command should be '''OK''', if it's not, please double-check the spelling.
 +
 +
====Disabling the airplane mode====
 +
----
 +
 +
To disable the airplane mode after the configuration is done, run this command:
 +
<pre>gsmctl -A 'AT+CFUN=1'</pre>
 +
'''It can take up to around 5 minutes''' for the modem to reconnect to the desired cell, thus the modem status should be monitored in the WebUI by navigating to Status → Network → Mobile until the '''Data connection state''' changes to '''Connected'''.
    
==Results==
 
==Results==
To verify that the cell change occurred, wait around 30 seconds and again run the command <pre>gsmctl -A 'AT+QENG="SERVINGCELL"'</pre>
+
To verify that the cell change occurred, wait around 30 seconds and again run the command from the '''Finding the serving cell details''' section.
 
The output values for PCI and EARFCN should now match the ones used in the previous command. If not, please double check, that you have not set the same cell as the router was connected to before.
 
The output values for PCI and EARFCN should now match the ones used in the previous command. If not, please double check, that you have not set the same cell as the router was connected to before.
   Line 103: Line 189:  
==Reverting to an automatic cell selection==
 
==Reverting to an automatic cell selection==
 
If you decide that this feature is no longer needed, it can always be reverted back to automatic cell selection.
 
If you decide that this feature is no longer needed, it can always be reverted back to automatic cell selection.
 +
===Quectel===
 +
----
 
First, let's set cell selection back to auto using this command:
 
First, let's set cell selection back to auto using this command:
 
<pre>gsmctl -A 'AT+QNWLOCK="common/lte",0'</pre>
 
<pre>gsmctl -A 'AT+QNWLOCK="common/lte",0'</pre>
 
Then, we need to bring the device service mode back to Auto, by using this command:
 
Then, we need to bring the device service mode back to Auto, by using this command:
 
<pre>gsmctl -A 'AT+QCFG="NWSCANMODE",0,1'</pre>
 
<pre>gsmctl -A 'AT+QCFG="NWSCANMODE",0,1'</pre>
 +
And that's it! Your router should be back to fully automatic mode.
 +
===Meig===
 +
----
 +
First, let's set cell selection back to auto using this command:
 +
<pre>gsmctl -A 'AT^CELLLOCK=0 '</pre>
 +
Then, we need to bring the device service mode back to Auto, by using this command:
 +
<pre>gsmctl -A 'AT^SYSCFGEX="00"'</pre>
 +
 
And that's it! Your router should be back to fully automatic mode.
 
And that's it! Your router should be back to fully automatic mode.
  

Navigation menu