From 6b16efcb0cb92963bc499b6a95bd66c3dc7d9a1d Mon Sep 17 00:00:00 2001
From: Raphael Defosseux <raphael.defosseux@eurecom.fr>
Date: Thu, 11 Jul 2019 14:51:01 +0200
Subject: [PATCH] DOC: updating Release Notes and adding basic-sim
 documentation

Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
---
 README.txt                                    |  55 +++--
 .../enb_ue_usrp210_band7_test_05mhz_tm1.xml   |   1 +
 ...enb_ue_usrp210_band7_test_05mhz_tm1_s1.xml |   1 +
 .../enb_usrp210_band40_test_05mhz_tm2.xml     |   1 +
 .../if4p5_usrp210_band40_test_20mhz.xml       |   1 +
 cmake_targets/build_ue                        |   6 -
 .../lte_noS1_build_oai/CMakeLists.template    |  10 -
 .../oaisim_build_oai/CMakeLists.template      |  59 ------
 .../oaisim_mme_build_oai/CMakeLists.template  |  61 ------
 .../oaisim_noS1_build_oai/CMakeLists.template |  62 ------
 doc/BASIC_SIM.md                              | 189 ++++++++++++++++++
 doc/RUNMODEM.md                               |   4 +
 12 files changed, 238 insertions(+), 212 deletions(-)
 delete mode 100755 cmake_targets/build_ue
 delete mode 100644 cmake_targets/lte_noS1_build_oai/CMakeLists.template
 delete mode 100644 cmake_targets/oaisim_build_oai/CMakeLists.template
 delete mode 100644 cmake_targets/oaisim_mme_build_oai/CMakeLists.template
 delete mode 100644 cmake_targets/oaisim_noS1_build_oai/CMakeLists.template
 create mode 100644 doc/BASIC_SIM.md

diff --git a/README.txt b/README.txt
index 8204bb0cb5..30eba6c36f 100644
--- a/README.txt
+++ b/README.txt
@@ -43,17 +43,35 @@ openairinterface5g
 
 RELEASE NOTES:
 
-v0.1 -> Last stable commit on develop branch before enhancement-10-harmony
-v0.2 -> Merge of enhancement-10-harmony to include NGFI RRH + New Interface for RF/BBU
-v0.3 -> Last stable commit on develop branch before the merge of feature-131-new-license. This is the last commit with GPL License
-v0.4 -> Merge of feature-131-new-license. It closes issue#131 and changes the license to OAI Public License V1.0
-v0.5 -> Merge of enhancement-10-harmony-lts. It includes fixes for Ubuntu 16.04 support
-v0.5.1 -> Merge of bugfix-137-uplink-fixes. It includes stablity fixes for eNB
-v0.5.2 -> Last version with old code for oaisim (abstraction mode works)
-v0.6 -> RRH functionality, UE greatly improved, better TDD support,
-        a lot of bugs fixed. WARNING: oaisim in PHY abstraction mode does not
-        work, you need to use v0.5.2 for that.
-v0.6.1 -> Mostly bugfixes. This is the last version without NFAPI.
+v1.1.0 -> July 2019. This version adds the following implemented features:
+           * Experimental support of LTE-M (only one module attachement)
+           * X2 interface and handover (also X2-U interface)
+             - In FDD and TDD
+           * CU/DU split (F1 interface)
+             - Tested only in FDD
+           * CDRX
+             - Tested only in FDD
+           * Experimental eMBMS support (only on UE side)
+           * Experimental multi-RRU support
+             - Tested only in TDD
+          This version has an improved code quality:
+           * Simplification of the Build System
+             - A single build includes all full-stack simulators, S1/noS1 modes and one HW platform (such as USRP, BladeRF, ...)
+           * TUN interface is now used as default for the data plane
+             - for UE, eNB-noS1 and UE-noS1
+           * Code Cleanup
+           * Better Static Code Analysis:
+             - Limited number of errors in cppcheck
+             - Important Decrease on high Impact errors in CoverityScan
+           * Better Test Coverage in Continuous Integration:
+             - TM2, CDRX, IF4.5, F1
+             - OAI UE is tested in S1 and noS1 modes with USRP board
+             - Multi-RRU TDD mode
+             - X2 Handover in FDD mode
+
+v1.0.3 -> June 2019: Bug fix for LimeSuite v19.04.0 API
+v1.0.2 -> February 2019: Full OAI support for 3.13.1 UHD
+v1.0.1 -> February 2019: Bug fix for the UE L1 simulator.
 v1.0.0 -> January 2019. This version first implements the architectural split described in doc/oai_lte_enb_func_split_arch.png picture.
             Only FAPI, nFAPI and IF4.5 interfaces are implemented.
             Repository tree structure prepares future integrations of features such as LTE-M, nbIOT or 5G-NR.
