Pedro Alvarez
fdd67c3865
Fix issue in integrity check in PDCP SRBs. Moved some helper functions to the pdcp base class
2020-02-20 20:53:27 +01:00
Pedro Alvarez
6508bd411f
Fix some issues with MAC copying
2020-02-20 20:53:27 +01:00
Pedro Alvarez
6648f7ebca
Update COUNT estimation for SRBs in PDCP
2020-02-20 20:53:27 +01:00
Pedro Alvarez
965b0ee99b
Starting to fix handling of RX SRB PDUs in PDCP.
2020-02-20 20:53:27 +01:00
Francisco Paisana
c29f08d8d5
refactored si acquisition procedure to use stack timers. Also created an interface that is going to be used for the task/timer handling
2020-02-20 20:48:36 +01:00
Ismael Gomez
d56b87f68c
Typo
2020-02-18 14:54:09 +01:00
Francisco Paisana
22f51bb30b
made cell select non-blocking using background threads
2020-02-18 09:47:33 +01:00
Ismael Gomez
72e6fa40fc
Fix multiple issues with DCI sizes when using CA.
2020-02-17 11:21:34 +01:00
Ismael Gomez
be82e1f368
Fix concurrency bug in ZMQ during srate change ( #954 )
...
The bug was manifesting as buffer overflow in 20 MHz 2x2 CA
2020-02-16 21:31:51 +01:00
Ismael Gomez
d8d10daebe
Fix bug in SRS using the previous grant to compute collision with PUSCH ( #958 )
2020-02-16 21:30:04 +01:00
Ismael Gomez
4fb83ae26d
Run configure_prach_params as a background task
2020-02-16 21:27:24 +01:00
Andre Puschmann
327aa97cfd
add macro for invalid RNTI 0x0
2020-02-15 19:33:25 +01:00
Francisco Paisana
64c9302b43
added wireshark generation to SCell Activation CE pdu_test
2020-02-14 21:49:01 +00:00
Francisco Paisana
e51e2ac062
added scell activation to pdu_test
2020-02-14 21:49:01 +00:00
Francisco Paisana
42449b079a
now the scell_activation CE is only for 1 octet. The 4 octet one is not yet supported.
2020-02-14 21:49:01 +00:00
Francisco Paisana
d831522692
addition of SCell Activation CE Cmd to scheduler and MAC
2020-02-14 21:49:01 +00:00
Francisco Paisana
838053e8f2
added SCell Activation CE to scheduler. Handling this CE in the MAC is still missing
2020-02-14 21:49:01 +00:00
Francisco Paisana
a0407dd6f7
created a lock guard for pthread rwlocks. This will avoid using gotos in many cases, and the RAII technique avoids many accidents.
2020-02-14 14:53:57 +00:00
Xavier Arteaga
6c960da808
Fix UE's SR transmission
2020-02-13 16:10:26 +01:00
Xavier Arteaga
344016ef0a
Refactored and commented SRSUE's Intra measure component
2020-02-13 14:25:00 +01:00
Xavier Arteaga
8f6dd184be
SRSUE: neighbour cell measurement test defined
2020-02-13 14:25:00 +01:00
Xavier Arteaga
385102fa2d
SRSENB: minor format, renaming and interface changes
2020-02-13 10:29:00 +01:00
Xavier Arteaga
67c07dfb56
Moved UL/DL PUCCH procedures into pucch_proc
2020-02-13 10:29:00 +01:00
Xavier Arteaga
bf4ecc8064
Fix srsenb PHY and unit/component tests
2020-02-13 10:29:00 +01:00
Xavier Arteaga
7a20e3a51e
Added boolean random generator
2020-02-13 10:29:00 +01:00
Xavier Arteaga
f9c3dd2748
more fixes in the srsenb
2020-02-13 10:29:00 +01:00
Xavier Arteaga
5dbc96458a
Sets PUCCH decode threshold as macro
2020-02-13 10:29:00 +01:00
Xavier Arteaga
bc10943a2b
Added get max TB from DCI format
2020-02-13 10:29:00 +01:00
Xavier Arteaga
231431f569
SRSENB: enabled CA PUCCH decode in eNb
2020-02-13 10:29:00 +01:00
Xavier Arteaga
f10f64215e
log_filter use stdout logger is NULL
2020-02-13 10:29:00 +01:00
Xavier Arteaga
f6cf7780e8
Minor aesthetic corrections
2020-02-13 10:29:00 +01:00
Xavier Arteaga
d66fdefbb3
Added more docs to PUCCH 1b CS resource selection
2020-02-13 10:29:00 +01:00
Xavier Arteaga
b4d1f737f3
Minor PUCCH 1b CS resouce selection fix
2020-02-13 10:29:00 +01:00
Xavier Arteaga
cd12307c91
SRSLTE: fix PUCCH 1b Channel selection resource
2020-02-13 10:29:00 +01:00
Xavier Arteaga
40772eae19
SRSENB: UE PHY dedicated takes a flat configuration structure
2020-02-13 10:29:00 +01:00
Xavier Arteaga
86a62c3584
removed unreachable code
2020-02-13 10:29:00 +01:00
Xavier Arteaga
1f762844ee
Initial PUCCH format 3 decoder
2020-02-13 10:29:00 +01:00
Xavier Arteaga
f935916e7c
SRSUE: fix srsue_rf_test
2020-02-13 10:29:00 +01:00
Xavier Arteaga
35f4e5d69a
Initial PUCCH 1B with channel selection
2020-02-13 10:29:00 +01:00
Andre Puschmann
8a33fde8e7
adding GPS sync support to USRP capture example
2020-02-10 20:25:54 +01:00
Andre Puschmann
6cce22d6b8
add support for GPS-based sync to UE sync object
2020-02-10 20:25:54 +01:00
Andre Puschmann
d62b835a4c
sync USRP time to GPS when GPSDO is used as clock source
2020-02-10 20:25:54 +01:00
Andre Puschmann
cccabdaf4f
removing unneeded install targets for static libs (reported by Filipe)
2020-02-10 17:38:42 +01:00
Francisco Paisana
c8fc0d91b3
changed the supported cc list to a vector of structs
2020-02-07 15:06:46 +00:00
Francisco Paisana
42b15c7bed
use common ue_cfg interface to set the ue antenna info
2020-02-07 15:06:46 +00:00
Francisco Paisana
5f557700f2
changed the sched::ue_cfg(...) function to allow diff configurations. The RRC now activates all carriers after rrc reconf complete
2020-02-07 15:06:46 +00:00
Francisco Paisana
b66bc3a6b0
create a sched_interface struct for antenna info dedicated. This way we remove the asn1 as a dependency in the scheduler
2020-02-07 15:06:46 +00:00
Francisco Paisana
88a22e7dbf
support cc cfg from rrc
2020-02-07 15:06:46 +00:00
Francisco Paisana
e86862611c
update the scheduler interfaces to accommodate the configuration of multiple carriers
2020-02-07 15:06:46 +00:00
Francisco Paisana
2dc31ea440
added interface to configure multiple cells from the RRC
2020-02-07 15:06:46 +00:00
Andre Puschmann
c7343cf6d8
protect sf_buffer from overrun in receive_samples
...
this patch adds a buffer len paramter to the receive_samples() call
that protects the (also) provided buffer from overflowing.
currently each call to srslte_ue_sync_zerocopy() which then calls receive_samples()
relies on a buffer that is "big enough". But that buffer is sometimes
2 subframes, sometimes 3 or 5, sometimes has space for the maximum PRB size, sometimes
only for 6 PRBs (i.e. during cell search).
By extending the interface to pass the buffer size we can make sure that
only samples are received that actually fit inside the provided buffer.
2020-02-07 10:21:30 +01:00
Jason Tang
e15eb936fa
Support multiple SoapySDR devices using soapy=# device_arg
2020-02-07 10:16:15 +01:00
Andre Puschmann
ed179fd311
timers: rename value() to time_elapsed()
...
this seems to be better readable than value() since
we've sometimes confused it with the timeout value
2020-02-06 14:40:47 +01:00
Andre Puschmann
b085a8eabf
rework debug log when getting buffer state in RLC AM
...
also adds some description to RLC functions being called
from outside the stack thread
2020-02-06 14:40:47 +01:00
Andre Puschmann
4932fb8719
fix value() return in timers when timer is expired
...
this makes sure that value() never returns a value larger
than the timer duration
2020-02-06 14:40:47 +01:00
Xavier Arteaga
5b14a7d585
Implementation Tx RLC suspend
2020-02-06 09:14:57 +01:00
Xavier Arteaga
f8fc226b89
Removed 5dB offset to the minimum Rx gain of the AGC
2020-02-06 09:14:05 +01:00
Xavier Arteaga
68ad4960eb
SRSLTE: added holding time before AGC starts measuring after setting gain
2020-02-06 09:14:05 +01:00
Xavier Arteaga
0edd8f74d8
fix memory leak in timer test
2020-02-04 16:33:46 +01:00
Xavier Arteaga
b88a8635f1
Reduce stress timer test number of timers
2020-02-04 16:33:46 +01:00
Xavier Arteaga
e0cc1fd697
Reduce time of timer_test; use unique_lock instead of guard
2020-02-04 16:33:46 +01:00
Xavier Arteaga
22da8dfbb1
srsLTE: protected priority queue in timers
2020-02-04 16:33:46 +01:00
Andre Puschmann
d3cb2eac83
add RLC suspend/resume to eNB interface
2020-02-03 16:26:15 +01:00
Andre Puschmann
6a50fe3233
zmq: add monitor code for sockets but disable it
...
according to the ZMQ dev guide, one can use a socket monitor
to get informed about changes to a socket, e.g. when a client disconnected.
This is useful to detect when a UE dropped the connection to reinitialize
the socket and timers in a eNB.
This commit adds code to create such a socket monitor but leaves
it disabled because it still doesn't work as expected.
2020-02-03 16:26:15 +01:00
Andre Puschmann
995774c830
add ZMQ device argument to fail reception when end point disconnects
...
this allows to gracefully exit the eNB when the UE disconnected.
2020-02-03 16:26:15 +01:00
Andre Puschmann
2a46413121
during cell search don't configure found cell as serving cell
...
this fixes an issue in which, during cell search, the sync code
itself would set the serving cell whenever it found a new cell.
instead, only report the found cell to RRC and keep the sample
rate at 1.92 MHz. RRC may select a new serving cell and then tell
PHY to camp on it.
2020-02-03 12:51:46 +01:00
Andre Puschmann
bbacc35e24
move configuration of default logger to main
...
this prevents the case where a layer requests a new log_filter
before the default logger has been configured
2020-02-03 12:51:46 +01:00
Xavier Arteaga
fe199e6be2
SRSUE: Undo enable/disable RA procedure flag
2020-02-03 12:51:46 +01:00
Xavier Arteaga
f8294fb9df
SRSUE: RRC measurements refactor and more fixes
2020-02-03 12:51:46 +01:00
Ismael Gomez
52716f8716
Process HO complete in the background to avoid heap-after-use bug when PHY measurements are reported during a HO
...
rrc_meas refactor. Need to split commit
Fix typo
Temporal commit
Apply rx_gain_offset to neighbour cell measurements
srsLTE: modify TESTASSERT Macro to follow codeline
SRSUE: prevent RRC from having serving cell in neighbour list
SRSUE: DL HARQ does not need Time Aligment Timer. UL is disabled using PUCCH resources release
SRSUE: extend intra-frequency to CA SCell
SRSUE: fix confusing/ambiguous code in the RRC measurements and fix concurrency issue
SRSUE: remove RRC measurement report triggers when measurements are modified or HO succesful
SRSUE: fix compilation issues and Reest SIB indexes
Fixes sync using incorrect cell configuration when search cell does not find a correct cell
Small refactor to remove measurement report triggers always after removing measurement
SRSUE: Removed SIC PSS from UE
SRSUE: fix inter-frequency reestablishment and added more traces
SRSUE: Fix compilation issue
2020-02-03 12:51:46 +01:00
Francisco Paisana
d382c10948
fix crash for case args == nullptr
2020-01-31 19:08:56 +00:00
Francisco Paisana
1b958a60b5
casting .c_str() to mutable char* and changing the char* was causing all sort of weird format messages
2020-01-31 19:08:56 +00:00
Francisco Paisana
c8cd12ac53
updated the test logging utils
2020-01-29 17:15:35 +00:00
Francisco Paisana
c537d38650
separated sched tests based on output into a separate file. Added scheduler random tester to unit tests
2020-01-29 17:15:35 +00:00
Francisco Paisana
f6ed99b71b
created a generic crtp class for handling singletons. I am using that class for the logmap now
2020-01-29 14:20:43 +00:00
Francisco Paisana
ea777d92e8
applied new logmap class to nas
2020-01-29 14:20:43 +00:00
Francisco Paisana
3e2de6dd3e
new logmap class to store globally accessible logs
2020-01-29 14:20:43 +00:00
Francisco Paisana
07a9e889a4
added a singleton map to facilitate access to each layer logger
2020-01-29 14:20:43 +00:00
Xavier Arteaga
c080cb3395
SRSUE: expose correct synch error parameter
2020-01-29 12:25:13 +01:00
Xavier Arteaga
c0b611dd0d
srsLTE: DL channel estimator compensates channel delay
2020-01-29 12:25:13 +01:00
Ismael Gomez
17f9ff326b
Expose in-sync and out-of-sync constants to ue.conf
2020-01-29 11:46:55 +01:00
Ismael Gomez
cc7dfefa1a
Fix logic for UL HARQ retx causing Msg3 adaptive retx to be identified as a new transmission
2020-01-28 21:33:10 +01:00
Andre Puschmann
81b46723f6
adding NPDCCH
2020-01-28 17:46:54 +01:00
Andre Puschmann
073c57dc3d
add NB-IoT DCI formats and move define to phy_common
2020-01-28 17:46:54 +01:00
Xavier Arteaga
9ee651d094
srsLTE: Added set vector zeros for float and cf
2020-01-28 11:22:50 +01:00
Xavier Arteaga
b08c1f003e
SRSENB: enabled multiple cells from rr.cfg
2020-01-28 11:22:50 +01:00
Andre Puschmann
e5b1673b3b
move PCAP into own compilation unit
...
this removes inline keyword from PCAP functions and puts all functions
into own C file
before forced inlining caused an issue when compiling for ARM on Ubuntu 19.10 on the RPi4
using gcc version 9.2.1
2020-01-24 13:15:45 +01:00
Francisco Paisana
883c2900c8
fix issue with future clear
2020-01-24 10:10:27 +00:00
Francisco Paisana
91d83fc20d
different way to retrieve a proc future
2020-01-24 10:10:27 +00:00
Ismael Gomez
171e26ee68
Add checks more checks for UL grants
2020-01-24 10:40:39 +01:00
Xavier Arteaga
dcb3bc0135
srsLTE: apply CLang Format in sch.c
2020-01-24 10:40:39 +01:00
Xavier Arteaga
905273b36a
srsLTE: more memory corruption counter measures in ul_sch_encode
2020-01-24 10:40:39 +01:00
Xavier Arteaga
3b138b25c6
srsLTE: UL SCH Beta offset access fortification
2020-01-24 10:40:39 +01:00
Xavier Arteaga
8b6ba1aacf
srsLTE: removed overlap bytes check in RLC AM
2020-01-24 10:36:41 +01:00
Xavier Arteaga
5872e763bf
SRSLTE: RLC AM remove completely overlapped segments
2020-01-24 10:36:41 +01:00
Xavier Arteaga
39bec9aab1
SRSLTE: fix RLC reordering and segment overlaping
2020-01-24 10:36:41 +01:00
Xavier Arteaga
d3537fc340
srsLTE: expanded RLC stress test with the addition of multiple PDU per TTI in reverse order
2020-01-24 10:36:41 +01:00
Francisco Paisana
5ae3afd2b8
created cbit_ref for unpacking const buffers
2020-01-23 12:22:19 +00:00
Francisco Paisana
58e555e86c
update all asn1 files
2020-01-23 12:22:19 +00:00
Francisco Paisana
5468189cd9
fix some variables' naming (e.g. x2_ap -> x2ap, e_rab -> erab)
2020-01-21 00:58:19 +00:00