diff --git a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
index 0d32353bc985771da11523856e14fbaa0e25d641..4c17ee3a0fb9c73e3b57e08792a5d93efc4aadc9 100644
--- a/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
+++ b/openair2/LAYER2/NR_MAC_gNB/gNB_scheduler_RA.c
@@ -437,7 +437,7 @@ void nr_add_msg3(module_id_t module_idP, int CC_id, frame_t frameP, sub_frame_t
   NR_UE_list_t                               *UE_list = &mac->UE_list;
   int UE_id = 0;
 
-  if (ra->state != RA_IDLE) {
+  if (ra->state == RA_IDLE) {
     LOG_W(MAC,"RA is not active for RA %X. skipping msg3 scheduling\n", ra->rnti);
     return;
   }