1. 17 Mar, 2026 6 commits
  2. 13 Mar, 2026 4 commits
    • Robert Schmidt's avatar
      Merge branch 'fixes-xnap' into 'develop' (!3985) · fdb6b44b
      Robert Schmidt authored
      Fix XNAP to avoid recompilation and unnecessary includes
      
      See merge request oai/openairinterface5g!3985
      fdb6b44b
    • Robert Schmidt's avatar
      Move xnap lib back to openair2/XNAP/ · 19d1fe16
      Robert Schmidt authored
      Remove the ITTI header, because it would trigger compilation errors (we
      don't link in LTE/NR RRC headers), but we don't actually need it.
      19d1fe16
    • Robert Schmidt's avatar
      Correct list of XNAP ASN.1 files generated by asn1c · 2eacb82d
      Robert Schmidt authored
      Notably, remove asn_codecs_prim_xer.h from the list of files, triggering
      problems when re-running ninja, because the "canonical OAI asn1c"
      (https://github.com/mouse07410/asn1c, commit ID
      940dd5fa9f3917913fd487b13dfddfacd0ded06e) does not generate it:
      
          ninja explain: output openair2/XNAP/MESSAGES/asn_codecs_prim_xer.h doesn't exist
      
      In this version, a couple of files are not generated, so remove them
      from the list.
      
      Also, leave the files in the order as shown by ls.
      2eacb82d
    • Robert Schmidt's avatar
      Merge branch 'integration_2026_w11' into 'develop' · c1462838
      Robert Schmidt authored
      Integration `2026.w11`
      
      * !3864 remove xran_fh_tx_send_slot_BySymbol() and xran_fh_rx_read_slot_BySymbol()
      * !3967 Harmonize the use of definition for number of symbols per slot
      * !3971 Limit dl_DataToUL_ACK values to 15 as per standard
      * !3414 Added NTN-FR2 FDD bands defined in release 18 in Ka-band range
      * !3919 Reduce number of mutex locking in MAC->RLC direction
      * !3923 XNAP: Add encode/decode and unit tests for Xn Setup Request/Response/Failure
      * !3965 Enable BladeRF support in gNB Docker image
      * !3904 add multi-ue support to vrtsim
      * !3980 SDR reordering: correct warning, and USRP: return samples written
      * !3834 Use flat buffer for txdataF in gNB L1
      * !3981 Bugfix: make longer telnet cmdfunc names
      * Reduce timing reference value for feptx_total in 40 MHz phytest
      
      See merge request oai/openairinterface5g!3976
      c1462838
  3. 12 Mar, 2026 7 commits
    • Jaroslava Fiedlerova's avatar
      Reduce timing reference value for feptx_total in 40 MHz phytest · 96511595
      Jaroslava Fiedlerova authored
      The reduction reflects improved feptx_total performance introduced in !3834.
      96511595
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/telnet-longer-command-names' into integration_2026_w11 (!3981) · e734f0a6
      Jaroslava Fiedlerova authored
      Bugfix: make longer telnet cmdfunc names
      
      The maximum number of cmdfunc names is 20, which IMO is too low. Worse, if it's
      longer, nothing will warn us because C will just fill the array to it's end
      (without \0 at the end). To remedy this:
      
      - Allow longer names till 64 bytes (I hit the previous limit of 20)
      - Check that the name is within the length limit: if somebody wants a very long
        name, the strnlen() will return the maximum length, hitting that assertion.
      - When reading a command during runtime, allow the corresponding maximum length.
      
      On that occasion, also increase total number of permitted cmdfuncs.
      e734f0a6
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/gnb-txdataF-flatbuff' into integration_2026_w11 (!3834) · 592cb8ac
      Jaroslava Fiedlerova authored
      Use flat buffer for txdataF in gNB L1
      
      This MR changes txdataF buffer format to hold freq domain data starting from
      PRB0 instead of circular buffer that starts from PRB N/2. The motive is to
      simplify RE mapping function in L1 and copying data to xran lib.
      592cb8ac
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/fix-reorder-errors' into integration_2026_w11 (!3980) · 6fa541fe
      Jaroslava Fiedlerova authored
      SDR reordering: correct warning, and USRP: return samples written
      
      See commits for more information.
      6fa541fe
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/vrtsim-multi-ue' into integration_2026_w11 (!3904) · 888d4a91
      Jaroslava Fiedlerova authored
      add multi-ue support to vrtsim
      
      Summary
      Extending vrtsim to support multiple UEs with per-UE channel emulation using
      CIRDB. Each UE can have different antenna configurations and independent
      channel conditions (TDL models, delay spreads, and mobility speeds). This
      includes:
      - Add num_ues and ue_id parameters for server and client configuration
      - Implement antenna offset multiplexing for UL combining and DL distribution
      - Support heterogeneous antenna configurations across UEs (e.g., UE0: 1x2,
        UE1: 2x2)
      - Integrate CIRDB for per-UE channel modeling with independent TDL models,
        delay spreads, and speeds
      - Replace comma-separated per-UE params with structured ue_config blocks for
        cleaner configuration
      
      Usage:
      * Start 5G core network
          cd openairinterface5g/doc/tutorial_resources/oai-cn5g
          docker-compose up -d
      
      * Create network namespaces
          sudo ip netns add ue0
          sudo ip netns add ue1
      
      * Start gNB (2x2 with multi-UE CIRDB)
          sudo ./nr-softmodem -O ../../ci-scripts/conf_files/gnb.sa.band78.106prb.vrtsim.2x2.yaml --device.name vrtsim --vrtsim.role server --vrtsim.num_ues 2 --vrtsim.cirdb 1 --vrtsim.cirdb_file ~/raytracing-channel-emulator/server/external_taps/cir_db.bin --vrtsim.cirdb_yaml ~/raytracing-channel-emulator/server/external_taps/cir_db.yaml --vrtsim.ue_config.[0].antennas "1x2" --vrtsim.ue_config.[0].model_id 0 --vrtsim.ue_config.[0].ds_ns 10.0 --vrtsim.ue_config.[0].speed_mps 1.5 --vrtsim.ue_config.[1].antennas "2x2" --vrtsim.ue_config.[1].model_id 1 --vrtsim.ue_config.[1].ds_ns 30.0 --vrtsim.ue_config.[1].speed_mps 30.0
      
      * Start UE 0 (1x2 antennas, TDL-A, 10ns DS, 1.5 m/s)
          sudo ip netns exec ue0 ./nr-uesoftmodem -O ../../ci-scripts/conf_files/nrue.vrtsim.chanmod.yaml -C 3319680000 -r 106 --numerology 1 --ssb 516 --device.name vrtsim --vrtsim.role client --vrtsim.ue_id 0 --band 78 --ue-nb-ant-tx 1 --ue-nb-ant-rx 2 --uicc0.imsi 001010000000001
      
      * Start UE 1 (2x2 antennas, TDL-B, 30ns DS, 30 m/s)
          sudo ip netns exec ue1 ./nr-uesoftmodem -O ../../ci-scripts/conf_files/nrue.vrtsim.chanmod.yaml -C 3319680000 -r 106 --numerology 1 --ssb 516 --device.name vrtsim --vrtsim.role client --vrtsim.ue_id 1 --band 78 --ue-nb-ant-tx 2 --ue-nb-ant-rx 2 --uicc0.imsi 001010000000002
      888d4a91
    • Merkebu Girmay's avatar
      694f7bea
    • Merkebu Girmay's avatar
      add multi-ue support to vrtsim · fa72a30b
      Merkebu Girmay authored
      - Add num_ues and ue_id parameters for server and client configuration
      - Implement ul combining and dl distribution to all ues
      - Each ue uses dedicated antenna offsets based on ue_id
      - Works with no-chanmod mode only and with uniform antenna dimensions across all ues
      fa72a30b
  4. 11 Mar, 2026 5 commits
  5. 10 Mar, 2026 12 commits
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/xn-encdec-setup-messages' into integration_2026_w11 (!3923) · 968c5aba
      Jaroslava Fiedlerova authored
      XNAP: Add encode/decode and unit tests for Xn Setup Request/Response/Failure
      
      This MR adds complete support for the following in accordance with
      3GPP TS 38.423 v16.2.0
      - Add Xn Setup Request, Response, and Failure message type definitions
      - Implement ASN.1 encode/decode for all Xn Setup messages
      - Add equality checks and memory management helpers
      - Create XNAP unit test infrastructure
      
      Co-author: @venkatareddy
      
      Acknowledgement
        This work was carried out as part of research and development at Indian
        Institute of Science (IISc), Bengaluru.
      968c5aba
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/rlc-less-locking' into integration_2026_w11 (!3919) · 8556a148
      Jaroslava Fiedlerova authored
      Reduce number of mutex locking in MAC->RLC direction
      
      Currently, the scheduler locks RLC for each operation. Concretely
      - for RLC status indication (to get amount of bytes per LC), it locks per LC
      - for RLC indication (UL traffic), it locks for each MAC SDU of which there can
        be multiple in a TB
      - for RLC data req (getting data from RLC to put into a transport block), it
        locks for each LCID and PDU to get.
      This can have a certain overhead, because we need to re-lock RLC multiple times
      instead of once (per operation above). In this MR, rework the interfaces such
      that it is possible to get all information/data in a single lock-unlock cycle,
      which should also help with "spikes" of scheduler times (in some scenarios, it
      seems the scheduler takes longer than 0.5ms, and while it's not only locking,
      re-locking might contribute), and an increase of number of UEs (e.g., instead
      of doing 3 * N UEs lock cycles for getting status of SRB1, SRB2, DRB1, we do
      only N times). Concretely, for each UEs RLC status indication, we lock once,
      only once per LCID when filling a TB (in particular for LCID 4, on high
      throughput, it might be many times), and only once per UL TB (for the common
      case of UL data).
      
      Minor fixes include the increase of the Aerial VNF thread priority, and reducing
      the maximum RLC indication size to reduce excessive computation (we can't have
      1MB in one TB, it is too much).
      8556a148
    • Robert Schmidt's avatar
      reduce max buffer status size · 17d1e567
      Robert Schmidt authored
      17d1e567
    • Robert Schmidt's avatar
      increase priority of Aerial thread · 4c9b7ec6
      Robert Schmidt authored
      4c9b7ec6
    • Robert Schmidt's avatar
      RLC data req: Add API to fill multiple RLC PDUs in one TB, use at gNB · 4426fb1a
      Robert Schmidt authored
      Adds the API, which will always prepend a 3 byte header before writing a
      PDU. This can be used to call less often into RLC, and avoid potential
      locking.
      
      The API is used at the gNB DLSCH scheduler.  Also, this removes the
      "overhead" calculation: since we fill the entire TB at once, RLC will
      leave space for headers as necessary.
      4426fb1a
    • Robert Schmidt's avatar
      c0a78e6c
    • Robert Schmidt's avatar
      2e049363
    • Rakesh BB's avatar
      XNAP: add encode/decode and unit test for Xn Setup Failure · e34cb240
      Rakesh BB authored
        - Add Xn Setup Failure message type definitions.
        - Implement encoder and decoder for Xn Setup Failure.
            Xn Setup Failure (3GPP TS 38.423v16.2.0 §9.1.3.3)
            - Cause (M)
        - Add equality check and memory management helpers.
        - Extend XNAP library unit tests to cover Setup Failure
      e34cb240
    • Rakesh BB's avatar
      XNAP: add encode/decode and unit test for Xn Setup Response · 467015e0
      Rakesh BB authored
      - Add Xn Setup Response message type definitions
      - Implement encoder and decoder for Xn Setup Response
           Xn Setup Response (3GPP TS 38.423v16.2.0 §9.1.3.2)
         - Global NG-RAN Node ID (M)
         - TAI Support List (M)
      - Add equality check and memory management helpers
      - Extend XNAP library unit tests to cover Setup Response
      467015e0
    • Rakesh BB's avatar
      XNAP: Introduce XnAP library framework and add encode/decode, unit test for Xn Setup Request · 08b454bd
      Rakesh BB authored
        - Add initial XnAP library structure under openair2/XNAP/lib
        - Implement common XnAP helper utilities (xnap_lib_common)
        - Add gNB interface management module for Xn Setup procedures
        - Introduce XnAP message type definitions in xnap_messages_types.h
        - Integrate XnAP library into build system (CMakeLists.txt)
        - Add standalone XnAP library unit test (xnap_lib_test)
        - Implement encoder, decoder + test for Xn Setup Request
           Xn Setup Request (3GPP TS 38.423v16.2.0 §9.1.3.1)
      	- Global NG-RAN Node ID (M)
      	- TAI Support List (M)
      	- AMF Region Information (M)
        - Extend conversions.h with MACRO_BIT_STRING_TO_GNB_ID utility
      Co-authored-by: default avatarSreeshma Shiv <sreeshmau@iisc.ac.in>
      08b454bd
    • Rakesh BB's avatar
      XNAP: add logging support and update ASN.1 runtime sources · 5d9f7b41
      Rakesh BB authored
        - Add XNAP component to the logging framework in log.h
        - Introduce LEGACY_XNAP log message definitions (INFO, ERROR, WARNING, DEBUG, TRACE)
          in T_messages.txt for tracing and debugging XNAP procedures
        - Update xnap_R16.2.0.cmake formatting for consistency
        - Add missing ASN.1 runtime sources required by XNAP (e.g. asn_codecs_prim_xer.c,
          BIT_STRING_print.c, BIT_STRING_rfill.c, etc.)
      5d9f7b41
    • Jaroslava Fiedlerova's avatar
      Merge remote-tracking branch 'origin/NTN_FR2_bands' into integration_2026_w11 (!3414) · ee8de3ea
      Jaroslava Fiedlerova authored
      Added NTN-FR2 FDD bands defined in release 18 in Ka-band range
      
      * NTN-FR2 bands 510, 511, 512 added. TS 38.101-5 v 18.9 defines these 3 FR2-FDD
        bands for NTN operation.
      * These bands are defined in Ka band range (17.3Ghz - 31Ghz).
      * Tested using the added conf files using RFSIM and GEO configuration.
      * There were some inconsistencies observed when testing with RFSimulator before UE
        Syncs to the gNB in terms of samples being written for FR2 configurations. Once
        the UE syncs, the inconsistencies disappear.
      * this is the problem - UE writes incorrect number of samples and gNB complains
        about getting samples in past
      * The above inconsistencies were also fixed in this merge request.
      * These commits solving above inconsistencies were removed from this MR and a
        different MR was raised. MR with those commits: !3928.
      ee8de3ea
  6. 09 Mar, 2026 6 commits