Andre Puschmann
d6ef66b0dc
mac_test: add periodic BSR test
2020-10-28 12:05:53 +01:00
Andre Puschmann
d5286e70aa
proc_bsr: refactor and add extra print_state() method
...
allows to call the print_state() routine from other places in the BSR
2020-10-28 12:05:53 +01:00
Andre Puschmann
d1ef5bd915
demux: log DL PDUs
...
instead of just printing the LCIDs that contain SDUs,
we use the to_string() function to log the entire MAC DL-SCH PDU
2020-10-28 12:05:53 +01:00
Andre Puschmann
0740154bff
rrc,sync: fix two uninit vars
...
detected by Valgrind when running UE with TDD cell
2020-10-25 14:42:30 +01:00
Andre Puschmann
58776bc227
ue,sync: increase timeout for entering IDLE to 2s ( #1941 )
...
in ZMQ runs we've seen that entering idle could take quite
a bit of time depending how quickly workers get their samples
sent or reconfigurations done.
In one example up to ~160ms
this patch increases the maximum wait time to 2s.
2020-10-22 22:13:03 +02:00
Francisco Paisana
514deaf25b
fix resetting of phy and mac during reestablishment
2020-10-22 19:55:46 +02:00
Xavier Arteaga
03b88f6149
Added noise to neighbour cell search test
2020-10-20 11:53:28 +02:00
Xavier Arteaga
caf37b8e62
Added serving cell index in UCI/CSI report trace
2020-10-20 11:53:28 +02:00
Andre Puschmann
3b1ae970b9
metrics_test: fix uninit variable
2020-10-18 15:56:16 +02:00
Andre Puschmann
a366500a78
rrc_proc: init cs_result to none
...
detected by Coverity CID 363053
2020-10-18 15:56:16 +02:00
Andre Puschmann
d51a060bfa
nas_test: fix potential out of bounds access
2020-10-18 15:56:16 +02:00
Andre Puschmann
1bbbc9d717
rrc_phy_ctrl_test: fix uninit memory
2020-10-18 15:56:16 +02:00
Francisco Paisana
0842ed9db1
fixed phy cell selection state update for the fail path
2020-10-16 15:54:42 +01:00
Francisco Paisana
665b3996bb
now the phy controller handles the scenario where the phy cell selection failed to be initialized
2020-10-16 15:54:42 +01:00
Andre Puschmann
287c653755
proc_bsr: improve BSR logging to print name of triggered BSR instead of enum
2020-10-16 09:16:54 +02:00
Andre Puschmann
3994407f46
proc_bsr: fix BSR insertion in UL PDUs
...
the BSR trigger wasn't reset after includinga regular or periodic
BSR inside a PDU. This caused the muxing to include another BSR in the
next UL grant. For very small grants, for example with 6 PRBs, this
causes the UE to send way too many BSRs.
2020-10-15 11:52:13 +02:00
Andre Puschmann
7352bfa4bd
mac_test: add unit test for retxBSR timer
...
this test varifies the correct operation of the retxBSR timer.
the first PDU includes a long BSR to indicate more LCGs have
data to transmit. The retxBSR timer is started and subsequent
PDUs should not send a regular BSR.
After the retxBSR timer expires, a UL PDU should again include
a BSR.
2020-10-15 11:52:13 +02:00
Andre Puschmann
937067a205
proc_phr: rename start_periodic_timer() and make sure its only started if a valid config is present
2020-10-13 17:38:45 +02:00
Andre Puschmann
fab86382c1
mac,rrc: add interface to set SR config explicitly without touching any other MAC function
...
when releasing PUCCH/SRS (see 5.3.13 in 36.331) we need to reset the SR config as well.
In our case, SR is handled by MAC so we need to (re-)configure MAC, not all of
MAC though, just SR.
2020-10-13 17:38:45 +02:00
Francisco Paisana
e7239163e9
silence noisy unhandled in_sync_ev logs
2020-10-12 18:24:14 +01:00
Francisco Paisana
f185272367
added comments explaining the meaning of the cell reselection procedures
2020-10-12 13:42:46 +01:00
Francisco Paisana
49e7b8e36e
- Change periodicity of cell reselection after a new serving cell has been selected
...
- Enable PHY intra measurements during RRC_IDLE
2020-10-12 13:42:46 +01:00
Francisco Paisana
585d7c923a
refactor and simplification of cell selection procedure. Using now a SIB3 threshold to decide whether to select neighbor cell while in RRC_IDLE
2020-10-12 13:42:46 +01:00
Francisco Paisana
cae116932b
rewrite the rrc::leave_connected() function to better match the standard. The measurements should not stop while in RRC_IDLE.
2020-10-08 10:51:18 +01:00
Pedro Alvarez
5a4e71a6e4
Created k_enb_context structure that holds k_enb, NCC and NH to make it easier to restore context from failed handover.
2020-10-08 09:46:34 +01:00
Pedro Alvarez
bcb422736c
Save and restore NH on handover and handover failure.
2020-10-08 09:46:34 +01:00
Xavier Arteaga
08e24d00af
Fix TA console trace
2020-10-08 09:21:00 +02:00
Pedro Alvarez
3eb525563a
Fix issue reading MNC length in USIM.
2020-10-07 10:04:50 +01:00
Xavier Arteaga
6ae47b6510
SRSUE: Deafult PUCCH/SRS does not imply full PHY dedicated defaults
2020-10-07 09:58:23 +02:00
Andre Puschmann
5e95fd4a43
ul_harq: reduce log level for new_grant_ul() if RNTI isn't found
...
this avoid logging a warning on UE shutdown if the MAC is already reset
but one of the PHY workers still decodes an UL grant for the old RTNI
21:30:29.254844 [RRC ] [I] Going RRC_IDLE
21:30:29.254848 [RRC ] [I] Proc "Go Idle" - Left connected state
21:30:29.259499 [PHY0] [I] [ 3865] Finished setting new PHY configuration cc_idx=0
21:30:29.259512 [PHY0] [I] [ 3865] Setting new PHY configuration cc_idx=0...
21:30:29.264190 [PHY0] [I] [ 3867] Finished setting new PHY configuration cc_idx=0
21:30:29.275036 [PHY1] [I] [ 3872] PHICH: hi=1, corr=1.0, I_lowest=1, n_dmrs=0, I_phich=0
21:30:29.275050 [MAC ] [W] [ 3872] Received grant for unknown rnti=0x46
2020-10-06 20:51:46 +02:00
Andre Puschmann
362461329a
rrc: improve log message when detecting RLF
2020-10-06 20:51:46 +02:00
Andre Puschmann
76c648106f
rrc: remove varMeasState for unknown neighbor cells
...
this fixes issue #1846 that appears to be related
to the enter/exit state for measurements that is kept
even after a cell disappears from the neighbor list
2020-10-06 16:28:09 +02:00
Andre Puschmann
829dfc4e60
metrics_stdout: fix precision calculation for 100%
...
the precision for 100% was causing the default value of -1 which in turn
cause to print the full precision resulting in ugly stdout plots.
before:
--------Signal--------------DL-------------------------------------UL----------------------
cc pci rsrp pl cfo mcs snr turbo brate bler ta_us mcs buff brate bler
0 0 -10 74 0.0 0.0 0.0 0.0 200k 0% 0.0 0.0 0.0 0.0 0%
1 0 0.0 0.0 0.0 0.0 0.0 0.0 150k100.000000% 0.0 0.0 0.0 0.0 0%
after:
--------Signal--------------DL-------------------------------------UL----------------------
cc pci rsrp pl cfo mcs snr turbo brate bler ta_us mcs buff brate bler
0 0 -10 74 0.0 0.0 0.0 0.0 200k 0% 0.0 0.0 0.0 0.0 0%
1 0 0.0 0.0 0.0 0.0 0.0 0.0 150k 100% 0.0 0.0 0.0 0.0 0%
2020-10-05 22:42:04 +02:00
Andre Puschmann
e72219789e
ul_harq: don't clear payload buffer during HARQ reset
...
this fixes #1791 which was caused by a race between
the PHY workers preparing a new UL-SCH PDU and the Stack resetting
the MAC, which in turn resets the HARQ processeses, which cleared
the buffer and set the length to zero.
Not explicitly clearing the buffer on a HARQ reset seems to be
fine since the PHY worker clears the buffer before starting to
pack a new PDU anyway.
2020-10-05 22:41:12 +02:00
Pedro Alvarez
22a6dc305f
Moved common variables and functions from the usim and pcsc_usim classes into usim_base class.
2020-10-05 12:14:46 +01:00
Francisco Paisana
8a917bdd06
fix RRC phy controller call to phy->set_config. Only the PCell was being configured
2020-10-05 12:08:16 +01:00
Francisco Paisana
4ebe92f6a3
refactor phy configuration in the rrc to keep track of activated scells, and cells configurations
2020-10-02 18:50:29 +01:00
Francisco Paisana
cfc77118d3
disable console print of scell activation command during handover
2020-10-02 18:50:29 +01:00
Francisco Paisana
d910c910a4
rrc::meas_cell now uses stack timers instead of system timers.
2020-10-02 17:53:02 +01:00
Francisco Paisana
49ad1a4312
added unit test for meas cells
2020-10-02 17:53:02 +01:00
Francisco Paisana
023d32975a
avoid use of pointers to meas_cells in ho_proc as they may become dangling
2020-10-02 17:53:02 +01:00
Francisco Paisana
072b7be582
renamed rrc::cell_t to rrc::meas_cell
2020-10-02 17:53:02 +01:00
Andre Puschmann
d02e8135fb
metrics_stdout: reset n_reports var after writing intermediate table header
2020-10-02 17:00:19 +02:00
Andre Puschmann
0ef8e1fdac
rrc: include pci when logging serving cell measurement
...
this should facilitate easier log parsing and plotting
if the cell measurements _always_ include the PCI, even
in the case of the serving cell
15:49:11.357447 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=+0.1 Hz
15:49:11.391610 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.4 Hz
15:49:11.427325 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.6 Hz
15:49:11.463101 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.7 Hz
15:49:11.499817 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.51 dBm, cfo=+0.1 Hz
15:49:11.499828 [RRC ] [I] MEAS: New measurement neighbour cell: earfcn=2850, pci=0, rsrp=-12.16 dBm, cfo=-0.8 Hz
15:49:11.535027 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.46 dBm, cfo=-0.8 Hz
15:49:11.571707 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.46 dBm, cfo=-0.9 Hz
15:49:11.607932 [RRC ] [I] MEAS: New measurement serving cell: earfcn=0, pci=1, rsrp=-11.52 dBm, cfo=-0.8 Hz
2020-10-01 20:15:41 +02:00
Andre Puschmann
6e0abd30dd
ue,phy_common: include Pcell PCI in cell measurements
...
this allows easier plotting in RRC when PHY cell
measurements already include the PCI
2020-10-01 20:15:41 +02:00
Andre Puschmann
baf171d446
rrc: improve SR configuration logging
...
* move logging of SR max attempts into MAC logging
* log new MAC config whenever it is updated
2020-10-01 20:12:19 +02:00
Andre Puschmann
bf7c2b800e
proc_sr: log error when trying to enable faulty SR config
2020-10-01 20:12:19 +02:00
Andre Puschmann
04acc78c7d
metrics_test: add neighbor cell test
...
cleanup test and add neighbor cells so the displaying is tested
--------Signal--------------DL-------------------------------------UL----------------------
cc pci rsrp pl cfo mcs snr turbo brate bler ta_us mcs buff brate bler
0 0 -10 74 0.0 0.0 0.0 0.0 200k 0% 0.0 0.0 0.0 0.0 0%
1 0 0.0 0.0 0.0 0.0 0.0 0.0 150k 50% 0.0 0.0 0.0 0.0 0%
--------Signal-------------Neighbour--DL-------------------------------------UL----------------------
cc pci rsrp pl cfo pci rsrp mcs snr turbo brate bler ta_us mcs buff brate bler
0 0 -10 74 0.0 8 -33 0.0 0.0 0.0 200k 0% 0.0 0.0 0.0 0.0 0%
1 0 0.0 0.0 0.0 8 -33 0.0 0.0 0.0 150k 50% 0.0 0.0 0.0 0.0 0%
--------Signal--------------DL-------------------------------------UL----------------------
cc pci rsrp pl cfo mcs snr turbo brate bler ta_us mcs buff brate bler
0 0 -10 74 0.0 0.0 0.0 0.0 200k 0% 0.0 0.0 0.0 0.0 0%
1 0 0.0 0.0 0.0 0.0 0.0 0.0 150k 50% 0.0 0.0 0.0 0.0 0%
0 0 -10 74 0.0 0.0 0.0 0.0 200k 0% 0.0 0.0 0.0 0.0 0%
1 0 0.0 0.0 0.0 0.0 0.0 0.0 150k 50% 0.0 0.0 0.0 0.0 0%
2020-10-01 20:09:16 +02:00
Andre Puschmann
ddbf4e1645
metrics_stdout: print new table header if neighbour cells change
...
this fixes an issue where the stdout metrics isn't readable if the only
neighbour cell gets removed during the 10s where no table header is printed.
--------Signal--------------Neighbor----DL-------------------------------------UL----------------------
cc pci rsrp pl cfo pci rsrp mcs snr turbo brate bler ta_us mcs buff brate bler
0 2 -66 61 -3.3k 1 -76 11 18 1.1 8.4M 3% 0.0 21 262 167k 0%
0 2 -65 60 -3.3k 1 -76 12 19 1.1 9.6M 2% 0.0 22 476 214k 0%
0 2 -65 60 -3.3k 1 -76 16 22 1.3 13M 3% 0.0 23 1.1k 734k 0%
0 2 -64 59 -3.3k 1 -76 17 23 1.3 15M 2% 0.0 23 602 424k 0%
0 2 -63 58 -3.3k 1 -77 20 25 1.4 19M 3% 0.0 23 501 304k 0%
0 2 -62 57 -3.3k 1 -77 22 27 1.8 20M 10% 0.0 22 417 418k 0%
0 2 -61 56 -3.3k 1 -77 24 28 1.8 25M 9% 0.0 23 396 439k 0%
0 2 -61 56 -3.3k 1 -77 26 29 1.5 23M 22% 0.0 23 841 407k 0%
0 2 -60 55 -3.3k 1 -77 27 31 1.3 27M 11% 0.0 23 890 1.1M 0%
0 2 -59 54 -3.3k 1 -77 27 32 1.00 30M 3% 0.0 23 583 524k 0%
0 2 -59 54 -3.3k 1 -77 27 32 0.92 32M 1% 0.0 23 1.1k 503k 0%
--------Signal--------------DL-------------------------------------UL----------------------
cc pci rsrp pl cfo mcs snr turbo brate bler ta_us mcs buff brate bler
0 2 -59 54 -3.3k 27 31 1.1 30M 4% 0.0 23 1.2k 529k 0%
0 2 -60 55 -3.3k 27 30 1.4 25M 18% 0.0 23 540 442k 0%
0 2 -61 56 -3.3k 26 29 1.6 23M 21% 0.0 23 536 429k 0%
0 2 -62 57 -3.3k 24 28 1.8 23M 13% 0.0 23 834 456k 0%
0 2 -62 57 -3.3k 1 -78 21 26 1.6 20M 7% 0.0 23 723 425k 0%
0 2 -63 58 -3.3k 1 -76 17 22 1.1 15M 3% 0.0 23 470 267k 0%
0 2 -64 59 -3.3k 1 -77 17 22 1.3 15M 3% 0.0 23 167 280k 0%
0 2 -65 60 -3.3k 1 -76 14 21 1.3 11M 2% 0.0 22 57 223k 0%
0 2 -65 60 -3.3k 1 -76 12 19 1.2 9.0M 3% 0.0 21 135 182k 0%
0 2 -66 61 -3.4k 1 -70 9.3 17 1.0 6.9M 2% 0.0 21 246 126k 0%
0 2 -67 62 -3.3k 1 -75 8.2 16 1.1 4.9M 3% 0.0 20 0.0 122k 0%
2020-10-01 20:09:16 +02:00
Pedro Alvarez
2f0125ef4e
Fix issue recovering key state, when the first HO fails (specifically, is_first_ncc was not recovered). Minor improvements in key logging.
2020-10-01 18:48:07 +01:00