diff --git a/executables/nr-ue.c b/executables/nr-ue.c
index d6aa1b5269ca78992ed4320d211382f4d9b80aed..01f18dc38d60f5a40277b0c850ff8d39cee5d6cc 100644
--- a/executables/nr-ue.c
+++ b/executables/nr-ue.c
@@ -815,6 +815,11 @@ void *UE_thread(void *arg)
 
   if (get_softmodem_params()->sync_ref && UE->sl_mode == 2) {
     UE->is_synchronized = 1;
+  } else {
+    //warm up the RF board 
+    int64_t tmp;
+    for (int i = 0; i < 50; i++)
+      readFrame(UE, &tmp, true);
   }
 
   while (!oai_exit) {
diff --git a/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c b/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c
index 88e77b0840ee4489e27b16529e52af994b8f1aaa..1d0d85ec5447e202b478905963715ecfa6ad9e78 100644
--- a/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c
+++ b/openair1/PHY/NR_UE_TRANSPORT/nr_initial_sync.c
@@ -202,7 +202,7 @@ void nr_scan_ssb(void *arg)
     /* process pss search on received buffer */
     ssbInfo->syncRes.frame_id = frame_id;
     int nid2;
-    int freq_offset_pss;
+    int freq_offset_pss = 0;
     const int sync_pos = pss_synchro_nr((const c16_t **)rxdata,
                                         fp,
                                         pssTime,