@@ -61,6 +79,15 @@ v1.0.0 -> January 2019. This version first implements the architectural split de
             S1-flex has been introduced.
             New tools: config library, telnet server, ...
             A lot of bugfixes and a proper automated Continuous Integration process validates contributions.
-v1.0.1 -> February 2019: Bug fix for the UE L1 simulator.
-v1.0.2 -> February 2019: Full OAI support for 3.13.1 UHD
-v1.0.3 -> June 2019: Bug fix for LimeSuite v19.04.0 API
+
+v0.6.1 -> Mostly bugfixes. This is the last version without NFAPI.
+v0.6 -> RRH functionality, UE greatly improved, better TDD support,
+        a lot of bugs fixed. WARNING: oaisim in PHY abstraction mode does not
+        work, you need to use v0.5.2 for that.
+v0.5.2 -> Last version with old code for oaisim (abstraction mode works)
+v0.5.1 -> Merge of bugfix-137-uplink-fixes. It includes stablity fixes for eNB
+v0.5 -> Merge of enhancement-10-harmony-lts. It includes fixes for Ubuntu 16.04 support
+v0.4 -> Merge of feature-131-new-license. It closes issue#131 and changes the license to OAI Public License V1.0
+v0.3 -> Last stable commit on develop branch before the merge of feature-131-new-license. This is the last commit with GPL License
+v0.2 -> Merge of enhancement-10-harmony to include NGFI RRH + New Interface for RF/BBU
+v0.1 -> Last stable commit on develop branch before enhancement-10-harmony
diff --git a/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1.xml b/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1.xml
index 29c9a29c2d..a2e74c6de9 100644
--- a/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1.xml
+++ b/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1.xml
@@ -24,6 +24,7 @@
 	<htmlTabRef>test-05-tm1-nos1-tunnel</htmlTabRef>
 	<htmlTabName>Test-05MHz-TM1-noS1-tunnel</htmlTabName>
 	<htmlTabIcon>tasks</htmlTabIcon>
+	<repeatCount>2</repeatCount>
 	<TestCaseRequestedList>
  030201 090109
  030101 000001 090101 000002 040501 040502 000001 040601 040602 040641 040642 000001 090109 030201
diff --git a/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1_s1.xml b/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1_s1.xml
index 2e6b9a0dc6..9f7546cab3 100644
--- a/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1_s1.xml
+++ b/ci-scripts/xml_files/enb_ue_usrp210_band7_test_05mhz_tm1_s1.xml
@@ -24,6 +24,7 @@
 	<htmlTabRef>test-05-tm1-tunnel</htmlTabRef>
 	<htmlTabName>Test-05MHz-TM1-tunnel</htmlTabName>
 	<htmlTabIcon>tasks</htmlTabIcon>
+	<repeatCount>2</repeatCount>
 	<TestCaseRequestedList>
  030201 090109
  030102 000001 090102 000002 040503 000001 040603 040604 040643 040644 000001 090109 030201
diff --git a/ci-scripts/xml_files/enb_usrp210_band40_test_05mhz_tm2.xml b/ci-scripts/xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
index a3f88307ec..9c98ba4a8e 100644
--- a/ci-scripts/xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
+++ b/ci-scripts/xml_files/enb_usrp210_band40_test_05mhz_tm2.xml
@@ -25,6 +25,7 @@
 	<htmlTabRef>test-05-tm2</htmlTabRef>
 	<htmlTabName>Test-05MHz-TM2</htmlTabName>
 	<htmlTabIcon>tasks</htmlTabIcon>
