wiki:Tutorials/g0WmLTE/Tutorial4-OAI/Tutorial0

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

Under Construction

Basic OAI Tutorial

Objective

This objective of this tutorial is to establish a LTE connection between the SDR based UE and eNB. In order to that we need to prepare configuration files on two nodes in sandbox 1, node1-1 and node1-2.


The image was built following the tutorial available at: OAI no S1

Prepare the nodes

  1. Load the two images with the OAI code to nodes 1-1 and 1-2. This enables running the experiment with no compilation needed.

    Load an Image

    1. Before we begin using the nodes, it's a good idea to check their status first. This is done with the omf stat command.

      omf stat

      This omf command is used to display the power status of the node/domain.

      Individual nodes are identified in the output of stat command by their fully qualified domain name (FQDN). This establishes their "coordinates" and the "domain" to which they belong. Nodes in different domains typically can NOT see each other. Node can be in 1 of 3 states:

      POWEROFF Node is Available for use but turned off
      POWERON Node is Available and is on
      NOT REGISTERED Node is not Available for use

    2. It is recommended that the node be in the POWEROFF state prior to any experiment process. If the node is in the POWERON state you can use the omf tell command to get the node into the off state.

      omf tell

      OMF command to control the power state/reset the nodes.

      The commands are: on, offh (equivalent to pulling out the power cord), offs (software shutdown), reboot (software reboot) and reset (hardware reset).

    3. Once node set is on an POWEROFF state, load an image with omf load command

      omf load

      Load command is used to put an image onto the hard disk of the node.

      Two important arguments are TOPOLOGY describing the set of nodes one wishes to image , and !IMAGE specifying the name of the image one wants to load the nodes with. If the imaging process does not does not finish within the default timeout period, that period can be increase by using the -o flag (e.g. -o 1600). Typical command to load both nodes of sandbox 1 with the baseline image would look like:

      If the node is in the NOT REGISTERED state, you may need to wait for it to recover the POWEROFF state (it some times requires a few moments for the services to sync up). If the node takes more than 60 seconds to come out of the NODE NOT AVAILABLE state please report it to an administrator.
  1. Load the eNB image to node1-1.
    1. omf load -t node1-1 -i mf-oai-enb.ndz
  2. Load the UE image to node1-2.
    1. omf load -t node1-2 -i mf-oai-ue.ndz
  • Turn ON the nodes that successfully imaged (give them some time and check their status with omf stat before proceeding).
  • Execute the experiment


    Quickstart Option

    We have an image available, named oai-dev.ndz. It has all the necessary driver and software pre-installed, and two scripts available to immediately boot up the eNB and UE. This quickstart assumes use of Sandbox1, nodes 1-1, and 1-2.

    1. To proceed, after having a reservation, load the following image.
      • omf load -t node1-1,node1-2 -i oai-dev.ndz
      • The nodes will automatically turn off when imaging is completed.
    2. Turn the nodes on.
      • omf tell -a on -t node1-1,node1-2
    3. Open a terminal to each node. You must enable X11 Forwarding to see the GUI and statistics screens.
      1. You will need at lease one terminal per node, for the statistics screens. Even more if you want to run additional commands. For details, refer to the Remote Graphical Access section.
    4. On the first node, execute script ./CompandRuneNB
    5. On the second node, execute script ./CompandRunUE
    6. For subsequent runs, execute ./runeNB or ./runUE instead, to avoid recompiling.
    7. These scripts will create interface oai0 and assign an address.
      1. Use ifconfig or ip a to see the address assigned.
      2. By default the eNB has address 10.0.1.1, and the UE has addresss 10.0.1.9, but you should double check.
    8. You should be able to ping from one node to the other on these addresses.
      1. From UE, ping 10.0.1.1 or to see live statistics mtr 10.0.1.1

    In your terminals, you will see the following screens upon successful script execution.

    OAI eNB in ORBIT

    UNDER DEVELOPMENT

    1. Load image lte-edge.ndz to a node with a b210
      1. This can be found from the status page
    2. Turn the node on
    3. SSH to the node
    4. cd /opt
    5. Run ./setup.sh --build_enb_ue
    6. Edit the configuration file to match the needed IP using the editor of your choice (example vim)
      1. vim ./conf/enb.band25.tm1.usrpb210.conf
      2. The MME ip address is on the line
        mme_ip_address      = ( { ipv4       = "10.3.0.21";
        
        1. Do not change this unless you are using a custom MME, rather than the ORBIT hosted one, or are tunneling.
      3. Set the following four lines to match the interface you will use to connect to the MME. In this example it is set to use eth1 on node8-7.grid.orbit-lab.org.
        ENB_INTERFACE_NAME_FOR_S1_MME            = "eth0";
        ENB_IPV4_ADDRESS_FOR_S1_MME              = "10.40.4.5/16";
        ENB_INTERFACE_NAME_FOR_S1U               = "eth0";
        ENB_IPV4_ADDRESS_FOR_S1U                 = "10.40.4.5/16"; 
        
    7. Run the eNB ./openairinterface5g/cmake_targets/lte_build_oai/build/lte-softmodem -O ./conf/enb.band25.tm1.usrpb210.conf
      1. Some options to append
        1. -d : shows visual displays

    Note: See TracWiki for help on using the wiki.