Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 1 | ##################################################################### |
| 2 | # srsENB configuration file |
| 3 | ##################################################################### |
| 4 | |
| 5 | ##################################################################### |
| 6 | # eNB configuration |
| 7 | # |
| 8 | # enb_id: 20-bit eNB identifier. |
| 9 | # cell_id: 8-bit cell identifier. |
| 10 | # tac: 16-bit Tracking Area Code. |
| 11 | # mcc: Mobile Country Code |
| 12 | # mnc: Mobile Network Code |
| 13 | # mme_addr: IP address of MME for S1 connnection |
| 14 | # gtp_bind_addr: Local IP address to bind for GTP connection |
| 15 | # s1c_bind_addr: Local IP address to bind for S1AP connection |
| 16 | # n_prb: Number of Physical Resource Blocks (6,15,25,50,75,100) |
| 17 | # tm: Transmission mode 1-4 (TM1 default) |
| 18 | # nof_ports: Number of Tx ports (1 port default, set to 2 for TM2/3/4) |
| 19 | # |
| 20 | ##################################################################### |
| 21 | [enb] |
| 22 | enb_id = 0x19B |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 23 | mcc = ${enb.mcc} |
| 24 | mnc = ${enb.mnc} |
| 25 | mme_addr = ${enb.mme_addr} |
Pau Espin Pedrol | a9a2fe2 | 2020-02-13 19:29:55 +0100 | [diff] [blame] | 26 | gtp_bind_addr = ${enb.addr} |
| 27 | s1c_bind_addr = ${enb.addr} |
Pau Espin Pedrol | 6c42bb5 | 2020-02-27 15:05:11 +0100 | [diff] [blame] | 28 | n_prb = ${enb.num_prb} |
Pau Espin Pedrol | b693771 | 2020-02-27 18:02:20 +0100 | [diff] [blame] | 29 | tm = ${enb.transmission_mode} |
Pau Espin Pedrol | f796ad0 | 2020-03-09 15:50:57 +0100 | [diff] [blame] | 30 | nof_ports = ${enb.num_ports} |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 31 | |
| 32 | ##################################################################### |
| 33 | # eNB configuration files |
| 34 | # |
| 35 | # sib_config: SIB1, SIB2 and SIB3 configuration file |
| 36 | # note: when enabling mbms, use the sib.conf.mbsfn configuration file which includes SIB13 |
| 37 | # rr_config: Radio Resources configuration file |
| 38 | # drb_config: DRB configuration file |
| 39 | ##################################################################### |
| 40 | [enb_files] |
| 41 | sib_config = sib.conf |
| 42 | rr_config = rr.conf |
| 43 | drb_config = drb.conf |
| 44 | |
| 45 | ##################################################################### |
| 46 | # RF configuration |
| 47 | # |
| 48 | # dl_earfcn: EARFCN code for DL |
| 49 | # tx_gain: Transmit gain (dB). |
| 50 | # rx_gain: Optional receive gain (dB). If disabled, AGC if enabled |
| 51 | # |
| 52 | # Optional parameters: |
| 53 | # dl_freq: Override DL frequency corresponding to dl_earfcn |
| 54 | # ul_freq: Override UL frequency corresponding to dl_earfcn (must be set if dl_freq is set) |
| 55 | # device_name: Device driver family. Supported options: "auto" (uses first found), "UHD" or "bladeRF" |
| 56 | # device_args: Arguments for the device driver. Options are "auto" or any string. |
| 57 | # Default for UHD: "recv_frame_size=9232,send_frame_size=9232" |
| 58 | # Default for bladeRF: "" |
| 59 | # #time_adv_nsamples: Transmission time advance (in number of samples) to compensate for RF delay |
| 60 | # from antenna to timestamp insertion. |
| 61 | # Default "auto". B210 USRP: 100 samples, bladeRF: 27. |
| 62 | # burst_preamble_us: Preamble length to transmit before start of burst. |
| 63 | # Default "auto". B210 USRP: 400 us, bladeRF: 0 us. |
| 64 | ##################################################################### |
| 65 | [rf] |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 66 | tx_gain = 80 |
| 67 | rx_gain = 40 |
| 68 | |
Pau Espin Pedrol | a9a2fe2 | 2020-02-13 19:29:55 +0100 | [diff] [blame] | 69 | device_name = ${enb.rf_dev_type} |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 70 | |
| 71 | # For best performance in 2x2 MIMO and >= 15 MHz use the following device_args settings: |
| 72 | # USRP B210: num_recv_frames=64,num_send_frames=64 |
| 73 | |
| 74 | # For best performance when BW<5 MHz (25 PRB), use the following device_args settings: |
| 75 | # USRP B210: send_frame_size=512,recv_frame_size=512 |
| 76 | |
Pau Espin Pedrol | a9a2fe2 | 2020-02-13 19:29:55 +0100 | [diff] [blame] | 77 | device_args = ${enb.rf_dev_args} |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 78 | #time_adv_nsamples = auto |
| 79 | #burst_preamble_us = auto |
| 80 | |
| 81 | |
| 82 | ##################################################################### |
| 83 | # MAC-layer packet capture configuration |
| 84 | # |
| 85 | # Packets are captured to file in the compact format decoded by |
| 86 | # the Wireshark mac-lte-framed dissector and with DLT 147. |
| 87 | # To use the dissector, edit the preferences for DLT_USER to |
| 88 | # add an entry with DLT=147, Payload Protocol=mac-lte-framed. |
| 89 | # For more information see: https://wiki.wireshark.org/MAC-LTE |
| 90 | # |
| 91 | # Please note that this setting will by default only capture MAC |
| 92 | # frames on dedicated channels, and not SIB. You have to build with |
| 93 | # WRITE_SIB_PCAP enabled in enb/src/stack/mac/mac.cc if you want |
| 94 | # SIB to be part of the MAC pcap file. |
| 95 | # |
| 96 | # enable: Enable MAC layer packet captures (true/false) |
| 97 | # filename: File path to use for packet captures |
| 98 | ##################################################################### |
| 99 | [pcap] |
Pau Espin Pedrol | 1e81b5a | 2020-03-16 12:42:17 +0100 | [diff] [blame] | 100 | enable = ${'true' if enb.enable_pcap else 'false'} |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 101 | filename = /tmp/enb.pcap |
| 102 | |
| 103 | ##################################################################### |
| 104 | # Log configuration |
| 105 | # |
| 106 | # Log levels can be set for individual layers. "all_level" sets log |
| 107 | # level for all layers unless otherwise configured. |
| 108 | # Format: e.g. phy_level = info |
| 109 | # |
| 110 | # In the same way, packet hex dumps can be limited for each level. |
| 111 | # "all_hex_limit" sets the hex limit for all layers unless otherwise |
| 112 | # configured. |
| 113 | # Format: e.g. phy_hex_limit = 32 |
| 114 | # |
| 115 | # Logging layers: rf, phy, phy_lib, mac, rlc, pdcp, rrc, gtpu, s1ap, all |
| 116 | # Logging levels: debug, info, warning, error, none |
| 117 | # |
| 118 | # filename: File path to use for log output. Can be set to stdout |
| 119 | # to print logs to standard output |
| 120 | # file_max_size: Maximum file size (in kilobytes). When passed, multiple files are created. |
| 121 | # If set to negative, a single log file will be created. |
| 122 | ##################################################################### |
| 123 | [log] |
| 124 | all_level = warning |
| 125 | all_hex_limit = 32 |
| 126 | filename = /tmp/enb.log |
| 127 | file_max_size = -1 |
| 128 | |
| 129 | [gui] |
| 130 | enable = false |
| 131 | |
| 132 | ##################################################################### |
| 133 | # Scheduler configuration options |
| 134 | # |
| 135 | # max_aggr_level: Optional maximum aggregation level index (l=log2(L) can be 0, 1, 2 or 3) |
| 136 | # pdsch_mcs: Optional fixed PDSCH MCS (ignores reported CQIs if specified) |
Andre Puschmann | bf960ec | 2020-03-21 22:11:59 +0100 | [diff] [blame] | 137 | # pdsch_max_mcs: Optional PDSCH MCS limit |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 138 | # pusch_mcs: Optional fixed PUSCH MCS (ignores reported CQIs if specified) |
Andre Puschmann | bf960ec | 2020-03-21 22:11:59 +0100 | [diff] [blame] | 139 | # pusch_max_mcs: Optional PUSCH MCS limit |
| 140 | # min_nof_ctrl_symbols: Minimum number of control symbols |
| 141 | # max_nof_ctrl_symbols: Maximum number of control symbols |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 142 | # |
| 143 | ##################################################################### |
| 144 | [scheduler] |
| 145 | #max_aggr_level = -1 |
| 146 | #pdsch_mcs = -1 |
| 147 | #pdsch_max_mcs = -1 |
| 148 | #pusch_mcs = -1 |
Andre Puschmann | b778707 | 2020-03-18 12:31:49 +0100 | [diff] [blame] | 149 | #pusch_max_mcs = 16 |
| 150 | #min_nof_ctrl_symbols = 1 |
| 151 | #max_nof_ctrl_symbols = 3 |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 152 | |
| 153 | ##################################################################### |
| 154 | # eMBMS configuration options |
| 155 | # |
| 156 | # enable: Enable MBMS transmission in the eNB |
| 157 | # m1u_multiaddr: Multicast addres the M1-U socket will register to |
| 158 | # m1u_if_addr: Address of the inteferface the M1-U interface will listen for multicast packets. |
| 159 | # |
| 160 | ##################################################################### |
| 161 | [embms] |
| 162 | #enable = false |
| 163 | #m1u_multiaddr = 239.255.0.1 |
| 164 | #m1u_if_addr = 127.0.1.201 |
| 165 | |
| 166 | |
| 167 | |
| 168 | ##################################################################### |
| 169 | # Channel emulator options: |
| 170 | # enable: Enable/Disable internal Downlink/Uplink channel emulator |
| 171 | # |
| 172 | # -- Fading emulator |
| 173 | # fading.enable: Enable/disable fading simulator |
| 174 | # fading.model: Fading model + maximum doppler (E.g. none, epa5, eva70, etu300, etc) |
| 175 | # |
| 176 | # -- Delay Emulator delay(t) = delay_min + (delay_max - delay_min) * (1 + sin(2pi*t/period)) / 2 |
| 177 | # Maximum speed [m/s]: (delay_max - delay_min) * pi * 300 / period |
| 178 | # delay.enable: Enable/disable delay simulator |
| 179 | # delay.period_s: Delay period in seconds. |
| 180 | # delay.init_time_s: Delay initial time in seconds. |
| 181 | # delay.maximum_us: Maximum delay in microseconds |
| 182 | # delay.minumum_us: Minimum delay in microseconds |
| 183 | # |
| 184 | # -- Radio-Link Failure (RLF) Emulator |
| 185 | # rlf.enable: Enable/disable RLF simulator |
| 186 | # rlf.t_on_ms: Time for On state of the channel (ms) |
| 187 | # rlf.t_off_ms: Time for Off state of the channel (ms) |
| 188 | # |
| 189 | # -- High Speed Train Doppler model simulator |
| 190 | # hst.enable: Enable/Disable HST simulator |
| 191 | # hst.period_s: HST simulation period in seconds |
| 192 | # hst.fd_hz: Doppler frequency in Hz |
| 193 | # hst.init_time_s: Initial time in seconds |
| 194 | ##################################################################### |
| 195 | [channel.dl] |
| 196 | #enable = false |
| 197 | |
| 198 | [channel.dl.fading] |
| 199 | #enable = false |
| 200 | #model = none |
| 201 | |
| 202 | [channel.dl.delay] |
| 203 | #enable = false |
| 204 | #period_s = 3600 |
| 205 | #init_time_s = 0 |
| 206 | #maximum_us = 100 |
| 207 | #minimum_us = 10 |
| 208 | |
| 209 | [channel.dl.rlf] |
| 210 | #enable = false |
| 211 | #t_on_ms = 10000 |
| 212 | #t_off_ms = 2000 |
| 213 | |
| 214 | [channel.dl.hst] |
| 215 | #enable = false |
| 216 | #period_s = 7.2 |
| 217 | #fd_hz = 750.0 |
| 218 | #init_time_s = 0.0 |
| 219 | |
| 220 | [channel.ul] |
| 221 | #enable = false |
| 222 | |
| 223 | [channel.ul.fading] |
| 224 | #enable = false |
| 225 | #model = none |
| 226 | |
| 227 | [channel.ul.delay] |
| 228 | #enable = false |
| 229 | #period_s = 3600 |
| 230 | #init_time_s = 0 |
| 231 | #maximum_us = 100 |
| 232 | #minimum_us = 10 |
| 233 | |
| 234 | [channel.ul.rlf] |
| 235 | #enable = false |
| 236 | #t_on_ms = 10000 |
| 237 | #t_off_ms = 2000 |
| 238 | |
| 239 | [channel.ul.hst] |
| 240 | #enable = false |
| 241 | #period_s = 7.2 |
| 242 | #fd_hz = -750.0 |
| 243 | #init_time_s = 0.0 |
| 244 | |
| 245 | |
| 246 | ##################################################################### |
| 247 | # Expert configuration options |
| 248 | # |
| 249 | # pusch_max_its: Maximum number of turbo decoder iterations (Default 4) |
| 250 | # pusch_8bit_decoder: Use 8-bit for LLR representation and turbo decoder trellis computation (Experimental) |
| 251 | # nof_phy_threads: Selects the number of PHY threads (maximum 4, minimum 1, default 2) |
| 252 | # metrics_period_secs: Sets the period at which metrics are requested from the eNB. |
| 253 | # metrics_csv_enable: Write eNB metrics to CSV file. |
| 254 | # metrics_csv_filename: File path to use for CSV metrics. |
| 255 | # pregenerate_signals: Pregenerate uplink signals after attach. Improves CPU performance. |
| 256 | # tx_amplitude: Transmit amplitude factor (set 0-1 to reduce PAPR) |
| 257 | # link_failure_nof_err: Number of PUSCH failures after which a radio-link failure is triggered. |
| 258 | # a link failure is when SNR<0 and CRC=KO |
| 259 | # max_prach_offset_us: Maximum allowed RACH offset (in us) |
| 260 | # eea_pref_list: Ordered preference list for the selection of encryption algorithm (EEA) (default: EEA0, EEA2, EEA1). |
| 261 | # eia_pref_list: Ordered preference list for the selection of integrity algorithm (EIA) (default: EIA2, EIA1, EIA0). |
| 262 | # |
| 263 | ##################################################################### |
| 264 | [expert] |
| 265 | #pusch_max_its = 8 # These are half iterations |
| 266 | #pusch_8bit_decoder = false |
Andre Puschmann | bf960ec | 2020-03-21 22:11:59 +0100 | [diff] [blame] | 267 | % if enb.get('rf_dev_type') == 'zmq': |
| 268 | nof_phy_threads = 1 |
| 269 | % endif |
Pau Espin Pedrol | c8b0f93 | 2020-02-11 17:45:26 +0100 | [diff] [blame] | 270 | #metrics_period_secs = 1 |
| 271 | #metrics_csv_enable = false |
| 272 | #metrics_csv_filename = /tmp/enb_metrics.csv |
| 273 | #pregenerate_signals = false |
| 274 | #tx_amplitude = 0.6 |
| 275 | #link_failure_nof_err = 50 |
| 276 | #rrc_inactivity_timer = 60000 |
| 277 | #max_prach_offset_us = 30 |
| 278 | #eea_pref_list = EEA0, EEA2, EEA1 |
| 279 | #eia_pref_list = EIA2, EIA1, EIA0 |