Every term, decoded
One formula sets the PUSCH transmit power. Hover the idea of each colour-coded term below — it is exactly TS 38.213 §7.1.1, indexed by transmission occasion i, open-loop set j, path-loss reference qd, and closed-loop process l.
P₀(j) — target Rx
P₀ = P₀-nominal(j) + P₀-UE(j). The received power the open loop aims for. Index j picks one of the configured P0-PUSCH-AlphaSets (Msg3 uses a special set).
α(j)·PL — fractional comp.
α ∈ [0,1] is how much of the downlink path loss PL the UE compensates. α<1 = cell-edge UEs deliberately under-shoot to limit interference.
Bandwidth term
10·log₁₀(2μ·MRB): more RBs need proportionally more total power to keep the same per-RB density.
ΔTF — transport format
Adds power for higher spectral efficiency (more bits/RE). Zero unless deltaMCS is configured. Detailed below.
f(i,l) — closed loop
Accumulated TPC corrections. Two independent loops (l = 0,1) can be configured.
PCMAX — the ceiling
The UE's configured maximum output power (≤ 23 dBm power class 3). The whole sum is clipped to it.
ΔTF — paying for spectral efficiency
When deltaMCS is enabled, the UE adds power proportional to how hard it is pushing bits per RE. BPRE is bits-per-resource-element; Ks = 1.25. A QPSK low-rate grant adds almost nothing; a 256QAM high-rate grant adds several dB. Slide the efficiency.
Live power budget
Each slider is one term. The stacked bar shows how the budget builds; the red cap is PCMAX. When the sum would exceed it, the UE is power-limited and clips — and that clipping is exactly what Power Headroom reports.
Fractional path-loss compensation
α = 1 makes every UE arrive at the same received power (full compensation) — but cell-edge UEs blast interference. α < 1 lets distant UEs fall short, trading their own SINR for a quieter cell. Sweep α.
f(i,l) — accumulation vs absolute
The gNB measures received power and sends 2-bit TPC commands. In accumulative mode the UE sums them into f(i,l); in absolute mode each command replaces it. Up to two loops (l = 0,1) run independently. Drive it.
Power Headroom Report (PHR)
How much power does the UE have left? PHR = PCMAX − PPUSCH (Type 1), reported to the gNB in a MAC CE so the scheduler knows whether it can grant more RBs or higher MCS. A negative PHR means the UE is already power-limited (it computed more than it could send). With no real PUSCH, a virtual PHR is reported from a reference format.