wiki:Tutorials/g0WmLTE/Tutorial3

Version 4 (modified by msherman, 8 years ago) ( diff )

COTS UE on ORBIT Node

Prerequisites

This tutorial series assumes you have an ORBIT account, have scheduled a session on the ORBIT testbed, are familiar with SSH'ing into the testbed itself, and are familiar with the basics of running ORBIT experiments. If you have not done these things yet, you may wish to do so before taking a look at this slightly more advanced experiment. If you are unfamiliar with or are entirely new to ORBIT, you may wish to start here.

Compatibility

In this tutorial we will use nodes equipped with Netgear AC341u LTE dongles. The basestation in use will depend on which one you have configured. The other tutorials specify which combinations are known to work well, as well as which nodes are close enough physically.

This particular LTE device operates only on the following Bands.

  • TX
    • Band 25: 1850-1915 MHz
    • Band 26: 814-849 MHz
    • Band 41 (TDD): 2496-2690 MHz
  • RX
    • Band 25: 1930-1995 MHz
    • Band 26: 859-894 MHz
    • Band 41 (TDD): 2496-2690 MHz

Imaging

The image used for this experiment is 'baseline.ndz'.

During a normal experiment using OMF, the following actions are scripted and automated. This is a look at the steps involved in something as simple as starting an LTE connection behind the scenes.

You will run the following commands on node7-1, node1-7, and node19-3 in the Grid.

After connecting to the grid console:

  1. omf load -i baseline.ndz -t node7-1.grid.orbit-lab.org
  2. omf tell -a on -t node7-1.grid.orbit-lab.org
    1. It will take roughly 60 seconds to come up.
  3. ssh root@node7-1.grid.orbit-lab.org
  4. repeat the above commands, replacing "node7-1" with the node name in question.

Commands on the node

Loading the driver

By default ORBIT nodes do not enable any wireless devices. Therefore, the first thing when manually configuring the device is to load drivers; the following 2 lines will load the Sierra wireless Netgear LTE dongle:

modprobe GobiSerial
modprobe GobiNet

Connecting to the device

Control of the device is done over the serial port that is created by the driver (in this case /dev/ttyUSB1) through a sequence of AT commands and you can use your favorite serial port communication program to talk to it; in this tutorial we will use Minicom. To start to program execute:

minicom -D /dev/ttyUSB1

Managing the LTE connection

Once in minicom, one can issue series of commands to the LTE modem typically consisting of:

a.) Configure modem for pass-through mode:

AT!ippassthrough?

It should return 1 . If it does not, run the following commands:

  1. AT!ippassthrough=1
  2. AT!entercnd="A710"
  3. AT!dxcfg=profile,Autoconnect,Never
  4. AT!reset

which will reset the modem.

b.)

AT!entercnd="A710"

You should see OK

c.) Connect to the basestation:

AT!dxcfg=wwan,connect,11

You should see OK shortly followed by $QCRMCALL: 1, V4

d.) Check the status of the connection:

at!gstatus?

Will return a status like:

at!gstatus?                                                                                                         
!GSTATUS: 
Current Time:  10049            Temperature: 42
Bootup Time:   0                Mode:        ONLINE         
System mode:   LTE              PS state:    Attached     
LTE band:      B25              LTE bw:      10 MHz  
LTE Rx chan:   8365             LTE Tx chan: 26365
EMM state:     Registered       Normal Service 
RRC state:     RRC Connected  
IMS reg state: No Srv  

RSSI (dBm):    -83              Tx Power:    0
RSRP (dBm):    -117             TAC:         0001 (1)
RSRQ (dB):     -10              Cell ID:     01A2D001 (27447297)
SINR (dB):      1.6

The LTE link is established. Exit Minicom by PRESSING Ctrl+A followed by x, then enter to select OK option.

Testing the connection

Once the modem is connected, we need to fix the default routing to use the new LTE link, as well as assign an address. First, to remove the existing default route, run: ip r del default

Then, we run a dhcp client on the new interface (in this case eth2). dhcpcd eth2

The node should get an address in the 192.168.3.0/24 subnet (any existing dhcpd instance on eth2 has to be killed).

Once routing tables are adjusted, ICMP can be used to test connectivity with the default gateway: ping 192.168.3.1 resulting in:

root@node1-7:~# ping 192.168.3.1
PING 192.168.3.1 (192.168.3.1) 56(84) bytes of data.
64 bytes from 192.168.3.1: icmp_seq=1 ttl=64 time=44.9 ms
64 bytes from 192.168.3.1: icmp_seq=2 ttl=64 time=42.8 ms

The ping can be canceled with Ctrl+C. More elaborate link performance test can be done by using iperf between multiple nodes that are connected to the basestation.

Reconnecting the client

Use minicom (or any other serial port program) to issue a set of AT commands to reset the connection. Commands are:

AT!reset

(NOTE: after the AT!reset command the minicom will display the popup window that the connection was lost- one has to wait for the pop-up to go away before proceeding)

AT!entercnd="A710"
AT!dxcfg=wwan,connect,11

The output should look like:

root@node1-7:~# minicom -D /dev/ttyUSB1

Welcome to minicom 2.7

OPTIONS: I18n 
Compiled on Jan  1 2014, 17:13:19.
Port /dev/ttyUSB1, 06:02:02

Press CTRL-A Z for help on special keys                 
                                                        
AT                                                       
OK                                                      
AT!reset                                                
OK
AT!entercnd="A710"
OK
AT!dxcfg=wwan,connect,11
OK

$QCRMCALL: 1, V4
at!gstatus?
!GSTATUS: gets the IP address, de
Current Time:  58               Temperature: 28      
Bootup Time:   6                Mode:        ONLINE         
System mode:   LTE              PS state:    Attached                           
LTE band:      B25              LTE bw:      10 MHz                             
LTE Rx chan:   8365             LTE Tx chan: 26365                              
EMM state:     Registered       Normal Service                                  
RRC state:     RRC Connected                                                    
IMS reg state: No Srv                                                           
                                                                                
RSSI (dBm):    -69              Tx Power:    -33                                
RSRP (dBm):    -90              TAC:         0001 (1)                           
RSRQ (dB):     -5               Cell ID:     01A2D001 (27447297)                
SINR (dB):     21.2                                                             
                                                                                
                                                                                
OK                                                                             

Once connection is reset, dhcp lease needs to be renewed and new default route added again; if there is already dhcpd session it needs to be terminated:

root@node1-7:~# dhcpcd eth2
err, eth2: dhcpcd already running on pid 2071 (/var/run/dhcpcd-eth2.pid)
root@node1-7:~# kill 2071
root@node1-7:~# dhcpcd eth2
root@node1-7:~# dhcpcd.sh: interface eth2 has been configured with new IP=192.168.3.2

root@node1-7:~# route add default eth2
root@node1-7:~# 
Note: See TracWiki for help on using the wiki.