Commit Graph

214 Commits

Author SHA1 Message Date
Andre Puschmann 6e081aa1dc amarisoft_enb: add NR support
this patch adds the ability to configure NR cells with
Amarisoft eNB. It adds the new DRB-NR template and updates
the normal enb.cfg template to allow using it as LTE only
or with NR cells (5G NSA).

Change-Id: Ia27bbc6db5920ce14bacabe8043601aa2adaa5fe
2021-05-05 14:26:56 +02:00
Andre Puschmann 9b419f32ae srsenb.conf.tmpl: use LTE sample rates when Lime is found in rf args
the lime doesn't work well with the shorter sample rates the eNB
uses by default.

Change-Id: I2d3dbdf5ff62980854ef67b20469f072ce31612e
2021-05-03 13:50:11 +02:00
Andre Puschmann fcd9752c25 srsue.conf.tmpl: set srate param with the X310
Change-Id: Icb04ed51ace97d4467558639aeb3f556dbe8678a
2021-05-03 13:50:11 +02:00
Andre Puschmann 374a175c81 amarisoft_rf_driver.cfg.tmpl: only set trx offset for B210
all other RF devices do not required any offset

Change-Id: Id4c5f0bede5b09d59237cdd6a959a3663f1a1b37
2021-05-03 13:50:11 +02:00
Andre Puschmann 5e08075fa3 enb_amarisoft: add "sdr" as rf_dev_type and rx_ant parameter
this allows to use the Amarisoft PCIe cards with OGT

Change-Id: Ia373a78f59538d6dfca390431f85a7af26c9d914
2021-05-03 13:50:11 +02:00
Andre Puschmann dbdc1c8443 srsue.conf.tmpl: update args for 21.04 changes to include NSA
this also removes the entire help text around arguments (that
were very outdated already) and only leaves the actual values with changes.

Change-Id: Icb9e8e7b1c68cf024db3a7273af791f017c32003
2021-05-03 13:43:44 +02:00
Andre Puschmann 02b4223854 srsenb_drb.conf.tmpl: decrease pollPDU for QCI9
due to internal PDU buffering between PDCP/RLC the poll frequency
needs to be increase to get quicker feedback.

Change-Id: I4114fb36e675b3f91c471558f716276ab24f1db5
2021-05-03 13:43:44 +02:00
AlaiaL 9e025a36a9 amarisoft_ltemme.cfg.tmpl: add gbr to the template
newer version of the amarisoft mme requires the GBR to be set

Change-Id: Ib0b046ea9fcc26b6bbe03461ca6308acc35175d1
2021-05-03 13:43:44 +02:00
Andre Puschmann 31ecf59ffd ms_amarisoft: extend AmariUE to support custom frequency bands
this patch adds generic support for custom frequency bands to the ms class.
it then extends the config template for AmariUE to use them.
we set the default values for EARFCNs for DL/UL to the old values.

Change-Id: I7b2250e13fc1161be1a1d73a4348f07b31c0f724
2021-05-03 13:43:44 +02:00
AlaiaL a17140fee4 enb_srs: add support for eNB traces
this patch adds support for srsENB event tracing. it provides
a cfg scenario to enable it.

Change-Id: Icb2342acac5db87a0889cbf1b6c7bb1ad26c16fa
2021-05-03 13:43:44 +02:00
Andre Puschmann c7737e6388 ms_srs: add resource scheme to configure fixed DL and UL freq
this config option overwrites the EARFCN config that is typically
used to tell the UE the bands to scan for cells. When custom
frequencies are used, this option allows to set them explicitly.

Change-Id: Ice070ea6755e273d916db2dc941068d33bbe206a
2021-05-03 13:43:44 +02:00
Andre Puschmann 0e72f9de5f amarisoft_mme: use/expose count paramter from MS config for MME
the UEs count param, if specified, is mapped into the config
values of the EPC so it can be used for template rendering.

Since we only have one count parameter, its added to the first
subscriber. 1 is the default value and its used when no count
param is specified.

this allows to run the Amarisoft UE simulator with the Amarisoft EPC
without having to create subscriber entries for each simulated UE.

Change-Id: I29885791f716c204d0b6f18ba134885bae853b6f
2021-05-03 10:54:57 +02:00
Pau Espin d776059deb open5gs: Avoid use of non-standard ports
Despite open5gs allowing to change the GTP ports in the config file, in
reality changing those values to something else than the standard prot
will fail. Hence, we must use the standard port. As a result, we must
use different IP addresses in each process to avoid ip+port collisions.
Let's use some loopback addresses which shouldn't require extra
configuration on the host, and still only requiring 1 run_node as per
existing EPCs, with the limitation that only 1 open5gs EPC instance can
be run at one in a given run_node.

