Skip to content

gNB: fix NTN UL retransmissions

Re-add to consider the cellSpecificKoffset_r17 for UL retransmissions. This got lost in commit c8387d70

Without this fix, we get error messages like these when UL retransmissions would be scheduled:

[NR_MAC]   Unexpected ULSCH HARQ PID 0 (have 1) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 0 (have 3) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 1 (have 4) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 0 (have 3) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 3 (have 4) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 3 (have 1) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 1 (have 5) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 1 (have 4) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 1 (have -1) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 3 (have 5) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 3 (have -1) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 4 (have 5) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 4 (have -1) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 5 (have 6) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 5 (have -1) for RNTI 0x9eac
[NR_MAC]   Unexpected ULSCH HARQ PID 6 (have 7) for RNTI 0x9eac

This can be seen e.g. when artificially introducing UL reception errors like this:

diff --git a/openair1/SCHED_NR/phy_procedures_nr_gNB.c b/openair1/SCHED_NR/phy_procedures_nr_gNB.c
index 8da471f4c1..7fb0d04781 100644
--- a/openair1/SCHED_NR/phy_procedures_nr_gNB.c
+++ b/openair1/SCHED_NR/phy_procedures_nr_gNB.c
@@ -426,6 +426,11 @@ static int nr_ulsch_procedures(PHY_VARS_gNB *gNB, int frame_rx, int slot_rx, boo
       }
     }
 
+#if 1
+    if (drand48() * 100 < 10)
+      crc_valid = false;
+#endif
+
     nfapi_nr_crc_t *crc = &UL_INFO->crc_ind.crc_list[UL_INFO->crc_ind.number_crcs++];
     nfapi_nr_rx_data_pdu_t *pdu = &UL_INFO->rx_ind.pdu_list[UL_INFO->rx_ind.number_of_pdus++];
     if (crc_valid && !check_abort(&ulsch_harq->abort_decode) && !pusch->DTX) {

Merge request reports

Loading