diff --git a/openair2/PHY_INTERFACE/phy_stub_UE.c b/openair2/PHY_INTERFACE/phy_stub_UE.c
index 747a80a02f56a391d01d74ed327f4c9dbaa9add7..528608105550d394b81d3e1dc31fdd01b63dcb24 100644
--- a/openair2/PHY_INTERFACE/phy_stub_UE.c
+++ b/openair2/PHY_INTERFACE/phy_stub_UE.c
@@ -493,7 +493,9 @@ void handle_nfapi_ul_pdu_UE_MAC(module_id_t Mod_id,
     		fill_crc_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, 0);
     		fill_rx_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, UE_mac_inst[Mod_id].RA_prach_resources.Msg3,buflen, rnti);
     		Msg3_transmitted(Mod_id, 0, frame, 0);
-    		UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
+
+    		// Panos: This should be done after the reception of the respective hi_dci0
+    		//UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
     	}
     	else {
     		ue_get_sdu( Mod_id, 0, frame, subframe, 0, ulsch_buffer, buflen, &access_mode);
@@ -516,7 +518,7 @@ void handle_nfapi_ul_pdu_UE_MAC(module_id_t Mod_id,
 			  fill_crc_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, 0);
 			  fill_rx_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, UE_mac_inst[Mod_id].RA_prach_resources.Msg3,buflen, rnti);
 			  Msg3_transmitted(Mod_id, 0, frame, 0);
-			  UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
+			  //UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
 		  }
 		  else {
 			  ue_get_sdu( Mod_id, 0, frame, subframe, 0, ulsch_buffer, buflen, &access_mode);
@@ -544,7 +546,7 @@ void handle_nfapi_ul_pdu_UE_MAC(module_id_t Mod_id,
 			  fill_crc_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, 0);
 			  fill_rx_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, UE_mac_inst[Mod_id].RA_prach_resources.Msg3,buflen, rnti);
 			  Msg3_transmitted(Mod_id, 0, frame, 0);
-			  UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
+			  //UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
 		  }
 		  else {
 			  ue_get_sdu( Mod_id, 0, frame, subframe, 0, ulsch_buffer, buflen, &access_mode);
@@ -571,7 +573,7 @@ void handle_nfapi_ul_pdu_UE_MAC(module_id_t Mod_id,
 			  fill_crc_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, 0);
 			  fill_rx_indication_UE_MAC(Mod_id, frame, subframe, UL_INFO, UE_mac_inst[Mod_id].RA_prach_resources.Msg3,buflen, rnti);
 			  Msg3_transmitted(Mod_id, 0, frame, 0);
-			  UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
+			  //UE_mac_inst[Mod_id].first_ULSCH_Tx = 0;
 		  }
 		  else {
 			  ue_get_sdu( Mod_id, 0, frame, subframe, 0, ulsch_buffer, buflen, &access_mode);
diff --git a/targets/RT/USER/lte-ue.c b/targets/RT/USER/lte-ue.c
index f3c28546c1ac763dde254afdfc6118c16c43ffdd..9da164d41ece4e0b36982a576b21f6b3c680f080 100644
--- a/targets/RT/USER/lte-ue.c
+++ b/targets/RT/USER/lte-ue.c
@@ -648,6 +648,8 @@ static void *UE_thread_rxn_txnp4(void *arg) {
             // Hardcode Mod_id for now. Will be changed later.
 
             if(nfapi_mode == 3){
+            	// Panos: is this the right place to call oai_subframe_indication to invoke p7 nfapi callbacks here?
+            	//oai_subframe_insdication()
             	if(UE_mac_inst[Mod_id].tx_req)
             		tx_req_UE_MAC(UE_mac_inst[Mod_id].tx_req);
             	if(UE_mac_inst[Mod_id].dl_config_req)
@@ -778,6 +780,10 @@ void *UE_thread(void *arg) {
 #endif
 
     int sub_frame=-1;
+    if(nfapi_mode==3) {
+    	phy_stub_ticking->ticking_var = -1;
+    }
+
     //int cumulated_shift=0;