Related: https://github.com/open5gs/open5gs/issues/897
Change-Id: Id3062c6ad9d6de4c6066547e1e46edad5da285c1
2021-04-12 13:45:02 +02:00
Pau Espin 0696c60812 Initial Open5GS support
Change-Id: Iff8b88dc22d8f156572839abb48b0c1377c55e33
2021-03-30 14:17:47 +02:00
Andre Puschmann fcdff4bcfe ms_srs: add force_ul_amplitude config
this allows to overwrite the PHY export option phy.force_ul_amplitude

Change-Id: I255f027433944c1739c89757609f0dcc3b8aa7cb
2021-03-16 18:10:26 +01:00
Andre Puschmann 1bba2891c5 ms_srs: turn tx/rx_gain into INT and make them optional
when they are greater than 0 they are written as config paramter.
if they are -1 they are disbaled and automatic gain calibration is
used.

Change-Id: I473ff3ae679784178574d2f76b612dbf77180490
2021-03-16 18:09:49 +01:00
Francisco b04f135d32 srsenb_sib.conf.tmpl: reduce the default size of the PUCCH
optimized PUCCH config

Change-Id: I45ae7c33f9d1df20df37c0fe6c3d73aa85ae1b31
2021-03-16 18:04:40 +01:00
David Rupprecht f4ff058ee2 srsue.conf.tmpl: Adjust ue.config template for new pcap path
Change-Id: I4af6abaa3973652a12f571d88bca59cd443704f3
2021-03-16 18:04:40 +01:00
Andre Puschmann c487f7438c ms_srs: add config scheme to select NAS log level
we've provided only all_log_level so far but sometimes it's needed
to select the level per layer. This patch adds the ability
to do so for the NAS layer in the UE.

Change-Id: Iab2bce65e8af81f6d344849c97952e6441cb2846
2021-03-16 18:04:40 +01:00
Andre Puschmann 2bc8311ea7 srsenb_drb.conf.tmpl: add QCI10 with infinit PDCP discard timer
copy of QCI9 params but with infinit PDCP discard to avoid SDU drops
at PDCP

Change-Id: I64a74d09cc1a55ba21a7be7b5cc203e56bba3b10
2021-03-16 18:04:40 +01:00
Andre Puschmann 3cecad8ebf amarisoft_drb.cfg.tmpl: add additional QCI10 with infinit PDCP discard timer
also set QCI9 to 150ms to match default srsENB config

Change-Id: I60cc1390480142bd5bb516934c9f30b6122496d5
2021-03-16 18:04:40 +01:00
Andre Puschmann 88727efa10 srsenb_drb.conf.tmpl: set PDCP discard timer to 150ms for QCI9
srsENB now supports PDCP discard so we set it to a sane value.
Also enable status reporting for UL.

Change-Id: Ib6ad0ff57b95a1f220f87c1ede0f6eacc5fb21ff
2021-03-16 18:04:40 +01:00
Pau Espin 5ff071833a osmo-sgsn: Fix template cfg to work with NS2 implementation
See following HOW-TO to update existing configs:
https://osmocom.org/projects/libosmocore/wiki/Network_service_(NS)

Change-Id: I391c977ca20ef185db6b1f17912608acaa13e87f
2021-03-08 11:31:59 +01:00
Andre Puschmann 7aa14e45f4 srsue.conf.tmpl: reduce nof PHY threads to 2 for ZMQ
we've detected a possible race condition during the Msg3
transmission that caused the thread that sets the Msg3 grant
to be delayed. The PHY worker that executed TTI+2 finished
by that time already and didn't even see the pending UL grant.

This is issue is more likely to happen on loaded system,
for example when running parallel ZMQ jobs. We therefore decided
to reduce the number of parallel PHY workers to 2 so the issue
is circumvented.

Change-Id: Ibdb42a1705d87b6d343201458c8fe397398802bc
2021-02-08 17:48:09 +01:00
Andre Puschmann d1732d7820 srsepc.conf.tmpl: double value of T3413 (paging timer)
we've already incrased the t3413 value in 9c7fd618d2
but realized it may still be too low in some cases.

we set it to 12s now.

