diff --git a/ci-scripts/.gitignore b/ci-scripts/.gitignore
index dc5e7c7476..34d19403a7 100644
--- a/ci-scripts/.gitignore
+++ b/ci-scripts/.gitignore
@@ -1,3 +1,4 @@
+r*.raw
enb_*.log
ue_*.log
ping_*.*
diff --git a/ci-scripts/ran.py b/ci-scripts/ran.py
index c968521bda..79fe1e2fc0 100644
--- a/ci-scripts/ran.py
+++ b/ci-scripts/ran.py
@@ -811,6 +811,7 @@ class RANManagement():
uplinkSegmentsAborted = 0
ulschReceiveOK = 0
gnbRxTxWakeUpFailure = 0
+ gnbTxWriteThreadEnabled = False
cdrxActivationMessageCount = 0
dropNotEnoughRBs = 0
mbmsRequestMsg = 0
@@ -924,6 +925,9 @@ class RANManagement():
result = re.search('could not wakeup gNB rxtx process', str(line))
if result is not None:
gnbRxTxWakeUpFailure += 1
+ result = re.search('tx write thread ready', str(line))
+ if result is not None:
+ gnbTxWriteThreadEnabled = True
result = re.search('ULSCH in error in round|ULSCH 0 in error', str(line))
if result is not None:
ulschFailure += 1
@@ -964,6 +968,10 @@ class RANManagement():
statMsg = nodeB_prefix + 'NB showed ' + str(gnbRxTxWakeUpFailure) + ' "could not wakeup gNB rxtx process" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
htmleNBFailureMsg += statMsg + '\n'
+ if gnbTxWriteThreadEnabled:
+ statMsg = nodeB_prefix + 'NB ran with TX Write thread enabled'
+ logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
+ htmleNBFailureMsg += statMsg + '\n'
if uciStatMsgCount > 0:
statMsg = nodeB_prefix + 'NB showed ' + str(uciStatMsgCount) + ' "uci->stat" message(s)'
logging.debug('\u001B[1;30;43m ' + statMsg + ' \u001B[0m')
diff --git a/ci-scripts/xml_files/gnb_nr_ue_usrp_run_multi_thread.xml b/ci-scripts/xml_files/gnb_nr_ue_usrp_run_multi_thread.xml
new file mode 100644
index 0000000000..ad91807a9b
--- /dev/null
+++ b/ci-scripts/xml_files/gnb_nr_ue_usrp_run_multi_thread.xml
@@ -0,0 +1,71 @@
+
+
+ run-oai-gnb-nr-ue
+ Run-gNB-and-NR-UE
+ tasks
+ 2
+
+090103 000001 090104 000002 090108 090109
+
+
+
+
+ Initialize_eNB
+ Initialize gNB USRP (Multi-Threading enabled)
+ -O ci-scripts/conf_files/gnb.band78.tm1.106PRB.usrpn300.conf --phy-test --usrp-tx-thread-config 1
+ NR
+
+
+
+ IdleSleep
+ Sleep
+ 5
+
+
+
+ IdleSleep
+ Waiting for NR UE to synchronize w/ gNB
+ 180
+
+
+
+ Initialize_OAI_UE
+ Initialize NR UE USRP
+ --phy-test --usrp-args "addr=192.168.30.2,second_addr=192.168.50.2,clock_source=external,time_source=external" --threadoffset 16 --rrc_config_path .
+ NR
+
+
+
+ Terminate_OAI_UE
+ Terminate NR UE
+ NR
+
+
+
+ Terminate_eNB
+ Terminate gNB
+ NR
+
+
+
diff --git a/ci-scripts/xml_files/gnb_usrp_build.xml b/ci-scripts/xml_files/gnb_usrp_build.xml
index bba92930c5..97d6ef06f6 100644
--- a/ci-scripts/xml_files/gnb_usrp_build.xml
+++ b/ci-scripts/xml_files/gnb_usrp_build.xml
@@ -24,6 +24,7 @@
gnb-build-tab
Build-gNB
wrench
+ 4
010101
diff --git a/ci-scripts/xml_files/nr_ue_usrp_build.xml b/ci-scripts/xml_files/nr_ue_usrp_build.xml
index 7d8d97d2c5..c3c842b85a 100644
--- a/ci-scripts/xml_files/nr_ue_usrp_build.xml
+++ b/ci-scripts/xml_files/nr_ue_usrp_build.xml
@@ -24,6 +24,7 @@
nr-ue-build-tab
Build-NR-UE
wrench
+ 2
010102