Andre Puschmann
3127f59b4c
wait with init of GUI until cell is found and initialized
...
with the stack refactor we've introduced a regression in which
the GUI was started too early when no cell was found yet.
this caused the GUI to be initilized with only one Tx port. When connecting
to a cell with ports, the GUI plotter would then write
into unitialized memory.
5 years ago
Pedro Alvarez
c5979f59eb
Clang format UE, eNB and lib ( #850 )
...
* Clang-formated UE, eNB and lib.
* Fixed compiling errors from clang-format.
* Fix linking issues introduced by clang-format
* Fix poor formating in initializing arrays of arrays.
* Fix mistake in conflict resolution on rm_turbo.c
* Re-apply clang format to gtpc_ies.h
5 years ago
Andre Puschmann
c7ee887170
add factory function for creating PDCP config
5 years ago
Andre Puschmann
f7f956708c
use helper function to print MIB content
5 years ago
Andre Puschmann
8a064cd3a6
pass msg_type from caller when logging RRC message
...
before the type of some message wasn't displayed correctly,
like SIBs, for example because the logger didn't
know the filed to retrieve the type string
5 years ago
Andre Puschmann
60d07f1656
assign msg-type to temp variable before logging ASN1 message in RRC
5 years ago
Andre Puschmann
fa2821a4e7
fixing periodic measurment reporting
...
fixes various issues with unset timers, interval parameters, etc.
with those fixes, TC_8_3_1_1 and TC_8_3_1_2 pass
5 years ago
Francisco Paisana
d59016ae68
use of srslte::log* type for ASN1 logging. Initialization of the asn1 and rrc_asn1 loggers done now in both the ue and enb
5 years ago
Ismael Gomez
44c23b1690
Fix bug in rrc_meas in ASN to_number() conversion, making the UE to generate Measurement reports every TTI
5 years ago
Xavier Arteaga
1fa5a19a55
SRSUE: SRSUE: fix timealigmenttimer
5 years ago
Xavier Arteaga
bcde542111
SRSUE: fix typo
5 years ago
Xavier Arteaga
b9492bbd73
SRSUE: Fix set intra-frequency cell during cell search
5 years ago
Xavier Arteaga
8ad69b0c4d
SRSUE: Fixed minor RRC measurement
5 years ago
Xavier Arteaga
db36fb08a2
SRSUE: fix intra-frequency measurement cell select
5 years ago
Xavier Arteaga
22e4d3c905
SRSUE: Camping SFN synchronism discards cell
5 years ago
Xavier Arteaga
e89dde0f35
SRSUE: Check cell is valid
5 years ago
Xavier Arteaga
4be4f56333
SRSUE: Fix duplicates ACK
5 years ago
Francisco Paisana
d270518d69
updated rrc to new srsasn1 version
5 years ago
Xavier Arteaga
0ec49f00f7
SRSUE: Reset measurements during cell search in PHY
5 years ago
Pedro Alvarez
e68956bcf6
Adding discard timer timeout to PDCP config.
5 years ago
Xavier Arteaga
a8763cb7a0
SRSUE: Added Cell PCI in console trace
5 years ago
Xavier Arteaga
d96836a0fa
SRSUE: Stack TTI based purely in radio timestamp
5 years ago
Xavier Arteaga
7312752988
SRSUE: reestablishment procedure wait for children to finish before aborting
5 years ago
Xavier Arteaga
6d896ee453
Fixed more static code analysis warnings
5 years ago
Xavier Arteaga
8dd1c59e18
Added amplitude and power conversions to dB and viceversa
5 years ago
Xavier Arteaga
b4b1ab94af
SRSUE RRC: new PHY unknown sync state, cell select waits for PHY in-sync
5 years ago
Xavier Arteaga
67935d2b99
SRSUE: RRC blocks MAC RA procedure during reestablishment
5 years ago
Andre Puschmann
71c83bd0e0
fixing typo in RRC proc
5 years ago
Andre Puschmann
8ef0d6c6ca
do not automatically consider cells for which a measurment has been received as "in sync"
...
the in_sync flag has been misused in some parts of the code
receiving a PHY measurement for a cell does not automatically
mean that we are "in sync", as it is used in RRC as a condition
to indicate if we are camping on cell
the in_sync/out_of_sync condition should only be altered by the
corresponding functions sent from the PHY for the currently selected
cell (and not automatically for all cells)
the commit also removes the deletion of cells which are not "in sync"
from the list of neighbor cells. Instead, RRC calls a clean-up function
peridically that deletes old cells eventually.
5 years ago
Xavier Arteaga
f5e4ff9f4d
SRSUE: RRC Reest Procedure Refactor
5 years ago
Xavier Arteaga
dbdb699a78
SRSUE: minor RRC/PHY fixes
5 years ago
Xavier Arteaga
f37a096f10
SRSUE: Refactored/Fixed RRC connection Re-establishment and minor CLang Format/Tidy fixes
5 years ago
Francisco Paisana
54992e72f1
fixed and simplified multiqueue task api to avoid dangling pointers.
5 years ago
Francisco Paisana
ac4d3b9624
std::functions do not accept move-only captures. So I had to create a wrapper earlier. In this PR, I cleaned a bit the previous API for the code to be a bit more readable
5 years ago
Andre Puschmann
4e2d9c6b60
specify MAC source files in UE
5 years ago
Andre Puschmann
6f72cbffab
fix snprintf of uint64 for ARM
5 years ago
Pedro Alvarez
15613465cf
Moving some initialization from init function to constructor in the PDCP entities.
5 years ago
Francisco Paisana
c8e50c1e19
DL/UL sched are called in a round-robin fashion
5 years ago
Andre Puschmann
1a7142d73f
fix GW init procedure and set pool instance in ctor
5 years ago
Pedro Alvarez
b7fdcaabc5
Starting to add reordering timers at PDCP NR entity. Timeout seems to be triggered correctly and pass the SDUs to the upper layers when it expires. First tests passing.
5 years ago
Francisco Paisana
dc0f7acfda
a new future was not being created for the new cell_search
5 years ago
Andre Puschmann
d25a734200
fix uninit value in NAS and move emm_info on stack
5 years ago
Francisco Paisana
ecba994712
fixed bad initialization of t311
5 years ago
Francisco Paisana
d2c56caf7e
applied new timer class to the whole code base
5 years ago
Francisco Paisana
15bde8660a
getting a future of an already finished proc is dangerous
5 years ago
Francisco Paisana
248583ecdf
added extra logging and removed uneeded member from proc_t
5 years ago
Francisco Paisana
b254bdbb93
typedefed the proc_result_t<void> to become proc_state_t
5 years ago
Francisco Paisana
f2d88e5a5b
simplified NAS rrc connection request procedure
...
move non-type-specific methods of proc_t to its base class.
procedure state machine was simplified via a future-type. Now procedures dont get stuck until the user reads the procedure outcome.
made the NAS procedures more event trigger/reaction-based.
5 years ago
Francisco Paisana
8864787f59
added the continuation functionality to procedures via the "then()" method.
5 years ago
Francisco Paisana
c1be118d1d
new wrapper-based design for stack procedures. Removes extra base class, gets rid of spurious copies/moves during the pop(), and allows the use of a non-default ctor()
5 years ago
Francisco Paisana
8980810061
added some util print functions and fixed the issue with sync::cell_select when the last cell search was not successful
5 years ago
Xavier Arteaga
423475173d
Refactored magnitude and argument extraction from sf_worker
5 years ago
Andre Puschmann
82e3fd1052
fix uninitialized vars in RRC
5 years ago
Andre Puschmann
891a66a2e5
make the establishment cause a paramter when sending a connection request
...
needed to signal a mo_sig establishment cause after a RLF
5 years ago
Andre Puschmann
c24b25f42e
after RLF store PCI of current serving cell
...
the PCI is needed for the reestablishment request in case
the new serving cell has changed
5 years ago
Andre Puschmann
c1da02cd07
after initiating reestablishment, we need to perform cell reselection immediatly
...
before cell reselection was postponed to the next TTI but this is not possible in
the case where the serving cell changes.
if the "old" serving cell is no longer suitable, we would directly go to RRC IDLE below.
Therefore we need to select the new serving cell before sending the reestablishment
request.
this is tested in TC_8_5_1_1
5 years ago
Andre Puschmann
b631106612
always print RF errors to stdout
5 years ago
Andre Puschmann
1a68fbc460
fix wrong setting for RF log level
5 years ago
Francisco Paisana
9bcb268421
added for-range loop and bool decay checks to clang-tidy. Applied some of the recommendations of clang-tidy to nas.cc
5 years ago
Andre Puschmann
cf548fe807
nas: add handling of T3410/T3411
5 years ago
Andre Puschmann
35307a047a
make UE switch_on non-blocking
...
this allows a simpler main that just signals NAS to switch on the UE
but doesn't block until the action is completed.
For making sure the UE also attached if the first attempt failed
the NAS needs to be extended to support the correct timers.
5 years ago
Francisco Paisana
80ef7f8497
changed the name of proc Error/Warning/Info logging macros
5 years ago
Francisco Paisana
71ebac861c
fix nas proc logging, and reuse of cell selection result
5 years ago
Francisco Paisana
81a466a641
since we moved cell search to the background thread, cell reselection prints a error message that it cannot start. In fact it already started. It is just waiting for the cell search to finish. This PR fixes this
5 years ago
Francisco Paisana
e67f66e539
moved cell search completed signal from the background thread to the stack thread
5 years ago
Xavier Arteaga
0b00e6d94a
SRSUE: fixed CSI and HARQ collision for CA
5 years ago
Xavier Arteaga
743cce5503
SRSUE: Added end of burst when a out-of-sync is detected in PSS/SSS sync
5 years ago
Xavier Arteaga
a9dae4c29c
SRSUE: Enable Asynchronous SCell Receiver AGC
5 years ago
Ismael Gomez
1d83bb08e2
Changes in ACK procedure to support CA. Tested 1 cell in SISO/MIMO
5 years ago
Andre Puschmann
7a672ca340
fix typo
5 years ago
Francisco Paisana
b1496317d5
fixed the pcch proc issue by letting the cell selection explicitly propagate its result to the pcch_process_proc
5 years ago
Andre Puschmann
3a678b1e5f
fixed wrong SRS parameter logging
5 years ago
Andre Puschmann
3c6ff0da30
make NAS logging less verbose
5 years ago
Andre Puschmann
c5f52adfba
nas: fix issue in which NAS wouldn't allow to attach once it failed
...
the main issue was the plmn_selected variable. the solution
was to create a function to enter the deregistered state that resets the variable
and performs all other actions that need to be performed, like clearing
EPS bearers.
The patch also extends the SS to support AT commands to enable/disable
data services and now succesfully passes TC_9_2_2_1_7
5 years ago
Francisco Paisana
2fb830fcfa
moved cell search to background task thread pool, and provided a stack interface to rrc to call "start_cell_search". Once completed, the background task signals back to RRC
5 years ago
Andre Puschmann
0467d8bc84
rework neighbor cell handling
5 years ago
Andre Puschmann
c7f0caa24a
add TTI field to MAC dl/ul grants and fix PCAP to include TTI
5 years ago
Francisco Paisana
6db0e474be
moved RA waiting procedure to a background task of the stack thread pool
5 years ago
Xavier Arteaga
efdec15964
Renamed lock_guard (lg) to lock
5 years ago
Xavier Arteaga
665f899a74
Fixed some coverity and Clang tidy warnings
5 years ago
Andre Puschmann
f94d2537a3
nas: send identity response integrity protected if security ctxt is present
5 years ago
Andre Puschmann
bb84b27f0b
fix RRC connect proc in NAS to allow reattch after detach
5 years ago
Andre Puschmann
cfadd1ba0b
use received count for NAS integrity check
...
using the local rx count has caused issues when our UE
missed one NAS message was therefore out-of-sync and then
dropped all following NAS messages due to integrity failure
the NAS spec clearly states that the UE should use the
count received as an input for the integrity check calculation
5 years ago
Francisco Paisana
fc9bb3c934
removed rrc asn1 header include from the ue_interfaces and phy
5 years ago
Xavier Arteaga
ef26bc7451
SRSUE: fixed prach TA correction
5 years ago
Andre Puschmann
0e6b0768fd
print PCCH hex when decoding fails
5 years ago
Andre Puschmann
2f47010eb6
fix various uninitialized vars
5 years ago
Andre Puschmann
0e89f72846
remove EPS bearer deletion when going RRC idle
...
when going RRC idle, NAS gets informed and currently
clears all registered EPS bearers. This is wrong because
the EPS can outlive a RRC session.
Also in the conformance tests it's clearly seen
that after a RRC release a dedicatated EPS bearer is
created with a linked EPS bearer ID that has been
created _before_ RRC went idle.
5 years ago
Xavier Arteaga
35f85c651c
SRSUE: Added SCell synchronizer and measurements based on reference signals
5 years ago
Xavier Arteaga
8e17aba5d8
Improved SSS decoding and improved scell_search_test
5 years ago
Xavier Arteaga
dedf0f2f78
Added initial time to delay channel simulator
5 years ago
Xavier Arteaga
54974d935e
SRSUE PHY: unitialised values and attributes clean-tidy up
5 years ago
Xavier Arteaga
78fcc11a30
Fixes minor unitialised/leaked memory
5 years ago
Ismael Gomez
0984debe1b
Fix issues with RLF in B210 and X300 ( #669 )
...
* Calling tx_end() from radio_reset() causes long execution time in B210. Using boolean to call later instead. Fixes RLF failing in B210. Checked in X300
* Fix issue #655
5 years ago
Francisco Paisana
946ead06e8
using an interface between the stack and lower mac to process demux pdus.
5 years ago
Andre Puschmann
57317fab7c
expose debug_long to class log and use in RRC to log ASN1 structs
5 years ago
Andre Puschmann
7dde4f3b8a
fix BCCH-BCH logging in RRC debug mode
...
also decode BCCH-BCH using ASN1 lib and write MIB to log
5 years ago
Andre Puschmann
99a6d49e78
only write MIB to PCAP if cell search was successful
5 years ago
Francisco Paisana
7e67aee839
resolved the uninit variable issue in the queue_test
5 years ago
Francisco Paisana
14267640ee
implemented andre's PR review requests
5 years ago
Francisco Paisana
11ec5cdba6
added a maximum capacity to the pending task multiqueue, so that the buffer pool does not get depleted
5 years ago
Francisco Paisana
63457f195c
extented queue test
5 years ago
Francisco Paisana
a2d7b2320a
placed GW packets in the same thread as UE stack thread
5 years ago
Francisco Paisana
647c624423
created a multiqueue handler, and started using it for the ue stack
5 years ago
Andre Puschmann
08ca9ebd4e
write BCH to PCAP
...
this patch moves the BCH payload buffer into the UE sync object and
therefore allows to pass it to the MAC for PCAP logging
5 years ago
Ismael Gomez
a3932f9bea
Minor change to fix coverty issue
5 years ago
Francisco Paisana
94667beb00
added a bound checker to bit_ref packer, and other fixes
5 years ago
Ismael Gomez
6bb0790cf1
Fix coverty issues ( #652 )
5 years ago
Andre Puschmann
bd1e367263
add missing mutex lock in mux
5 years ago
Andre Puschmann
761fda542d
fix invalid neighbor cell addition
...
if phy measurements are received and processes before a serving cell
is selected, an invalid neighbor cell is added because the uninitlized
serving cell is used.
fix the issue by checking if the serving cell is valid
5 years ago
Andre Puschmann
8b015ee128
fix typos and extend cell (re-)selection logging
5 years ago
Xavier Arteaga
1a567a764e
SRSUE: Call Radio tx-end when PHY is reseted and removed redundant attribute is_start_of_burst.
5 years ago
Pedro Alvarez
004db4a067
Applied clang-format to zuc_support PR.
5 years ago
Pedro Alvarez
1ae8ccda8c
Added EIA3 and EEA3 to default UE capabilities to srsUE. Added parsers for EEA3/EIA3 config options in srsENB and srsEPC
5 years ago
David Rupprecht
4ff70b6008
reconfigured test case for eia sec matching
5 years ago
David Rupprecht
50332089ce
Add EEA3 and EIA3 support for UE/enodeb and MME
5 years ago
Ismael Gomez
4f95822c06
Reestablish RLC before waiting for uplink
5 years ago
Ismael Gomez
cbb1bbfaa1
Fix multiple PRACHs after SR fail and a minor issue in HO
5 years ago
Xavier Arteaga
4bd0d2da6d
UE RRC: Fixed minor variable overlap and clang tidy warning in UE capabilities
5 years ago
Ismael Gomez
bfddc55148
RRC-PHY interface ( #639 )
...
RRC-PHY interface refactor. Moved RRC-MAC interface to rrc_asn1_utils and created RRC-PHY interface also in rrc_asn1_utils. All ASN1 includes should be made from rrc_asn1_utils only keeping ue_interfaces clean of ASN1
Tested with different common and dedicated configurations (64QAM UL, 256QAM, CA, SRS enabled/disabled, etc)
5 years ago
Francisco Paisana
67d6a25194
Moving mac timers to stack timers ( #638 )
...
* first step towards moving MAC timers to stack. Mac is still using its own timers. srslte::timers class can be restructured.
* moved timers out of the UE MAC
5 years ago
Ismael Gomez
69edee4e6c
Fix issues in uplink QoS ( #636 )
...
Fix bugs in Long BSR and Truncated BSR and added unit tests
5 years ago
Francisco Paisana
116dc0a57b
fixed group extensions, removed extra presence flag for copy_ptr<T> types as it was just a source of bugs.
5 years ago
Francisco Paisana
c9d3b61038
added resumable procedures to make RRC and NAS non-blocking
5 years ago
Andre Puschmann
fba1110c49
fix RRC to reflect new struct name
5 years ago
Pedro Alvarez
491695ab77
Clang-formated PDCP NR PR.
5 years ago
Pedro Alvarez
d3b6828082
Changed PDCP configuration to explicitly have tx and rx direction. Decrypt on PDCP NR seems fine.
5 years ago
Pedro Alvarez
73e30743d1
Added enum to PDCP config to replace two bools.
5 years ago
Pedro Alvarez
457f35699d
Reverted back to a single config structure between PDCP NR and PDCP LTE.
5 years ago
Pedro Alvarez
005d03cb1a
Starting to split pdcp_entity into pdcp_entity_lte and pdcp_entity_nr to support NR PDCP
5 years ago
Andre Puschmann
7847c8da5e
extend ue cap handler to support multiple RATs
5 years ago
Xavier Arteaga
aee59977d3
SRSUE: Fixed inter-frequency Handover
5 years ago
Andre Puschmann
e0bd7f156d
replace remaining warning macros with pragma message
5 years ago
Andre Puschmann
09610ce788
add type setter to sch_subh and use it for MCH PDUs
5 years ago
Andre Puschmann
e562dfed15
minor code formating and debug fixes
5 years ago
yagoda
408400bee6
adding fixes and tests for eMBMS
5 years ago
Andre Puschmann
2e9a981a8a
fix home plmn extraction for PCSC USIM module
5 years ago
Xavier Arteaga
f653472aa8
SRSUE: SCell parameters condensed in a single structure
5 years ago
Xavier Arteaga
5729f37ebb
SRSUE PHY: Fixed frequency change
5 years ago
Xavier Arteaga
b5685c8f09
SRSUE: Fixed HO with carrier aggregation
5 years ago
Xavier Arteaga
19572b485c
SRSUE RRC: fix single meas_obj in multiple meas_id
5 years ago
Xavier Arteaga
f616e6f5ad
SRSUE: Do not add srsue_help nor srsue_version test if the GUI is enabled
5 years ago
Xavier Arteaga
d64264d954
SRSUE: Added init test and ue.conf.example integrity. Solved CLang Tidy warnings.
5 years ago
Ismael Gomez
32bcbd6231
Minor modification of warning message
5 years ago
Ismael Gomez
feafec2725
Fix srsENB PHY log and reorganized expert args
5 years ago
Ismael Gomez
c9c43e44e9
Fixed PDU buffer size
5 years ago
Xavier Arteaga
abad5c3bbf
SRSUE: Handle 256qam for CA ( #585 )
5 years ago
Andre Puschmann
886858a30a
remove expert config and split into PHY and general config, cleanup ue.conf.example
5 years ago
Andre Puschmann
b46a71c2d8
add RRC metrics and remove extra methods to query RRC state
5 years ago
Xavier Arteaga
5e49aca835
Merge pull request #570 from softwareradiosystems/feature_256qam_fix
...
Resource allocation extended tables and PDSCH table 2 for 256QAM
5 years ago