Change-Id: I9c3c59c0ff8f539a44b420f8ba31eea016c211ce
2021-02-08 17:48:09 +01:00
Nils Fürste a81801558e enb: Set cipher and integrity via scenario file
This patch enables setting cipher and integrity algorithms
in Amarisoft eNB and srsENB via scenario files. If no
settings are defined following defaults are applied:
- Cipher algorithm: EEA0, EEA2, EEA1
- Integrity algorithm: EIA2, EIA1, EIA0

Example of setting cipher algorithms:
- 4g:srsue-rftype@uhd+srsenb-rftype@uhd+mod-enb-cipher@eea1+mod-enb-cipher@eea0+mod-enb-nprb@6

Change-Id: I595206b7d49016fb6d0aec175c828d9537c53886
2021-02-08 17:48:09 +01:00
Andre Puschmann 4cb9ab5671 srsenb.conf.tmpl: set nof_of_prach_threds to 0 for ZMQ
this executed the PRACH search in the main thread so
PHY workers and PRACH processing don't diverge in loaded
scenarios

Change-Id: I97eddb5f9ca682251ded1f73093c2d0a49462bd6
2021-01-07 20:43:48 +01:00
Andre Puschmann 9c7fd618d2 srsepc.conf.tmpl: increase default value of T3413 (paging timer)
we've seen that the default value of 2s might be a bit tight.
the value is network dependent so no real default value exists.
however, 6s seems to be a good compromise.

Change-Id: Icc75ee048c2cc605ab26c4c87a039519998f7e57
2021-01-07 20:43:47 +01:00
Andre Puschmann 1d1c0bfed9 srsue.conf.tmpl: disable TTI stats for ZMQ
since ZMQ runs are not using wall clock anyway, measuring
TTI execution isn't useful, disable it therefore to avoid
misleading warnings.

Change-Id: I5c2cb0abcfce0ee67806f6611356f4d5d180541d
2021-01-07 16:30:25 +01:00
Andre Puschmann 507c60ca0c srsue.conf.tmpl: reorder conditions for setting RRC release
the order of checks needs to go from high to low, i.e. the higher
release feature (e.g. qam256) needs to be checked and set first.

in theory it should also be possible to have a CA-capable UE
that does not support QAM256, but for srsUE we announce both anyway.

Change-Id: I2fa49f0cb5d80db412a811ceeb380359c8ad67a7
2021-01-07 16:30:25 +01:00
Andre Puschmann a7725fcedf srsenb_drb.conf.tmpl: add QCI1 DRB config
use default QCI1 config for real-time voice traffic

Change-Id: I43f408b1a3c172a5eb8327f03df49801e063e5cd
2021-01-07 16:30:25 +01:00
Neels Hofmeyr b5a3d6732a cfg templates: log level and source basename last, log no category-hex
Makes for saner log output in stderr files.

Change-Id: I2755beffd18d6779367c04e4aaaed119d66eb3be
2020-12-10 23:03:27 +00:00
Andre Puschmann 65a9e741ad ms_amarisoft: fix various regressions
this patch fixes some regressions in the Amarisoft UE class,
the config template, etc. that have been undetected bc we never
executed tests with it.

Change-Id: I397e675a4018acf3372a3b7e29fd864703b2b919
2020-11-23 12:33:52 +01:00
Andre Puschmann 3166b6353e enb: add QAM64 support for UL
* add new UE feature
* enable in srsue.conf.templ
* add new table for maximum rates
* add config scenario to enable SIB option for QAM64

Change-Id: I6ac2c9989a761e91b93d76c2507f55f0140b202d
2020-11-20 11:50:43 +01:00
Nils Fürste 1e736ea46e {enb,ms}_srs: Add DL QAM-256 support
Due to the integration of DL-QAM256 another table for DL max rates is needed.
Therefore, I added the parameter 'qam256' to the feature list in the resource.cfg.

The patch also enables the correct UE settings in the config file.

Change-Id: I2d34395449cdcfb31db66ea887d9adbee551e757
2020-11-11 12:47:47 +01:00
Pau Espin ef7256a138 enb: Support cells from different ENBs in ncell_list
Change-Id: I1242c56ff42caea06e7f96317def82064fd11325
2020-11-09 18:54:26 +01:00
Andre Puschmann a7fd39448c srsenb_rr.conf: add PCI, TAC and root_seq_idx as cell param
make sure to insert cell specific TAC, PCI and root seq ind
into cell config and do not depend on cell index for a particular
enb. This causes issues in multi-eNB setups.

