Documentation sections
5G NR Link Budget Calculator — 3GPP TR 38.901 Path Loss, SINR & Range
POSThttps://rftools.io/ api/ py/ v1/ calculate
Slug 5g-nr-link-budget. A 5G NR link budget on the 3GPP channel models: TR 38.901 path loss for rural macro, urban macro, urban micro and indoor office, LOS or NLOS, the noise floor from the resource blocks, SINR, link margin, the maximum range inside the model's validity and the TS 38.306 peak data rate.
Inputs
Send every one of these in inputs, in the units shown. Most are required: a call without one is refused (400) and costs nothing; one the calculator can do without takes the default shown. An input outside its range is still computed and flagged in the provenance.
| Name | Unit | Range | Default | Description |
|---|---|---|---|---|
| scenarionumber | none | 0 … 3 | 1 | 3GPP TR 38.901 deployment: 0 rural macro, 1 urban macro, 2 urban micro street canyon, 3 indoor office |
| lineOfSightnumber | none | 0 … 1 | 0 | Whether the direct path is clear; NLOS takes the larger of the LOS and NLOS formulas |
| frequencynumber | GHz | at least 0.1 | 3.5 | Centre frequency; TR 38.901 covers 0.5 to 100 GHz (30 GHz for RMa) |
| channelBandwidthnumber | MHz | at least 3 | 100 | UE channel bandwidth; sets the resource blocks and so the noise bandwidth |
| scsnumber | kHz | at least 15 | 30 | 15, 30 or 60 kHz in FR1; 60 or 120 kHz in FR2 |
| bsHeightnumber | m | at least 1 | 25 | TR 38.901 fixes 25 m for UMa and 10 m for UMi; RMa covers 10 to 150 m |
| utHeightnumber | m | at least 0.5 | 1.5 | User terminal height; 1.5 m at street level |
| distancenumber | m | at least 1 | 500 | Ground distance from the base station to the user |
| txPowernumber | dBm | any | 46 | Total conducted power over the carrier (46 dBm is 40 W) |
| txGainnumber | dBi | any | 17 | Transmit Antenna Gain |
| rxGainnumber | dBi | any | 0 | Receive Antenna Gain |
| lossesnumber | dB | at least 0 | 3 | Cable, Body & Other Losses |
| shadowMarginnumber | dB | at least 0 | 8 | Margin held back for shadowing; compare the scenario's σ_SF output |
| noiseFigurenumber | dB | at least 0 | 7 | Receiver Noise Figure |
| requiredSinrnumber | dB | any | 0 | SINR the chosen modulation and coding needs |
| interferenceMarginnumber | dB | at least 0 | 3 | Rise of noise plus interference over thermal noise |
| layersnumber | none | 1 … 8 | 4 | MIMO Layers |
| modulationOrdernumber | none | 1 … 10 | 8 | Modulation Order (bits per symbol) |
| scalingFactornumber | none | 0.1 … 1 | 1 | UE capability scaling factor in TS 38.306: 1, 0.8, 0.75 or 0.4 |
| linkDirectionnumber | none | 0 … 1 | 0 | Sets the TS 38.306 overhead: 0.14 DL and 0.08 UL in FR1, 0.18 and 0.10 in FR2 |
| extraLossCountnumber | none | 0 … 6 | 0 | How many further losses the link adds, such as building entry, foliage, body or polarisation mismatch (0–6) |
| extraLoss1number | dB | 0 … 50 | 0 | A further loss on the link, such as building entry, foliage, body loss or polarisation mismatch |
| extraLoss2number | dB | 0 … 50 | 0 | A further loss on the link, such as building entry, foliage, body loss or polarisation mismatch |
| extraLoss3number | dB | 0 … 50 | 0 | A further loss on the link, such as building entry, foliage, body loss or polarisation mismatch |
| extraLoss4number | dB | 0 … 50 | 0 | A further loss on the link, such as building entry, foliage, body loss or polarisation mismatch |
| extraLoss5number | dB | 0 … 50 | 0 | A further loss on the link, such as building entry, foliage, body loss or polarisation mismatch |
| extraLoss6number | dB | 0 … 50 | 0 | A further loss on the link, such as building entry, foliage, body loss or polarisation mismatch |
Outputs
Returned in values, by key. A value that is unbounded or undefined is null.
| Field | Unit | Description |
|---|---|---|
| linkMarginheadline | dB | Link Margin |
| pathLoss | dB | Path Loss (TR 38.901) |
| receivedPower | dBm | Received Power |
| sinr | dB | SINR (Median) |
| maxPathLoss | dB | Maximum Allowable Path Loss |
| maxRange | m | Maximum Range (2-D, Within Model Validity) |
| resourceBlocks | none | Resource Blocks (N_RB) |
| occupiedBandwidth | MHz | Occupied Bandwidth (N_RB × 12 × SCS) |
| thermalNoise | dBm | Thermal Noise (kTB) |
| noiseFloor | dBm | Receiver Noise Floor (kTB + NF) |
| breakpointDistance | m | Breakpoint Distance |
| shadowFadingStd | dB | Shadow-Fading Std (σ_SF) |
| peakDataRate | Mbps | Peak Data Rate (TS 38.306) |
| totalLoss | dB | The cable and other losses, the path loss and every extra loss, added |
Calling it
- Calculate: one call, the request and response in full, and its errors.
- Batch: this calculator with others, or a sweep, in one request.
- Solve for a target: the value of one input that brings an output to a target.