diff --git a/openair1/PHY/NR_TRANSPORT/nr_pbch.c b/openair1/PHY/NR_TRANSPORT/nr_pbch.c
index fa6aedf4184b671eb45c078b132f809f1f3fe899..842f35ae524baaf39c299ae9055591072be7a1bc 100644
--- a/openair1/PHY/NR_TRANSPORT/nr_pbch.c
+++ b/openair1/PHY/NR_TRANSPORT/nr_pbch.c
@@ -129,8 +129,8 @@ int nr_generate_pbch_dmrs(uint32_t *gold_pbch_dmrs,
 }
 
 void nr_pbch_scrambling(uint32_t Nid,
-                        uint8_t *pbch_a,
                         uint8_t nushift,
+                        uint8_t *pbch_a,
                         uint32_t length)
 {
   uint8_t reset;
@@ -268,8 +268,10 @@ int nr_generate_pbch(NR_gNB_PBCH *pbch,
         k-=frame_parms->ofdm_symbol_size;
     }
 
-    k+=145;
-    l++;
+    k += 144;
+    if (k >= frame_parms->ofdm_symbol_size)
+      k-=frame_parms->ofdm_symbol_size;
+
     m=216;
 
     for (int ssb_sc_idx = 192; ssb_sc_idx < 240; ssb_sc_idx++) {
diff --git a/openair1/PHY/NR_TRANSPORT/nr_transport.h b/openair1/PHY/NR_TRANSPORT/nr_transport.h
index 2b674deeb6b8596a23e987fb3beb016d7daba4f7..58a4344e9dea09b2d1ed44f4629a06cda20d2c75 100644
--- a/openair1/PHY/NR_TRANSPORT/nr_transport.h
+++ b/openair1/PHY/NR_TRANSPORT/nr_transport.h
@@ -72,8 +72,8 @@ int nr_generate_pbch_dmrs(uint32_t *gold_pbch_dmrs,
 @param
  */
 void nr_pbch_scrambling(uint32_t Nid,
-                        uint8_t *pbch_a,
                         uint8_t nushift,
+                        uint8_t *pbch_a,
                         uint32_t length);
 
 /*!