Change-Id: I6642128a449a0562dd23f7fa393ff48ae2503006
2020-11-09 13:10:21 +01:00
Andre Puschmann d0682bad0f enb: add basic TDD config option
this patch adds the basic notion of FDD and TDD duplexing modes
to the eNB object. So far we've always assume FDD.

Since only Amarisoft eNB supports TDD, the required config
template changes, etc. are only applied there.

The patch also adds a scenario to enable the default TDD config.

Change-Id: I37216b5bfdf527d221913283b6c41d3c8fd6b500
2020-10-16 14:17:36 +00:00
Pau Espin 680ba03038 sysmocom: Introduce suite to test emergency calls
Change-Id: I2e851c94311ded0abd4ff072b8cc72316d972750
2020-10-15 15:50:48 +00:00
Pau Espin d0e8601ace templates/osmo-bts-trx: Increase osmo-trx rx-gain
Otherwise osmo-trx with a B200 seems to be having issues receiving some
data from the MS otherwise, making "sms" test fail. In general LU works
fine, and when MS sends the SMS, CM Service Request+Accept also works
fine, but then the BTS never sees the CP-DATA afterwards probably due to
MS power loop.

Change-Id: I5f7e3d22a142521ab83db81635ded252dabcf111
2020-10-14 10:59:55 +00:00
Pau Espin 10c64fee41 srsenb: Activate handover in config file
This is needed to test handover features.

Change-Id: Ifa8462f4d1e183e73b059a7af37bcdf7b3e247f6
2020-10-13 09:55:45 +02:00
Pau Espin 9ff1eabdb1 srsenb: Fix ECI in handover cell list
So far we only support setting cell IDs from same ENB. Support for
handover to other ENB will come later, probably by adding some API to be
called during the test to add own's CellID's to other ENB's config.t

Change-Id: I1780bda130cde0faab15d4032117e0aa2b9c5dbe
2020-10-12 20:58:01 +02:00
Andre Puschmann b5f0444021 srs{enb,ue}: add rf_dev_sync option to config templates
pass-through the option so they can be used in templates

just concatenate with rf_dev_args for srsLTE eNB/UE, arguments
parsing will handle them

Change-Id: I3818026c159780f29968888f547163cdf730afad
2020-10-12 17:27:25 +02:00
Andre Puschmann c489f190be enb_amarisoft: add rf_dev_sync option to specify the sync type
this allows to specify "external_clock" for example to use
the external REF input of an USRP

Change-Id: Ie066993440840cbd2c18e8f0c0c577b92ac7092d
2020-10-12 16:47:11 +02:00
Andre Puschmann e3a1910915 ms_srs: add freq_offset as resource param
this allows to specify a freq tuning offset in Hz in the MS resource config

Change-Id: Iab726edd27e890d2c2dddbea91afe80d8a5068aa
2020-10-06 09:52:46 +02:00
Andre Puschmann a9bbbd64e4 amarisoft_enb.cfg.tmpl: seperate PRACH root sequences for cells
seperate the root sequence index for each cell a bit more to
avoid detection of a single PRACH in both cells

Change-Id: I5aea1a27939c880944779c282e902465ab513715
2020-10-05 13:49:12 +02:00
Andre Puschmann 51fa941994 amarisoft_enb.cfg.tmpl: increas threshold for failed UL retransmissions
this avoids the eNB from releasing the UE too early if the UL channel
stays very bad for a longer time but many PUSCH are scheduled

Change-Id: Ib82616e920eecc70fbded12433e54bd90ae1bcd4
2020-10-05 13:49:12 +02:00
Andre Puschmann 0908ceb0eb amarisoft_enb.cfg.tmpl: use default tac 0007
this is the tac used in srsepc.

Change-Id: I1de432a52281ea210abae5648239fd89ba5eb4ce
2020-10-05 13:49:12 +02:00
Andre Puschmann dda20e27e9 amarisoft_sib23.asn.tmpl: set p-b value in SIB23 depending on TM
this fixes a wrong p-b value used for TM2 and above

Change-Id: I89c557c456f3330f491cc66bc4931a0234bf6e02
2020-10-05 13:49:12 +02:00
Andre Puschmann eb991f5f5a srsenb_rr.conf.tmpl: set TAC for cells to 0x0007
this is the default TAC used in the EPC. A recent EPC patch
will reject the S1 setup request if the TACs don't match

Change-Id: I94fdb96631ce3ae35a1b2a9f90d1101df9161233
2020-10-05 13:49:12 +02:00