Commit Graph

204 Commits

Author SHA1 Message Date
Andre Puschmann ac17ec6452 add common signal_handler for srsUE/srsENB/srsEPC
the signal handler is the same for all three apps. The "running" flag
as well as the file_logger object are in the common header in order
to allow the signal handler to flush the file if the alarm goes off.
2020-03-17 09:58:01 +01:00
Ismael Gomez 568dbdb6d6 Fix typo 2020-03-16 11:39:39 +01:00
Ismael Gomez 23cc42ce9f CSV metrics per carrier. Add options to flush file earlier and append to file 2020-03-16 11:39:39 +01:00
Xavier Arteaga e832769ae6 Updated copyright 2020-03-16 11:26:06 +01:00
Andre Puschmann 70ffe79b43 add support for periodic airplane mode simulation in srsUE 2020-03-13 17:35:03 +01:00
Ismael Gomez e8b8c9922e
Add RF per-channel frequency band constraints (#1026) 2020-03-12 23:06:09 +01:00
Ismael Gomez 4e12405fff
Remove radio_multi class and organize channels, ports and carrier buffers (#1019) 2020-03-06 15:26:48 +01:00
Andre Puschmann e2892047e9 refactor UE shutdown
use alarm to give UE time to gracefully terminate
if the UE can't terminate and the alarm goes off, flush the logs
and exit
2020-03-05 21:33:17 +01:00
Andre Puschmann 8e4f2a4d59 add UE parameter to enable TTI stats calculations 2020-03-03 16:22:04 +01:00
Francisco Paisana e859d622c7 added logref class to forbid logmap pointer invalidation. Created a test for the logref, and introduced it in the scheduler, rrc and nas 2020-02-28 11:33:26 +00:00
Pau Espin Pedrol 2f3a125757 srsue: fix trailing whitespace 2020-02-06 16:19:40 +01:00
Pau Espin Pedrol 4949df257e Proper shutdown on SIGHUP
If a process exits and has a controlling terminal, everything under
it gets a SIGHUP by the kernel. That's the case for instance when
running a srsUE over ssh with some specific parameters. As a result,
when the ssh client is killed, SIGHUP is sent to srsUE, which will be
killed immediatelly without proper release, which means in turn that log
buffers are not flushed.
Let's do proper shutdown when SIGHUP is received so that everyone can
get log files.
2020-02-06 16:19:40 +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
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
Xavier Arteaga c080cb3395 SRSUE: expose correct synch error parameter 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
Andre Puschmann 77522a6b69 add srsUE parameter to change netns before creating TUN in GW 2020-01-14 20:52:09 +01:00
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
2019-12-16 16:04:22 +01:00
Andre Puschmann 1a68fbc460 fix wrong setting for RF log level 2019-10-18 13:00:30 +02:00
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.
2019-10-15 10:13:21 +02:00
Xavier Arteaga dedf0f2f78 Added initial time to delay channel simulator 2019-09-20 16:20:31 +02:00
Pedro Alvarez 1ae8ccda8c Added EIA3 and EEA3 to default UE capabilities to srsUE. Added parsers for EEA3/EIA3 config options in srsENB and srsEPC 2019-09-10 13:46:21 +02:00
Xavier Arteaga d64264d954 SRSUE: Added init test and ue.conf.example integrity. Solved CLang Tidy warnings. 2019-07-18 22:05:44 +02:00
Andre Puschmann 886858a30a remove expert config and split into PHY and general config, cleanup ue.conf.example 2019-07-15 06:18:34 -04:00
Xavier Arteaga 20823e191d SRSUE: Added UL force amplitude optional parameter 2019-07-12 13:05:10 +02:00
Xavier Arteaga 4a0ebe0cca SRSUE: reviewed UE capabilities for 64QAM according to 3GPP 36.306 2019-07-02 16:36:06 +02:00
Francisco Paisana 10a56e2a84 moved GW out of the UE stack. This is important to keep concurrency out of the stack once it becomes single-threaded 2019-06-20 15:26:52 +02:00
Xavier Arteaga 1f4cf8121b SRSUE: Initial UL channel simulator 2019-06-11 12:06:11 +02:00
Xavier Arteaga 2ffa1f9f1e SRSUE: Added RLF simulator in channel emulator and integrated it in SRSUE. Removed Zeros Command 2019-05-30 13:07:23 +02:00
Xavier Arteaga 7c97e40e63 SRSUE: Improved internal channel emulator help 2019-05-30 13:07:23 +02:00
Xavier Arteaga 9ab2b2de81 SRSUE: Created delay channel emulator and added fading to the UE 2019-05-30 13:07:23 +02:00
Andre Puschmann af8564e376 add ue_lte_phy_base and move logger out of UE class 2019-05-22 11:40:23 +02:00
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
2019-05-17 17:46:28 +02:00
Andre Puschmann 3a6dd9b164 move UE RRC into own folder 2019-05-17 17:25:50 +02:00
Andre Puschmann 703937ec01 move sanity check for MBMS parameters to parse_args to avoid segfault on mismatch 2019-05-03 14:24:42 +02:00
yagoda 3842beab0f - fixing pmch file test for standard LTE rates
- adding special value for MTCH stop
- adding error messages for config values incompatible with MBMS
2019-04-29 12:04:42 +02:00
Andre Puschmann 4b01a2e4a0 update copyright notice 2019-04-29 09:20:02 +02:00
Ismael Gomez 7780b1aba5 add tdd/ca support 2019-04-25 20:57:58 +02:00
Andre Puschmann 7d95766c7b fix line break in command line arguments 2019-04-25 16:31:41 +02:00
Andre Puschmann c8f8c16d50
make EIA and EEA algorithms configurable (#323)
this patch allows to configure the EIA and EEA algorithms
the UE uses and announces during attach. They can
be specified as a comma-separated list.

The patch also removes a dedicated NAS config class and uses
the default nas_args_t type for this. There was a full
duplication of members before.

The patch also converts nas_args_t and usim_args_t into a class
with a default constructor that initialize all booleans.
2019-02-08 22:37:16 +01:00
Xavier Arteaga c782ef2aa5 Solved unitialised values in UE (up to prach) and free 2019-01-22 12:23:57 +01:00
Pedro Alvarez c5dad67a16 Adding catch to boost program options parser. 2019-01-18 12:38:56 +00:00
Francisco Paisana 0204db2e12 new asn1 rrc library 2019-01-17 17:43:13 +01:00
Andre Puschmann 15953d011e fix possible mem leak when parsing embms cmd line input 2019-01-15 16:34:04 +01:00
Joseph Giovatto af6de04806 added dl_earfcn_list to ue config
dl_earfcn_list = 2100,2200,3400
2018-12-17 12:14:49 +01:00
Andre Puschmann 652d5c5942 fix typo 2018-12-14 16:57:58 +01:00
Andre Puschmann df7ab7ffe8 Merge branch 'master' into next 2018-12-14 16:54:46 +01:00
rubund b801c3dd4e Fix some spelling errors detected by lintian (#271) 2018-12-03 10:36:15 +01:00
Pedro Alvarez ac1c300126 Adding the ability to set the interface local link IPv6 address. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 25108e2e2b Added configuration options to UE for IPv6 PDN. Starting to send PDN connectivity requesting IPv6. 2018-10-26 11:42:27 +02:00
Pedro Alvarez 3cddad79cc Adding ability to configure names of TUN interfaces. (#277)
* added config option for tun dev names vs fixed names added config option for M1-U interface addr

* Added options to sgi_mb tun name.

* Added some comments to mbms.conf.example

* Added some comments to example configs to explain the new values.
2018-10-05 11:12:31 +02:00
Andre Puschmann 0380c83175 remove RF device calibration settings from UE/eNB config
- this remove RF calibration parameters that were an extra
  section in the eNB/UE config but were hardly used (only old bladeRF)
- a better way to pass those parameter would be through the
  device args in the normal rf config section
2018-10-01 21:59:07 +02:00
Ismael Gomez bc9d342959
New optimization on the PHY for both UE and eNodeB (#251)
* New parallel Turbodecoder implementation in SSE/AVX 16-bit and 8-bit

* Optimised UL Interleaver

* Include TB CRC calculation in FEC encoder

* New threading priorities
2018-09-04 17:51:35 +02:00
Andre Puschmann 3b8371d090 add detach support (for switch off) 2018-08-06 11:10:12 +02:00
Pedro Alvarez 597cf18b9d Changing common/debug.h to crash_handler.h 2018-07-13 11:57:15 +01:00
Pedro Alvarez 7aaa9a1789 Moved srslte_debug_handle_crash to common/debug.c 2018-07-09 14:33:50 +01:00
Andre Puschmann 3dc5a40caf handle config parsing error gracefully and fix op/opc selection issue 2018-06-29 14:53:00 +02:00
Pedro Alvarez f301bb6373 Merging next into op_vs_opc and resolving conflicts. 2018-06-26 11:36:40 +01:00
Pedro Alvarez 50f497dcdc Small fix in srsUE for reading OPc from config file. 2018-06-25 17:25:55 +01:00
Pedro Alvarez 8d07709069 Revert "Changed ue.conf op to opc"
This reverts commit 3631c4a83f.
2018-06-19 18:15:58 +01:00
Andre Puschmann 01f6395d70 add option to force IMSI attach by not loading NAS ctxt from file 2018-06-19 14:23:47 +02:00
Pedro Alvarez b9c50a93a8 Fixed bug in writing OPc into user_db.csv. 2018-06-18 20:03:57 +01:00
Pedro Alvarez bd39d8bac2 Fixed bug in getting OPc. Removed debug print. Fixed test12345. UE is still having re-synch issues. 2018-06-18 19:32:50 +01:00
Pedro Alvarez ea5445f999 Adding options for OP and OPc in the UE. They cannot be simultanoulsy set. 2018-06-18 14:49:07 +01:00
Ismael Gomez 3631c4a83f Changed ue.conf op to opc 2018-06-04 16:41:39 +02:00
Andre Puschmann 36c650399b rework app startup to search for config files in user's home directory 2018-06-01 15:33:15 +02:00
Ismael Gomez 9cfa3c0cc4 Fix UE reattaching after going to IDLE 2018-05-31 14:59:13 +02:00
Ismael Gomez 132580ad42 Disable UTRA measurements from UECapabilities default value 2018-05-31 14:35:22 +02:00
Ismael Gomez 08654efd1c minor changes 2018-05-25 12:14:54 +02:00
Andre Puschmann cb15dee3d4 Merge branch 'embms_merge_final' into next 2018-05-23 21:25:37 +02:00
Merlin Chlosta 52f1a3b508 Add SIM Card Reader Selection, if multiple readers connected.
If no reader specified (default), try all available card readers. If reader specified, use this device only.
2018-05-23 15:39:32 +02:00
Andre Puschmann 61d525ea80 Merge branch 'next' into embms_merge_final 2018-05-22 10:39:05 +02:00
Ismael Gomez 467ba4e326 Average sampling offset estimate before adjusting timing to be more robust against EVA and ETU fading 2018-05-21 23:00:57 +02:00
yagoda 65f2747a8e removing mch handler in rlc, fixing embms autostart 2018-05-20 19:24:44 +02:00
yagoda 0ae22e0822 fixing scheduling issues for mbms 2018-05-17 20:20:20 +02:00
yagoda fac8bb7b7a adding mbms-gw broadcast support, adding parameter for automatic mbms service start 2018-05-17 16:25:17 +02:00
yagoda a113d5164f facilitate automatic mbms service start 2018-05-17 10:19:25 +02:00
Andre Puschmann 9ce3be974a Merge branch 'next' into embms_merge_final 2018-05-15 22:32:56 +02:00
yagoda 12c9f50ba9 adding upper layer embms support to the UE 2018-05-15 17:20:51 +02:00
Andre Puschmann d0457211ad adding support for CHAP auth 2018-05-15 12:40:29 +02:00
Andre Puschmann 3fe6dad323 adding hard SIM card support using PCSC 2018-05-15 12:40:29 +02:00
Ismael Gomez 81f33ef92b Set PDSCH CSI enabled by default 2018-05-04 13:58:38 +02:00
Ismael Gomez 3ab74fb552 Exposed continuous TX mode to ue.conf 2018-04-27 10:23:38 +02:00
Ismael Gomez 49c0455b4a Expose print buffer state option to ue.conf and disable by default 2018-04-25 18:08:32 +02:00
Ismael Gomez 208871b251 Changed liblte structs to simple structs and initialized nas/rrc uses. 2018-04-25 18:01:37 +02:00
Ismael Gomez 35e8b1ca76 Attach only once from main 2018-04-25 13:07:27 +02:00
Ismael Gomez ffb8337be7 Merge branch 'next' into sync_states 2018-04-12 18:30:19 +02:00
Xavier Arteaga 15173c5c30 Added gaussian filter configuration options in srsue.conf 2018-04-10 13:25:26 +02:00
Ismael Gomez edd9cbf4dc Merge branch 'next' into sync_states 2018-04-10 09:35:21 +02:00
David Rupprecht 06d4559294 Change include path absolut to project dir 2018-04-01 18:08:24 +02:00
Andre Puschmann 3db9ddcd36 remove various debug prints 2018-03-29 13:44:42 +02:00
Ismael Gomez b3be54b274 Attach and paging ok. Reselection on IDLE not working 2018-03-21 10:46:24 +01:00
Ismael Gomez f88f465c97 Refactored NAS/RRC/PHY cell_search/selection procedures 2018-03-19 14:14:51 +01:00
Ismael Gomez 86d4ce52e0 Make intra-frequency measurement period/length a parameter 2018-03-15 12:27:55 +01:00
Ismael Gomez f9d770e50e Added option for Doppler frequency correction 2018-03-14 17:30:55 +01:00
Ismael Gomez c2098ad626 Removed unused sample offset correction 2018-03-13 18:52:21 +01:00
Andre Puschmann 3afb93fcb9 exit the UE with q in console 2018-03-09 17:05:46 +01:00
Ismael Gomez 3adc6b5cbc
Merge pull request #158 from softwareradiosystems/csi
Csi
2018-03-07 14:40:57 +01:00
Paul Sutton 57505725e0
Merge pull request #157 from softwareradiosystems/issue_154fix
Issue 154fix
2018-03-06 12:51:02 +01:00
Ismael Gomez dc65061dbb Print buffer pool status every 10s (Debugging commit) 2018-03-06 12:37:45 +01:00