+	<repeatCount>2</repeatCount>
         <TestCaseRequestedList>
  030201
  040101
diff --git a/ci-scripts/xml_files/if4p5_usrp210_band40_test_20mhz.xml b/ci-scripts/xml_files/if4p5_usrp210_band40_test_20mhz.xml
index 17ede3f830..15d641efeb 100644
--- a/ci-scripts/xml_files/if4p5_usrp210_band40_test_20mhz.xml
+++ b/ci-scripts/xml_files/if4p5_usrp210_band40_test_20mhz.xml
@@ -24,6 +24,7 @@
 	<htmlTabRef>test-20</htmlTabRef>
 	<htmlTabName>Test-20MHz</htmlTabName>
 	<htmlTabIcon>tasks</htmlTabIcon>
+	<repeatCount>2</repeatCount>
 	<TestCaseRequestedList>
  030201
  040101
diff --git a/cmake_targets/build_ue b/cmake_targets/build_ue
deleted file mode 100755
index 9d9ca839d1..0000000000
--- a/cmake_targets/build_ue
+++ /dev/null
@@ -1,6 +0,0 @@
-#!/bin/bash
-#sudo ./build_oai -c -C -I --install-optional-packages --install-system-files --UE -w USRP -V 
-#sudo ./build_oai -c -C -I --install-optional-packages --UE -w USRP -V 
-#sudo ./build_oai -c -C --UE -w USRP -V
-sudo ./build_oai -c -C --UE -w USRP
-#sudo ./build_oai -c -C --UE -w USRP --build-eclipse
diff --git a/cmake_targets/lte_noS1_build_oai/CMakeLists.template b/cmake_targets/lte_noS1_build_oai/CMakeLists.template
deleted file mode 100644
index 95216b139e..0000000000
--- a/cmake_targets/lte_noS1_build_oai/CMakeLists.template
+++ /dev/null
@@ -1,10 +0,0 @@
-set(ENABLE_ITTI True)
-set(ENABLE_USE_MME False)
-set(PDCP_USE_NETLINK True)
-set(LINK_ENB_PDCP_TO_IP_DRIVER True)
-set(LINK_ENB_PDCP_TO_GTPV1U False)
-set(PDCP_USE_NETLINK_QUEUES False)
-set(LINUX True)
-set(SECU False)
-set(NAS_UE False)
-
diff --git a/cmake_targets/oaisim_build_oai/CMakeLists.template b/cmake_targets/oaisim_build_oai/CMakeLists.template
deleted file mode 100644
index cffbddc93c..0000000000
--- a/cmake_targets/oaisim_build_oai/CMakeLists.template
+++ /dev/null
@@ -1,59 +0,0 @@
-cmake_minimum_required(VERSION 2.8)
-
-set (  CMAKE_BUILD_TYPE "RelWithDebInfo" )
-set (  DEBUG_OMG False )
-set (  DISABLE_XER_PRINT False )
-set (  DRIVER2013 True )
-set (  ENABLE_ITTI True )
-set (  ENABLE_NAS_UE_LOGGING True )
-set (  ENABLE_NEW_MULTICAST True )
-set (  ENABLE_RAL False )
-set (  ENABLE_STANDALONE_EPC False)
-set (  ENABLE_USE_CPU_EXECUTION_TIME True )
-set (  ENABLE_USE_MME True )
-set (  ENABLE_USE_RAW_SOCKET_FOR_SGI True)
-set (  ENABLE_VCD_FIFO False )
-set (  ENB_MODE True )
-set (  EXMIMO_IOT True )
-set (  JUMBO_FRAME True )
-set (  LARGE_SCALE False )
-set (  LINK_ENB_PDCP_TO_GTPV1U True)
-set (  LINUX_LIST False )
-set (  LINUX True )
-set (  LOCALIZATION False )
-set (  LOG_NO_THREAD True )
-set (  DEADLINE_SCHEDULER False )
-set (  MAC_CONTEXT 1 )
-set (  MAX_NUM_CCs 1 )
-set (  MESSAGE_CHART_GENERATOR False)
-set (  MSG_PRINT False )
-set (  MU_RECEIVER False )
-set (  NAS_ADDRESS_FIX False )
-set (  NAS_BUILT_IN_UE True)
-set (  NAS_MME False )
-set (  NAS_UE True )
-set (  NB_ANTENNAS_RX "2" )
-set (  NB_ANTENNAS_TX "2" )
-set (  NO_RRM True )
-set (  OAISIM True )
-set (  OAI_NW_DRIVER_TYPE_ETHERNET False )
-set (  OAI_NW_DRIVER_USE_NETLINK True )
-set (  OPENAIR2 True )
-set (  OPENAIR_LTE True )
-set (  PACKAGE_NAME "oaisim" )
-set (  PDCP_USE_NETLINK True )
-set (  PDCP_MSG_PRINT False )
-set (  PHY_CONTEXT False )
-set (  PHY_EMUL False )
-set (  PHYSIM True )
-set (  RF_BOARD "False" )
-set (  RLC_STOP_ON_LOST_PDU False )
-set (  RRC_ASN1_VERSION "Rel10" )
-set (  RRC_DEFAULT_RAB_IS_AM True)
-set (  RRC_MSG_PRINT False )
-set (  SECU False )
-set (  SMBV False )
-set (  TEST_OMG False )
-set (  USE_3GPP_ADDR_AS_LINK_ADDR False )
-set (  USE_MME "R10" )
-set (  XER_PRINT False )
diff --git a/cmake_targets/oaisim_mme_build_oai/CMakeLists.template b/cmake_targets/oaisim_mme_build_oai/CMakeLists.template
deleted file mode 100644
index eac29006da..0000000000
--- a/cmake_targets/oaisim_mme_build_oai/CMakeLists.template
+++ /dev/null
@@ -1,61 +0,0 @@
-cmake_minimum_required(VERSION 2.8)
-
-set (  CMAKE_BUILD_TYPE "RelWithDebInfo" )
-set (  DEBUG_OMG False )
-set (  DISABLE_XER_PRINT False )
-set (  DRIVER2013 False )
-set (  ENABLE_ITTI True )
-set (  ENABLE_NAS_UE_LOGGING False )
-set (  ENABLE_NEW_MULTICAST False )
-set (  ENABLE_RAL False )
-set (  ENABLE_STANDALONE_EPC False )
-set (  ENABLE_USE_CPU_EXECUTION_TIME False )
-set (  ENABLE_USE_MME False )
-set (  ENABLE_USE_RAW_SOCKET_FOR_SGI True)
-set (  ENABLE_VCD_FIFO False )
-set (  ENB_MODE False )
-set (  EPC_BUILD True )
-set (  EXMIMO_IOT False )
-set (  JUMBO_FRAME False )
-set (  LARGE_SCALE False )
-set (  LINK_ENB_PDCP_TO_GTPV1U True)
-set (  LINUX_LIST False )
-set (  LINUX False )
-set (  LOCALIZATION False )
-set (  LOG_NO_THREAD False )
-set (  DEADLINE_SCHEDULER False )
-set (  MAC_CONTEXT 1 )
-set (  MAX_NUM_CCs 1 )
-set (  MSG_PRINT False )
-set (  MU_RECEIVER False )
-set (  NAS_ADDRESS_FIX False )
-set (  NAS_BUILT_IN_EPC True )
-set (  NAS_MME True )
-set (  NAS_NETLINK False )
-set (  NAS_UE False )
-set (  NB_ANTENNAS_RX "2" )
-set (  NB_ANTENNAS_TX "2" )
-set (  NO_RRM False )
-set (  OAISIM False )
-set (  OAI_NW_DRIVER_TYPE_ETHERNET False )
-set (  OAI_NW_DRIVER_USE_NETLINK False )
-set (  OPENAIR2 False )
-set (  OPENAIR_LTE False )
-set (  PACKAGE_NAME "EPC" )
-set (  PDCP_MSG_PRINT False )
-set (  PHY_CONTEXT False )
-set (  PHY_EMUL False )
-set (  PHYSIM False )
-set (  RF_BOARD "False" )
-set (  RRC_ASN1_VERSION "Rel10" )
-set (  RLC_STOP_ON_LOST_PDU False )
-set (  RRC_MSG_PRINT False )
-set (  SECU False )
-set (  SMBV False )
-set (  TEST_OMG False )
-set (  UPDATE_RELEASE_9 True)
-set (  UPDATE_RELEASE_10 True)
-set (  USE_3GPP_ADDR_AS_LINK_ADDR False )
-set (  USE_MME "R10" )
-set (  XER_PRINT False )
-set (  XFORMS False )
diff --git a/cmake_targets/oaisim_noS1_build_oai/CMakeLists.template b/cmake_targets/oaisim_noS1_build_oai/CMakeLists.template
deleted file mode 100644
index 343e928090..0000000000
--- a/cmake_targets/oaisim_noS1_build_oai/CMakeLists.template
+++ /dev/null
@@ -1,62 +0,0 @@
-cmake_minimum_required(VERSION 2.8)
-
-set (  DEBUG_OMG False )
-set (  DISABLE_XER_PRINT False )
-set (  DRIVER2013 True )
-set (  ENABLE_ITTI True )
-set (  ENABLE_NAS_UE_LOGGING False )
-set (  ENABLE_NEW_MULTICAST True )
-set (  ENABLE_RAL False )
-set (  ENABLE_STANDALONE_EPC False)
-set (  ENABLE_USE_CPU_EXECUTION_TIME True )
-set (  ENABLE_USE_MME False )
-set (  ENABLE_USE_RAW_SOCKET_FOR_SGI False)
-set (  ENABLE_VCD_FIFO False )
-set (  ENB_MODE True )
-set (  EXMIMO_IOT True )
-set (  JUMBO_FRAME True )
-set (  LARGE_SCALE False )
-set (  LINK_ENB_PDCP_TO_GTPV1U False)
-set (  LINUX_LIST False )
-set (  LINUX True )
-set (  LOCALIZATION False )
-set (  LOG_NO_THREAD 1 )
-set (  DEADLINE_SCHEDULER False )
-set (  MAC_CONTEXT 1 )
-set (  MAX_NUM_CCs 1 )
-set (  MESSAGE_CHART_GENERATOR         False )
-set (  MESSAGE_CHART_GENERATOR_RLC_MAC False )
-set (  MESSAGE_CHART_GENERATOR_PHY     False )
-set (  MSG_PRINT False )
-set (  MU_RECEIVER False )
-set (  NAS_ADDRESS_FIX False )
-set (  NAS_BUILT_IN_UE False)
-set (  NAS_MME False )
-set (  NAS_UE False )
-set (  NB_ANTENNAS_RX "2" )
-set (  NB_ANTENNAS_TX "2" )
-set (  NO_RRM True )
-set (  OAISIM True )
-set (  OAI_NW_DRIVER_TYPE_ETHERNET False )
-set (  OAI_NW_DRIVER_USE_NETLINK True )
-set (  OPENAIR2 True )
-set (  OPENAIR_LTE True )
-set (  PACKAGE_NAME "oaisim" )
-set (  PDCP_USE_NETLINK True )
-set (  PDCP_MSG_PRINT False )
-set (  PHY_CONTEXT False )
-set (  PHY_EMUL False )
-set (  PHYSIM True )
-set (  RF_BOARD "False" )
-set (  RRC_ASN1_VERSION "Rel10" )
-set (  RLC_STOP_ON_LOST_PDU False )
-set (  RRC_MSG_PRINT False )
-set (  SECU False )
-set (  SMBV False )
-set (  TEST_OMG False )
-set (  USE_3GPP_ADDR_AS_LINK_ADDR False )
-set (  USE_MME "R10" )
-set (  XER_PRINT False )
-set (  DEBUG_PHY False )
-set (  DEBUG_PHY_PROC False)
-set (  DEBUG_DLSCH False)
diff --git a/doc/BASIC_SIM.md b/doc/BASIC_SIM.md
new file mode 100644
index 0000000000..a9d76b0b1e
--- /dev/null
+++ b/doc/BASIC_SIM.md
@@ -0,0 +1,189 @@
+<table style="border-collapse: collapse; border: none;">
+  <tr style="border-collapse: collapse; border: none;">
+    <td style="border-collapse: collapse; border: none;">
+      <a href="http://www.openairinterface.org/">
+         <img src="./images/oai_final_logo.png" alt="" border=3 height=50 width=150>
+         </img>
+      </a>
+    </td>
+    <td style="border-collapse: collapse; border: none; vertical-align: center;">
+      <b><font size = "5">Running OAI Basic Simulator</font></b>
+    </td>
+  </tr>
+</table>
+
+This page is valid on the following branches:
+
+- `master` starting from tag `v1.1.0`
+- `develop` starting from tag `2019.w11`
+
+# 1. Building the basic-simulator.
+
+After the build simplification, the basic simulator is available directly from the standard build.
+
+```bash
+$ source oaienv
+$ cd cmake_targets
+$ ./build_oai --eNB --UE
+```
+
+Both eNB (lte-softmodem) and UE (lte-uesoftmodem) are present on `cmake_targets/lte_build_oai/build` folder.
+
+More details are available on the [build page](BUILD.md).
+
+# 2. Running the basic simulator.
+
+The basic simulator is a oai device replacing the radio heads (for example the USRP device). It allows connecting the oai UE and the oai eNodeB through a network interface carrying the time-domain samples, getting rid of over the air unpredictable perturbations.
+
+This is the ideal tool to check signal processing algorithms and protocols implementation and having debug sessions without any HW radio equipment.
+
+The main limitations are:
+
+- A single OAI UE will connect to the OAI eNB
+- No channel noise
+
+## 2.1. Starting eNB
+
+The basic simulator is able to run with a connected EPC or without any (the so-called "noS1" mode).
+
+Example 1: running in FDD mode with EPC.
+
+```bash
+$ source oaienv
+$ cd cmake_targets/lte_build_oai/build
+$ ENODEB=1 sudo -E ./lte-softmodem -O $OPENAIR_HOME/ci-scripts/conf_files/lte-fdd-basic-sim.conf --basicsim
+```
+
+Edit previously the `ci-scripts/conf_files/lte-fdd-basic-sim.conf` file to modify:
+
+- `N_RB_DL` field to change the Bandwidth (25, 50, 100)
+- `CI_MME_IP_ADDR` with the EPC IP address
+- `CI_ENB_IP_ADDR` with the container (physical server, virtual machine, ...) on which you are executing the eNB soft-modem
+
+Example 2: running in TDD mode without any EPC.
+
+```bash
+$ source oaienv
+$ cd cmake_targets/lte_build_oai/build
+$ ENODEB=1 sudo -E ./lte-softmodem -O $OPENAIR_HOME/ci-scripts/conf_files/lte-tdd-basic-sim.conf --basicsim --noS1
+```
+
+## 2.2. Starting UE
+
+Before starting the UE, you may need to edit the SIM parameters to adapt to your eNB configuration and HSS database.
+
+The <conf> file to use for conf2uedate is `openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf`
+
+You need to set the correct OPC, USIM_API_K, MSIN (this is the end par of the IMSI), HPLMN (the front part of IMSI) to match values from HSS.
+
+```bash
+$ source oaienv
+# Edit openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf
+$ cd cmake_targets/lte_build_oai/build
+$ ../../nas_sim_tools/build/conf2uedata -c $OPENAIR_HOME/openair3/NAS/TOOLS/ue_eurecom_test_sfr.conf -o .
+$ sudo -E ./lte-uesoftmodem -C 2625000000 -r 25 --ue-rxgain 140 --basicsim [--noS1]
+```
+
+The `-r 25` is to use if in the conf file of the eNB you use N_RB_DL=25. Use 50 if you have N_RB_DL=50 and 100 if you have N_RB_DL=100.
+
+The `--noS1` is mandatory if you started the eNB in that mode.
+
+# 3. Testing the data plane
+
+# 3.1. In S1 mode
+
+First we need to retrieve the IP address allocated to the OAI UE.
+
+On the server that runs the UE:
+
+```bash
+$ ifconfig oaitun_ue1
+oaitun_ue1 Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
+            inet addr:192.172.0.2  P-t-P:192.172.0.2  Mask:255.255.255.0
+...
+```
+
+`192.172.0.2` is the IP address that has been allocated by the SPGW in the EPC.
+
+On the server that runs the EPC:
+
+```bash
+$ ping -c 20 192.172.0.2
+  --- 192.172.0.2 ping statistics ---
+  20 packets transmitted, 20 received, 0% packet loss, time 19020ms
+  rtt min/avg/max/mdev = 13.241/18.999/24.208/2.840 ms
+```
+
+You can ping the EPC from the UE:
+
+```bash
+$ ping -I oaitun_ue1 -c 20 192.172.0.1
+  --- 192.172.0.1 ping statistics ---
+...
+  20 packets transmitted, 20 received, 0% packet loss, time 19019ms
+  rtt min/avg/max/mdev = 13.015/18.674/23.738/2.917 ms
+```
+
+For DL iperf testing:
+
+On the server that runs the UE.
+
+```bash
+$  iperf -B 192.172.0.2 -u -s -i 1 -fm -p 5001
+```
+
+On the server that runs the EPC.
+
+```bash
+$  iperf -c 192.172.0.2 -u -t 30 -b 10M -i 1 -fm -B 192.172.0.1 -p 5001
+```
+
+For UL iperf testing:
+
+On the server that runs the EPC.
+
+```bash
+$  iperf -B 192.172.0.1 -u -s -i 1 -fm -p 5001
+```
+
+On the server that runs the UE.
+
+```bash
+$  iperf -c 192.172.0.1 -u -t 30 -b 2M -i 1 -fm -B 192.172.0.2 -p 5001
+```
+
+# 3.2. In noS1 mode
+
+The IP addresses are fixed. But we can still retrieve them programmatically.
+
+For the UE it is quite the same:
+
+```bash
+$ ifconfig oaitun_ue1
+oaitun_ue1 Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
+            inet addr:10.0.1.2  P-t-P:10.0.1.2  Mask:255.255.255.0
+...
+```
+
+For the eNB:
+
+```bash
+$ ifconfig oaitun_enb1
+oaitun_enb1 Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
+            inet addr:10.0.1.1  P-t-P:10.0.1.1  Mask:255.255.255.0
+...
+```
+
+Pinging like this:
+
+```bash
+$ ping -I oaitun_ue1 -c 20 10.0.1.1
+$ ping -I oaitun_enb1 -c 20 10.0.1.2
+```
+
+And the same for iperf:
+
+```bash
+$ iperf -B 10.0.1.2 -u -s -i 1 -fm
+$ iperf -c 10.0.1.2 -u -b 1.00M -t 30 -i 1 -fm -B 10.0.1.1
+```
diff --git a/doc/RUNMODEM.md b/doc/RUNMODEM.md
index 314c2cc78b..bb89407f70 100644
--- a/doc/RUNMODEM.md
+++ b/doc/RUNMODEM.md
@@ -14,6 +14,10 @@
 
 After you have [built the softmodem executables](BUILD.md) you can set your default directory  to the build directory `cmake_targets/lte_build_oai/build/` and start testing some use cases. Below, the description of the different oai functionalities should help you choose the oai configuration that suits your need. 
 
+# Basic Simulator
+
+See the [dedicated page](BASIC_SIM.md).
+
 # RF Simulator
 
 The rf simulator is a oai device replacing the radio heads (for example the USRP device). It allows connecting the oai UE and the oai eNodeB through a network interface carrying the time-domain samples, getting rid of over the air unpredictable perturbations. This is the ideal tool to check signal processing algorithms and protocols implementation.
-- 
GitLab