diff --git a/openair1/SCHED/phy_procedures_lte_eNb.c b/openair1/SCHED/phy_procedures_lte_eNb.c
index e2a28118ffc39de7aa088346aef01f37585d18b1..a8a73f14253c80a28c9d62ad4f7f477852270b9b 100644
--- a/openair1/SCHED/phy_procedures_lte_eNb.c
+++ b/openair1/SCHED/phy_procedures_lte_eNb.c
@@ -1843,7 +1843,7 @@ void fill_uci_harq_indication(PHY_VARS_eNB *eNB,
   pdu->ul_cqi_information.tl.tag = NFAPI_UL_CQI_INFORMATION_TAG;
   int SNRtimes10 = dB_fixed_times10(uci->stat) - 300;//(10*eNB->measurements.n0_power_dB[0]);
 
-  if (SNRtimes10 < -100) LOG_I(PHY,"uci->stat %d \n",uci->stat);
+  if (SNRtimes10 < -100) LOG_D(PHY,"uci->stat %d \n",uci->stat);
 
   if      (SNRtimes10 < -640) pdu->ul_cqi_information.ul_cqi=0;
   else if (SNRtimes10 >  635) pdu->ul_cqi_information.ul_cqi=255;
diff --git a/openair2/F1AP/f1ap_du_rrc_message_transfer.c b/openair2/F1AP/f1ap_du_rrc_message_transfer.c
index 7aa28c0ce6089d4567ca01e80ed8362908f711ee..7feaa4d0fed8e08a8be5d4f6c625fa7e9eab51db 100644
--- a/openair2/F1AP/f1ap_du_rrc_message_transfer.c
+++ b/openair2/F1AP/f1ap_du_rrc_message_transfer.c
@@ -482,12 +482,13 @@ int DU_handle_DL_RRC_MESSAGE_TRANSFER(instance_t       instance,
 	    break;
   	  case DL_DCCH_MessageType__c1_PR_rrcConnectionRelease:
   	    // handle RRCConnectionRelease
+            LOG_I(DU_F1AP,"Received RRCConnectionRelease\n");
   	    break;
   	  case DL_DCCH_MessageType__c1_PR_securityModeCommand:
          LOG_I(DU_F1AP,"Received securityModeCommand\n");
           break; 
   	  case DL_DCCH_MessageType__c1_PR_ueCapabilityEnquiry:
-        LOG_I(DU_F1AP,"Received sueCapabilityEnquiry\n");
+        LOG_I(DU_F1AP,"Received ueCapabilityEnquiry\n");
           break;
   	  case DL_DCCH_MessageType__c1_PR_counterCheck:
   #if (RRC_VERSION >= MAKE_VERSION(10, 0, 0))
diff --git a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
index 69a6ff4612a61ebcef6c5dec031b37428e280638..e1fce9c5f26e8099da67ed72969b91b1233f5ca7 100644
--- a/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
+++ b/openair2/LAYER2/MAC/eNB_scheduler_ulsch.c
@@ -686,7 +686,7 @@ rx_sdu(const module_id_t enb_mod_idP,
           //UE_list->UE_template[CC_idP][UE_id].estimated_ul_buffer += UE_list->UE_template[CC_idP][UE_id].estimated_ul_buffer / 4;
         }
 
-	LOG_I(MAC,
+	LOG_D(MAC,
 	      "[eNB %d] CC_id %d Frame %d : ULSCH -> UL-DCCH, received %d bytes form UE %d on LCID %d \n",
 	      enb_mod_idP, CC_idP, frameP, rx_lengths[i], UE_id,
 	      rx_lcids[i]);
diff --git a/openair2/LAYER2/RLC/rlc.c b/openair2/LAYER2/RLC/rlc.c
index 152820bd87ccefca985350c3fed59dde671462d4..2d2ac9f1e6dd9dc39c82f1a12fdb477875e1b3e9 100644
--- a/openair2/LAYER2/RLC/rlc.c
+++ b/openair2/LAYER2/RLC/rlc.c
@@ -604,15 +604,15 @@ void rlc_data_ind     (
   //-----------------------------------------------------------------------------
 
 
-  //#if defined(TRACE_RLC_PAYLOAD)
-  LOG_I(RLC, PROTOCOL_CTXT_FMT"[%s %u] Display of rlc_data_ind: size %u\n",
+#if defined(TRACE_RLC_PAYLOAD)
+  LOG_D(RLC, PROTOCOL_CTXT_FMT"[%s %u] Display of rlc_data_ind: size %u\n",
         PROTOCOL_CTXT_ARGS(ctxt_pP),
         (srb_flagP) ? "SRB" : "DRB",
         rb_idP,
         sdu_sizeP);
 
   //  rlc_util_print_hex_octets(RLC, (unsigned char*)sdu_pP->data, sdu_sizeP);
-  //#endif
+#endif
 
 #if T_TRACER
   if (ctxt_pP->enb_flag)
diff --git a/openair2/LAYER2/RLC/rlc_mac.c b/openair2/LAYER2/RLC/rlc_mac.c
index ac53afa40bae37daf8cbd3c40984dd4384e9e662..9d540a18e88d323bbbfa297bf76cbaa5a41752fc 100644
--- a/openair2/LAYER2/RLC/rlc_mac.c
+++ b/openair2/LAYER2/RLC/rlc_mac.c
@@ -38,7 +38,7 @@
 #include "assertions.h"
 #include "common/utils/LOG/vcd_signal_dumper.h"
 
-#define DEBUG_MAC_INTERFACE 1
+//#define DEBUG_MAC_INTERFACE 1
 
 //-----------------------------------------------------------------------------
 struct mac_data_ind mac_rlc_deserialize_tb (
@@ -260,7 +260,7 @@ void mac_rlc_data_ind     (
 #ifdef DEBUG_MAC_INTERFACE
 
   if (num_tbP) {
-    LOG_I(RLC, PROTOCOL_CTXT_FMT" MAC_RLC_DATA_IND on channel %d (%d), rb max %d, tb_sizeP %d\n",
+    LOG_D(RLC, PROTOCOL_CTXT_FMT" MAC_RLC_DATA_IND on channel %d (%d), rb max %d, tb_sizeP %d\n",
           PROTOCOL_CTXT_ARGS(&ctxt),
           channel_idP,
           RLC_MAX_LC,
diff --git a/openair2/RRC/LTE/rrc_eNB.c b/openair2/RRC/LTE/rrc_eNB.c
index af8539703036c31041976413e6f97a96c577eadc..f88d870aaea845838c5adc328b03d3b8f26e9ba0 100644
--- a/openair2/RRC/LTE/rrc_eNB.c
+++ b/openair2/RRC/LTE/rrc_eNB.c
@@ -1063,8 +1063,14 @@ void release_UE_in_freeList(module_id_t mod_id)
                 }
               }
             }
-            rrc_mac_remove_ue(mod_id,rnti);
-            rrc_rlc_remove_ue(&ctxt);
+            if (RC.rrc[mod_id]->node_type == ngran_eNB) {
+              rrc_mac_remove_ue(mod_id,rnti);
+              rrc_rlc_remove_ue(&ctxt);
+            }
+            else if (RC.rrc[mod_id]->node_type == ngran_eNB_CU || RC.rrc[mod_id]->node_type == ngran_ng_eNB_CU) {
+              // send UE_CONTEXT_RELEASE
+                AssertFatal(1==0,"Need to added context removal\n");
+            }
             pdcp_remove_UE(&ctxt);
 
             if(remove_UEContext){
@@ -6571,7 +6577,13 @@ rrc_eNB_decode_ccch(
           LOG_I(RRC, PROTOCOL_RRC_CTXT_UE_FMT" Can't create new context for UE random UE identity (0x%" PRIx64 ")\n",
                 PROTOCOL_RRC_CTXT_UE_ARGS(ctxt_pP),
                 random_value);
-	  rrc_mac_remove_ue(ctxt_pP->module_id,ctxt_pP->rnti);
+
+          if (RC.rrc[ctxt_pP->module_id] == ngran_eNB)
+	     rrc_mac_remove_ue(ctxt_pP->module_id,ctxt_pP->rnti);
+          else if (RC.rrc[ctxt_pP->module_id]->node_type == ngran_eNB_CU || 
+                   RC.rrc[ctxt_pP->module_id]->node_type == ngran_ng_eNB_CU)
+             AssertFatal(1==0,"Need to added context removal\n");
+
           return -1;
         }
       }
@@ -8107,7 +8119,8 @@ rrc_rx_tx(
 //          ue_context_p->ue_context.ue_release_timer_s1 = 0;
 #if defined(ENABLE_USE_MME)
 #if defined(ENABLE_ITTI)
-          rrc_eNB_generate_RRCConnectionRelease(ctxt_pP, ue_context_p);
+          if (RC.rrc[ctxt_pP->module_id]->node_type != ngran_eNB_DU)
+            rrc_eNB_generate_RRCConnectionRelease(ctxt_pP, ue_context_p);
 #endif
 #else
           ue_to_be_removed = ue_context_p;
@@ -8141,44 +8154,46 @@ rrc_rx_tx(
            ue_context_p->ue_context.ue_release_timer_thres_rrc = 100;
 #if defined(ENABLE_USE_MME)
 #if defined(ENABLE_ITTI)
-           int      e_rab;
-           MessageDef *msg_complete_p = NULL;
-           MessageDef *msg_delete_tunnels_p = NULL;
-           uint32_t eNB_ue_s1ap_id = ue_context_p->ue_context.eNB_ue_s1ap_id;
-           if(rrc_release_info.RRC_release_ctrl[release_num].flag == 4){
-             MSC_LOG_TX_MESSAGE(
-                    MSC_RRC_ENB,
-                    MSC_S1AP_ENB,
-                     NULL,0,
-                    "0 S1AP_UE_CONTEXT_RELEASE_COMPLETE eNB_ue_s1ap_id 0x%06"PRIX32" ",
-                     eNB_ue_s1ap_id);
-             msg_complete_p = itti_alloc_new_message(TASK_RRC_ENB, S1AP_UE_CONTEXT_RELEASE_COMPLETE);
-             S1AP_UE_CONTEXT_RELEASE_COMPLETE(msg_complete_p).eNB_ue_s1ap_id = eNB_ue_s1ap_id;
-             itti_send_msg_to_task(TASK_S1AP, ctxt_pP->module_id, msg_complete_p);
-           }
-           MSC_LOG_TX_MESSAGE(MSC_RRC_ENB, MSC_GTPU_ENB, NULL,0, "0 GTPV1U_ENB_DELETE_TUNNEL_REQ rnti %x ", eNB_ue_s1ap_id);
-           msg_delete_tunnels_p = itti_alloc_new_message(TASK_RRC_ENB, GTPV1U_ENB_DELETE_TUNNEL_REQ);
-           memset(&GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p), 0, sizeof(GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p)));
+           if (RC.rrc[ctxt_pP->module_id]->node_type != ngran_eNB_DU) {
+              int      e_rab;
+              MessageDef *msg_complete_p = NULL;
+              MessageDef *msg_delete_tunnels_p = NULL;
+              uint32_t eNB_ue_s1ap_id = ue_context_p->ue_context.eNB_ue_s1ap_id;
+              if(rrc_release_info.RRC_release_ctrl[release_num].flag == 4){
+                MSC_LOG_TX_MESSAGE(
+                       MSC_RRC_ENB,
+                       MSC_S1AP_ENB,
+                       NULL,0,
+                       "0 S1AP_UE_CONTEXT_RELEASE_COMPLETE eNB_ue_s1ap_id 0x%06"PRIX32" ",
+                       eNB_ue_s1ap_id);
+                msg_complete_p = itti_alloc_new_message(TASK_RRC_ENB, S1AP_UE_CONTEXT_RELEASE_COMPLETE);
+                S1AP_UE_CONTEXT_RELEASE_COMPLETE(msg_complete_p).eNB_ue_s1ap_id = eNB_ue_s1ap_id;
+                itti_send_msg_to_task(TASK_S1AP, ctxt_pP->module_id, msg_complete_p);
+              }
+              MSC_LOG_TX_MESSAGE(MSC_RRC_ENB, MSC_GTPU_ENB, NULL,0, "0 GTPV1U_ENB_DELETE_TUNNEL_REQ rnti %x ", eNB_ue_s1ap_id);
+              msg_delete_tunnels_p = itti_alloc_new_message(TASK_RRC_ENB, GTPV1U_ENB_DELETE_TUNNEL_REQ);
+              memset(&GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p), 0, sizeof(GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p)));
            // do not wait response
-           GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p).rnti = ue_context_p->ue_context.rnti;
-           for (e_rab = 0; e_rab < ue_context_p->ue_context.nb_of_e_rabs; e_rab++) {
-             GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p).eps_bearer_id[GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p).num_erab++] =
-               ue_context_p->ue_context.enb_gtp_ebi[e_rab];
-             // erase data
-             ue_context_p->ue_context.enb_gtp_teid[e_rab] = 0;
-             memset(&ue_context_p->ue_context.enb_gtp_addrs[e_rab], 0, sizeof(ue_context_p->ue_context.enb_gtp_addrs[e_rab]));
-             ue_context_p->ue_context.enb_gtp_ebi[e_rab]  = 0;
-           }
-           itti_send_msg_to_task(TASK_GTPV1_U, ctxt_pP->module_id, msg_delete_tunnels_p);
-           struct rrc_ue_s1ap_ids_s    *rrc_ue_s1ap_ids = NULL;
-           rrc_ue_s1ap_ids = rrc_eNB_S1AP_get_ue_ids(
-                  RC.rrc[ctxt_pP->module_id],
-                  0,
-                  eNB_ue_s1ap_id);
-           if (NULL != rrc_ue_s1ap_ids) {
-             rrc_eNB_S1AP_remove_ue_ids(
-                        RC.rrc[ctxt_pP->module_id],
-                        rrc_ue_s1ap_ids);
+              GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p).rnti = ue_context_p->ue_context.rnti;
+              for (e_rab = 0; e_rab < ue_context_p->ue_context.nb_of_e_rabs; e_rab++) {
+                GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p).eps_bearer_id[GTPV1U_ENB_DELETE_TUNNEL_REQ(msg_delete_tunnels_p).num_erab++] =
+                  ue_context_p->ue_context.enb_gtp_ebi[e_rab];
+                // erase data
+                ue_context_p->ue_context.enb_gtp_teid[e_rab] = 0;
+                memset(&ue_context_p->ue_context.enb_gtp_addrs[e_rab], 0, sizeof(ue_context_p->ue_context.enb_gtp_addrs[e_rab]));
+                ue_context_p->ue_context.enb_gtp_ebi[e_rab]  = 0;
+              }
+              itti_send_msg_to_task(TASK_GTPV1_U, ctxt_pP->module_id, msg_delete_tunnels_p);
+              struct rrc_ue_s1ap_ids_s    *rrc_ue_s1ap_ids = NULL;
+              rrc_ue_s1ap_ids = rrc_eNB_S1AP_get_ue_ids(
+                     RC.rrc[ctxt_pP->module_id],
+                     0,
+                     eNB_ue_s1ap_id);
+              if (NULL != rrc_ue_s1ap_ids) {
+                rrc_eNB_S1AP_remove_ue_ids(
+                           RC.rrc[ctxt_pP->module_id],
+                           rrc_ue_s1ap_ids);
+              }
            }
 #endif
 #endif