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.
5 years ago
Ismael Gomez
f2851b037e
Fix concurrency issue in set_crnti()
5 years ago
Xavier Arteaga
f8294fb9df
SRSUE: RRC measurements refactor and more fixes
5 years ago
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
5 years ago
Ismael Gomez
17f9ff326b
Expose in-sync and out-of-sync constants to ue.conf
5 years ago
Xavier Arteaga
c92dce71b7
srsLTE: AGC only uses boundaries for requesting gain to Radio
5 years ago
Xavier Arteaga
384c420c7c
SRSUE: fix phy workers concurrency issue
5 years ago
Andre Puschmann
4a9e3728c9
add condtional variable for PHY initialization and configuration
...
adding a cond variable and mutex to protect init and (re-)config of PHY
currently this is only used during init. If the stack couldn't be
initialized but the PHY init thread was already started, we need to
properly wait until this is done
5 years ago
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
Xavier Arteaga
bcde542111
SRSUE: fix typo
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
Ismael Gomez
1d83bb08e2
Changes in ACK procedure to support CA. Tested 1 cell in SISO/MIMO
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
Francisco Paisana
e92632e729
zero-initialized mbms rrc interface types
5 years ago
Francisco Paisana
fc9bb3c934
removed rrc asn1 header include from the ue_interfaces and phy
5 years ago
Andre Puschmann
2f47010eb6
fix various uninitialized vars
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
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
Andre Puschmann
9e1c46dfb0
add initial TTCN3 code
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
Xavier Arteaga
1a567a764e
SRSUE: Call Radio tx-end when PHY is reseted and removed redundant attribute is_start_of_burst.
5 years ago
Andre Puschmann
513c7b12e3
remove warning and replace with pragma message
5 years ago
Ismael Gomez
cbb1bbfaa1
Fix multiple PRACHs after SR fail and a minor issue in HO
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
Xavier Arteaga
f653472aa8
SRSUE: SCell parameters condensed in a single structure
6 years ago
Xavier Arteaga
b5685c8f09
SRSUE: Fixed HO with carrier aggregation
6 years ago
Ismael Gomez
feafec2725
Fix srsENB PHY log and reorganized expert args
6 years ago
Andre Puschmann
4e86b2f6b2
introduce layerd architecture we use for UE to eNB
...
- this allows flexible use of different PHYs and radios
- use common radio_multi (moved to lib)
6 years ago
Xavier Arteaga
5dcf3b3563
Fix phy memory leaks
6 years ago
Andre Puschmann
8333a9be57
fix dtor of PHY when stack init fails
6 years ago
Xavier Arteaga
c7be984819
sync.h uses lock_guard for mutex
6 years ago
Xavier Arteaga
9068280896
SRSUE: Sync.h/.cc mutexes changed to C++11 std::mutex and fixed attributes initialisation
6 years ago
Xavier Arteaga
810ce0358e
SRSUE: removed CLang tidy warnings in phy.h and phy.cc except unused. Use smaer pointers for workers.
6 years ago
Xavier Arteaga
1f4cf8121b
SRSUE: Initial UL channel simulator
6 years ago
Xavier Arteaga
ad9808c2aa
SRSUE: SCell include files rearange
6 years ago
Xavier Arteaga
ceac7a02c8
SRSUE: moved sync SCell classes in new namespace
6 years ago
Ismael Gomez
4ce8d84339
Restored force frequency
6 years ago
Andre Puschmann
0e95867f13
remove task dispatcher class
6 years ago
Xavier Arteaga
9c84f8e3fd
SRSLTE: Added Uniform Random vector generator; Delay channel test; Fixed Delay channel SEGFAULT; SRSUE channel unique pointer;
6 years ago
Xavier Arteaga
9ab2b2de81
SRSUE: Created delay channel emulator and added fading to the UE
6 years ago
Andre Puschmann
af8564e376
add ue_lte_phy_base and move logger out of UE class
6 years ago
Xavier Arteaga
0b6efb657e
SRSUE: CA can be performed without requiring clock synchronization between RF devices. Added Asynchronous SCell Synch metrics to console trace
6 years ago
Xavier Arteaga
080b4a327c
SRSUE: Refactored asynchronous cell and ue_radio. CA Fixed.
6 years ago
Andre Puschmann
65f50cd7ba
introduce new UE layer design
...
- abstract UE object now consists of a radio, a PHY, and a stack layer
- add new stack abstraction layer that combines MAC, RLC, RRC, PDCP, NAS and GW
- PHY layer now has a single stack interface and does not talk to MAC and RRC seperatly
6 years ago
Andre Puschmann
dc9df36a24
remove unused radio_multi code
6 years ago
Xavier Arteaga
b037fb8e51
Added minimal UE synch tweak and fix
6 years ago
Xavier Arteaga
a1a797589a
Added UE synchronization error metric (hard-coded disabled by default)
6 years ago
Andre Puschmann
4b01a2e4a0
update copyright notice
6 years ago
Ismael Gomez
7780b1aba5
add tdd/ca support
6 years ago
Andre Puschmann
1cc6ae3c60
enable c++11 support
6 years ago
Xavier Arteaga
c782ef2aa5
Solved unitialised values in UE (up to prach) and free
6 years ago
Francisco Paisana
0204db2e12
new asn1 rrc library
6 years ago
Andre Puschmann
d34ecaaa5e
adding RI to DL metrics
6 years ago
Ismael Gomez
cfb3a43aed
Lower priority of workers
6 years ago
Ismael Gomez
6a791f1416
Change TX mutex to semaphores (mutex implementation was violating lock ownership requirement)
6 years ago
Ismael Gomez
aaeec591b6
Fix race condition in phy recv
6 years ago
Xavier Arteaga
5e4fb48184
Refactored CQI reporting logging in UE. Fixes #199
7 years ago
Xavier Arteaga
6ab69b1d4c
Added PDSCH coworkers
7 years ago
Xavier Arteaga
31496ab44c
srsue PUSCH, set mcs idx to previous if it is a retransmission
7 years ago
Andre Puschmann
61d525ea80
Merge branch 'next' into embms_merge_final
7 years ago
Ismael Gomez
467ba4e326
Average sampling offset estimate before adjusting timing to be more robust against EVA and ETU fading
7 years ago
Ismael Gomez
f8655f3260
Changed the way we detect out-of-sync
7 years ago
yagoda
e4c3f0bc30
adding mbms-gw and mch generation tables
7 years ago
yagoda
e35672e234
adding PHY embms support to the UE
7 years ago
Ismael Gomez
81b69327b1
Added TA to metrics
7 years ago
Ismael Gomez
3ab74fb552
Exposed continuous TX mode to ue.conf
7 years ago
Ismael Gomez
74d6028769
Delay application of time_adv by 1 subframe
7 years ago
Ismael Gomez
ab7a0842ba
Send PRACH from worker thread with zero time advance
7 years ago
Ismael Gomez
9c7b3339be
Get CRS-based RSRP estimate for in/out-sync measurement. New SNR estimation gives 0 SNR when cell signal is lost preventing from detecting out-of-sync
7 years ago
Ismael Gomez
ff1269add3
HO working
7 years ago
Ismael Gomez
edd9cbf4dc
Merge branch 'next' into sync_states
7 years ago
David Rupprecht
06d4559294
Change include path absolut to project dir
7 years ago
David Rupprecht
9d71bec7b6
Unified include guards
7 years ago
Ismael Gomez
b3be54b274
Attach and paging ok. Reselection on IDLE not working
7 years ago
Ismael Gomez
2c3386a486
Updated missing changes
7 years ago
Ismael Gomez
f88f465c97
Refactored NAS/RRC/PHY cell_search/selection procedures
7 years ago
Ismael Gomez
548a4ae29d
RRC is_connected return and srsgui crashing if ports=0 when init
7 years ago
Ismael Gomez
86d4ce52e0
Make intra-frequency measurement period/length a parameter
7 years ago
Ismael Gomez
f9d770e50e
Added option for Doppler frequency correction
7 years ago
Ismael Gomez
c0aea5ae13
Neighbour cell RSRP measurement always and only with correlation method
7 years ago
Ismael Gomez
0fbeee72a1
Fixed offset int in previous commit
7 years ago
Ismael Gomez
809c550ca2
Use RS power estimation for serving cell RSRP/SNR measurements. Use correlation of RS sequences for neighbour cell verification of Cell ID
7 years ago
Ismael Gomez
c2098ad626
Removed unused sample offset correction
7 years ago
Andre Puschmann
cbda94f0a6
fix mem leak in phch_recv
7 years ago
Andre Puschmann
9553784e2f
change phy_log in UE to log_filter
7 years ago
Ismael Gomez
13efa740e8
Changed logic in RRC/NAS/PHY for cell/plmn search to avoid stucking in IDLE
7 years ago
Ismael Gomez
90553e830d
Fixed cell search for non-home PLMN
7 years ago
Ismael Gomez
91664ef2be
Do sell reselection on IDLE by phch_recv thread instead of worker
7 years ago
Ismael Gomez
650f433532
Add mutex to worker_imp/set_cell worker
7 years ago
Ismael Gomez
fd0c8168f0
Set to Continuous RX and TX
7 years ago
Ismael Gomez
0fcb065ae8
Disabled TX continuous and sleep on cell search
7 years ago
Ismael Gomez
beccfd2919
Average RSRP in linear domain to get better resolution
7 years ago
Ismael Gomez
42ece73453
Changed cell selection/reselection to avoid stopping/restarting radio. Fixed SIB message search
7 years ago
Ismael Gomez
7c276318b2
Merge branch 'next' into raa
7 years ago