4G/LTE - Wake Up Signal

 

 

 

WUS (Wake Up Signal)

 

WUS stands for Wake Up Signal. Wake Up Signal in LTE is a type mechanism designed for Energy Saving mostly in Idle mode. In Idle mode, UE is supposed to wave up periodically based on DRX cycle and the UE specific Paging Occassion (PO) setting, it is necessary to receive Paging message (for any MT traffic). But it would be a waste of energy if UE needs to wake at every PO (Paging Occassion) when there is no paging for the UE. WUS is a mechanism to inform the UE saying "There will be a Paging for you very soon". It implies that UE may not be necessary to wake up for monitoring Paging if there is no WUS detected and save power.

One point decides who can use this feature at all. In LTE, WUS is defined for NB-IoT UEs, BL UEs and UEs in enhanced coverage, and it applies only in RRC_IDLE. These are the devices that repeat PDCCH many times in bad coverage, so an empty PO costs them the most energy. The physical layer has two versions of the signal. MWUS is the MTC wake-up signal for LTE-M, and NWUS is the narrowband wake-up signal for NB-IoT. Release 16 added group WUS, or GWUS, which wakes up only one group of UEs instead of every UE that shares the PO.

NOTE : There is similar technology with the same terminology (i.e, Wake Up Signal) in 5G/NR as well. But the difference is that WUS in NR is related to CDRX (Connected Mode DRX) and mostly for saving energy in connected mode.

Overall Procedure

Let's first see which messages have to be in place before the UE monitors a single WUS. Three conditions come from three different messages. The cell has to broadcast a WUS configuration, the UE has to support WUS, and the UE has to enter RRC_IDLE in the right way. If any one of them is missing, the UE simply monitors every PO as before.

Overall Procedure for the WUS mechanism can be illustrated as below. As you may notice, Network (eNB) informs all the UE about it's capability and configuration for WUS and UE can inform the eNB about its capability of WUS support. If both pary supports WUS feature, eNB may (or may not) activate WUS using a few different RRC messages shown below.

Once WUS is triggered/activated, UE is supposed to monitor WUS to determine whether it has to completely wake up for Paging message or not.

The sequence diagram below shows the UE on the left and the eNB on the right. SIB2 carries the WUS configuration, and UE Capability Information reports that the UE supports WUS. The RRC release step lists the three ways to enter RRC_IDLE that allow WUS in this cell. After that, the UE loops between Monitor WUS and the decision WUS detected. Only a YES leads to Monitor Paging, after the time gap from 36.304 Table 7.4-1.

 

WUS overall procedure between UE and eNB, from SIB2 to Monitor Paging

WUS moves the paging decision one step earlier. The UE detects a short signal first and decodes the paging PDCCH only when that signal is present.

  • SIB2 - WUS configuration : the eNB broadcasts wus-Config-r15, and for GWUS gwus-Config-r16, inside radioResourceConfigCommon. A cell without this field does not use WUS.
  • UE Capability Information - WUS supported : the UE reports wakeUpSignal-r15 and related fields in UE-RadioPagingInfo-r12. The eNB sees the same information in the paging request from the MME.
  • RRC Release : WUS is used only in the cell where the UE last entered RRC_IDLE. The trigger is RRCEarlyDataComplete, RRCConnectionRelease without noLastCellUpdate, or RRCConnectionRelease with noLastCellUpdate when the UE was already using (G)WUS in this cell.
  • Monitor WUS and WUS detected ? : a NO sends the UE back to WUS monitoring, so the UE skips the paging PDCCH for that PO.
  • Monitor Paging : a YES makes the UE wait for the gap and then monitor the associated PO.

The gap between the end of WUS and the PO depends on the DRX type. With normal DRX, the UE uses timeOffsetDRX. With eDRX, the UE uses timeOffset-eDRX-Short when the cell does not broadcast timeOffset-eDRX-Long. When the cell broadcasts both, the table below decides the gap from the UE capability and the broadcast value.

< 36.304 v17.0.0 : Table 7.4-1: Determination of GAP between end of WUS and associated PO >

 

36.304 Table 7.4-1, determination of the gap between the end of WUS and the associated PO

NOTE : wakeUpSignalMinGap-eDRX is informed by UE via UE capability Information

NOTE : timeOffset-eDRX-Long, timeOffset-eDRX-Short are configured in SIB2

Read the table row by row. A UE that reports 40 ms or nothing always gets the short eDRX gap. A UE that reports 240 ms also gets the short gap in both columns. A UE that reports 1000 ms gets the long gap in both columns. A UE that reports 2000 ms gets the long gap only when the long gap is 2000 ms, which is the only value large enough for it. Clause 7.4 of 36.304 v19.2.0 still points to this same Table 7.4-1.

  • Three messages enable WUS : SIB2 from the eNB, UE Capability Information from the UE, and the RRC message that sends the UE to RRC_IDLE.
  • WUS is tied to the last used cell : after a reselection, the UE monitors paging in the new cell without WUS until the next release there.
  • The gap follows the DRX type : timeOffsetDRX for DRX, and Table 7.4-1 for eDRX when timeOffset-eDRX-Long is broadcast.

How to figure out which PO to monitor ?

Let's look into the process of monitoring Paging message in WUS a little more detail. The process can be illustrated as below. As noted here, first UE is monitoring WUS periodically and if the signal is detected, UE is supposed to monitor a few PO (Paging Occassion)s after a certain time duration (timeoffset).

In the image below, each PO is a pulse. The light pulses on the left are POs that the UE does not monitor, because no WUS came before them. The red pulse is the detected Wake Up Signal. After the Time Offset, the dark blue pulses are the POs that the UE monitors. The number of these POs comes from numPOs in SIB2. The same Table 7.4-1 is shown again under the pulses.

 

PO monitoring after a detected WUS, with the time offset and the POs set by numPOs

One detected WUS opens a window of POs. The UE skips every PO outside that window.

numPOs needs one warning. 36.331 says that numPOs applies to UEs configured with extended DRX. With normal DRX, one WUS is associated with one PO, so the UE monitors only the following PO. With eDRX, one WUS can cover 1, 2 or 4 consecutive POs in the PTW. The UE then stops early if it receives a paging message with its own NAS identity.

If we take a look at the details of WUS part, it is illustrated and described as below (based on 36.300 - 10.1.4)

    The UE can expect WUS repetitions during "Configured maximum WUS duration" but the actual WUS transmission can be shorter, e.g. for UE in good coverage. The UE does not monitor WUS during the non-zero "Gap".

NOTE : The maximum duration can be maxDurationFactor-r15 x npdcch-NumRepetitionPaging-r13 or

                                                   maxDurationFactor-r15 x mpdcch-NumRepetitionPaging-r13

    where (based on 36.331),

      maxDurationFactor : Maximum WUS duration, expressed as a ratio of Rmax for Type 1-CSS. Value one128th means Rmax * 1/128, value one64th means Rmax * 1/64 and so on.

      Rmax is the value of mpdcch-NumRepetitionPaging (or npdcch-NumRepetitionPaging) for the carrier.

      maxDuration = Max (signalled value * Rmax, 1)

The figures below are from 36.300 clause 10.1.4, and each one carries its figure number in the title above it.

< 36.300 v17.2 : Figure 10.1.4-1: Illustration of WUS timing >

 

36.300 Figure 10.1.4-1, WUS timing with the configured maximum WUS duration and the gap

The configured maximum WUS duration starts at the start of WUS, and the gap follows it. So the gap is counted from the end of the maximum duration, not from the end of the actual WUS. A UE in good coverage may detect WUS early and then sleep until the PO. The eNB may also send a shorter WUS than the maximum.

< 36.300 v17.2 : Figure 10.1.4-2: Illustration of GWUS timing for NB-IoT UEs >

 

36.300 Figure 10.1.4-2, GWUS timing for NB-IoT UEs with WUS 1 and WUS 0 in time

For NB-IoT, the two WUS resources sit one after the other in time. WUS 0 ends at the gap, and WUS 1 comes one maximum duration earlier. So 36.304 gives WUS resource 1 a time offset equal to the gap plus the maximum WUS duration. WUS 0 is the resource that shares radio resources with the Release 15 wus-Config when both are configured.

< 36.300 v17.2 : Figure 10.1.4-3: Illustration of GWUS timing for BL UEs and UEs in enhanced coverage >

 

36.300 Figure 10.1.4-3, GWUS timing for BL UEs and UEs in enhanced coverage with four WUS resources

For BL UEs and UEs in enhanced coverage, up to four WUS resources can be used. The figure places WUS 0 and WUS 2 in frequency next to WUS 1 and WUS 3, and it uses two maximum durations in time. Each resource can then carry several WUS groups, and the UE picks one group from its UE paging probability information or from its NAS identity.

  • DRX means one PO per WUS : numPOs applies only when the UE uses eDRX.
  • The gap starts after the maximum duration : the actual WUS can be shorter than the configured maximum WUS duration.
  • GWUS adds resources in time or in frequency : two resources in time for NB-IoT, and up to four in time and frequency for BL UEs and UEs in enhanced coverage.

UE Capability

Since this is relatively new feature (Release 15/16), it is not assumed that every UE in the market support this feature. So there should be a mechanism by which UE can inform eNB whether it support WUS or not. Followings are Information Elements in UE capability Information message related to WUS.

Following is based on 36.331 v19.3.0 (Release 19)

UECapabilityInformation-v1250-IEs ::= SEQUENCE {
   ue-RadioPagingInfo-r12                UE-RadioPagingInfo-r12 OPTIONAL,
   nonCriticalExtension                    SEQUENCE {} OPTIONAL
}

UE-RadioPagingInfo-r12 ::= SEQUENCE {
   ue-Category-v1250                    INTEGER (0) OPTIONAL,
   ...,
   [[ ue-CategoryDL-v1310             ENUMERATED {m1} OPTIONAL,
   ce-ModeA-r13                           ENUMERATED {true} OPTIONAL,
   ce-ModeB-r13                           ENUMERATED {true} OPTIONAL
   ]],
   [[ wakeUpSignal-r15                              ENUMERATED {true} OPTIONAL,
   wakeUpSignal-TDD-r15                           ENUMERATED {true} OPTIONAL,
   wakeUpSignalMinGap-eDRX-r15                ENUMERATED {ms40, ms240, ms1000, ms2000} OPTIONAL,
   wakeUpSignalMinGap-eDRX-TDD-r15         ENUMERATED {ms40, ms240, ms1000, ms2000} OPTIONAL
   ]],
   [[ ue-CategoryDL-v1610                        ENUMERATED {m2} OPTIONAL,
   groupWakeUpSignal-r16                         ENUMERATED {true} OPTIONAL,
   groupWakeUpSignalTDD-r16                    ENUMERATED {true} OPTIONAL,
   groupWakeUpSignalAlternation-r16           ENUMERATED {true} OPTIONAL,
   groupWakeUpSignalAlternationTDD-r16     ENUMERATED {true} OPTIONAL
   ]],
   [[
   inactiveStatePO-Determination-r17          ENUMERATED {true} OPTIONAL
   ]]
}

The WUS fields sit in UE-RadioPagingInfo-r12, not in the main capability tree. The reason is paging. The MME keeps this container with the UE context and returns it to the eNB in the S1AP paging request. The eNB then knows the WUS support of the UE before it pages it. The fields wakeUpSignal-r15 and wakeUpSignal-TDD-r15 report WUS support for FDD and TDD. The field wakeUpSignalMinGap-eDRX-r15 reports the minimum gap from 36.304 Table 7.4-1. The Release 16 fields report GWUS, and groupWakeUpSignalAlternation-r16 reports GWUS with group resource alternation. A UE that reports alternation always uses a fixed minimum gap of 40 ms for DRX. The Release 17 field inactiveStatePO-Determination-r17 is not a WUS field. It tells the network that the UE can use the same PO in RRC_INACTIVE as in RRC_IDLE.

  • The capability travels with paging : UE-RadioPagingInfo-r12 reaches the eNB in the paging request, so the eNB knows whether to send WUS.
  • FDD and TDD are reported separately : each WUS field has a TDD twin.
  • The minimum gap feeds Table 7.4-1 : wakeUpSignalMinGap-eDRX-r15 selects the row of that table.

RRC Parameters

The network side of WUS is almost entirely in system information. Only one field in a dedicated message matters, and it decides whether the UE keeps its last used cell. The listings below are grouped by message, so you can find each field from the overall procedure above.

Followings are RRC parameters getting involved in WUS operation (SIB2, RRCEarlyDataComplete and RRC Connection Release).

SIB2 and RadioResourceConfigCommonSIB

SIB2 carries the WUS configuration inside radioResourceConfigCommon. The red lines mark the fields that WUS uses. PCCH-Config and its extensions are also here, because WUS only makes sense together with the paging configuration.

Following is based on 36.331 v19.3.0 (Release 19)

SystemInformationBlockType2 ::= SEQUENCE {
    ac-BarringInfo SEQUENCE {
        ac-BarringForEmergency                 BOOLEAN,
        ac-BarringForMO-Signalling             AC-BarringConfig OPTIONAL, -- Need OP
        ac-BarringForMO-Data                   AC-BarringConfig OPTIONAL -- Need OP
    } OPTIONAL, -- Need OP
    radioResourceConfigCommon               RadioResourceConfigCommonSIB,
    ue-TimersAndConstants                     UE-TimersAndConstants,
    freqInfo SEQUENCE {
        ul-CarrierFreq ARFCN-ValueEUTRA           OPTIONAL, -- Need OP
        ul-Bandwidth ENUMERATED                   {n6, n15, n25, n50, n75, n100} OPTIONAL, -- Need OP
        additionalSpectrumEmission                   AdditionalSpectrumEmission
    },
    mbsfn-SubframeConfigList                  MBSFN-SubframeConfigList OPTIONAL, -- Need OR
    timeAlignmentTimerCommon                  TimeAlignmentTimer,
    ...,                                      -- lateNonCriticalExtension and the r9 to r19 extensions are not WUS related
}

RadioResourceConfigCommonSIB ::= SEQUENCE {
   rach-ConfigCommon                                          RACH-ConfigCommon,
   bcch-Config                                                    BCCH-Config,
   pcch-Config                                                    PCCH-Config,
   prach-Config                                                   PRACH-ConfigSIB,
   pdsch-ConfigCommon                                        PDSCH-ConfigCommon,
   pusch-ConfigCommon                                        PUSCH-ConfigCommon,
   pucch-ConfigCommon                                        PUCCH-ConfigCommon,
   soundingRS-UL-ConfigCommon                            SoundingRS-UL-ConfigCommon,
   uplinkPowerControlCommon                                 UplinkPowerControlCommon,
   ul-CyclicPrefixLength                                         UL-CyclicPrefixLength,
   ...,
   [[ uplinkPowerControlCommon-v1020                    UplinkPowerControlCommon-v1020 OPTIONAL -- Need OR
   ]],
   [[ rach-ConfigCommon-v1250                             RACH-ConfigCommon-v1250 OPTIONAL -- Need OR
   ]],
   [[ pusch-ConfigCommon-v1270                           PUSCH-ConfigCommon-v1270 OPTIONAL -- Need OR
   ]],
   [[ bcch-Config-v1310                                       BCCH-Config-v1310 OPTIONAL, -- Need OR
   pcch-Config-v1310                                          PCCH-Config-v1310 OPTIONAL, -- Need OR
   freqHoppingParameters-r13                                FreqHoppingParameters-r13 OPTIONAL, -- Need OR
   pdsch-ConfigCommon-v1310                              PDSCH-ConfigCommon-v1310 OPTIONAL, -- Need OR
   pusch-ConfigCommon-v1310                              PUSCH-ConfigCommon-v1310 OPTIONAL, -- Need OR
   prach-ConfigCommon-v1310                              PRACH-ConfigSIB-v1310 OPTIONAL, -- Need OR
   pucch-ConfigCommon-v1310                              PUCCH-ConfigCommon-v1310 OPTIONAL -- Need OR
   ]],
   [[ highSpeedConfig-r14                                     HighSpeedConfig-r14 OPTIONAL, -- Need OR
   prach-Config-v1430                                         PRACH-Config-v1430 OPTIONAL, -- Need OR
   pucch-ConfigCommon-v1430                             PUCCH-ConfigCommon-v1430 OPTIONAL -- Need OR
   ]],
   [[ prach-Config-v1530                                     PRACH-ConfigSIB-v1530 OPTIONAL, -- Cond EDT
   ce-RSS-Config-r15                                          RSS-Config-r15 OPTIONAL, -- Need OR
   wus-Config-r15                                               WUS-Config-r15 OPTIONAL, -- Need OR
   highSpeedConfig-v1530                                     HighSpeedConfig-v1530 OPTIONAL -- Need OR
   ]],
   [[ uplinkPowerControlCommon-v1540                   UplinkPowerControlCommon-v1530 OPTIONAL -- Need OR
   ]],
   [[ wus-Config-v1560                                        WUS-Config-v1560 OPTIONAL -- Need OR
   ]],
   [[
   wus-Config-v1610                                            WUS-Config-v1610 OPTIONAL, -- Need OR
   highSpeedConfig-v1610                                     HighSpeedConfig-v1610 OPTIONAL, -- Need OR
   crs-ChEstMPDCCH-ConfigCommon-r16                  CRS-ChEstMPDCCH-ConfigCommon-r16 OPTIONAL, -- Need OR
   gwus-Config-r16                                              GWUS-Config-r16 OPTIONAL, -- Need OR
   uplinkPowerControlCommon-v1610                       UplinkPowerControlCommon-v1610 OPTIONAL, -- Need OR
   rss-MeasConfig-r16                                          ENUMERATED {enabled} OPTIONAL, -- Need OR
   rss-MeasNonNCL-r16                                        ENUMERATED {enabled} OPTIONAL, -- Need OR
   puncturedSubcarriersDL-r16                               BIT STRING (SIZE (2)) OPTIONAL, -- Need OR
   highSpeedInterRAT-NR-r16                                BOOLEAN OPTIONAL -- Need OR
   ]],
   [[
   pcch-Config-v1700                                          PCCH-Config-v1700 OPTIONAL, -- Need OR
   ntn-ConfigCommon-r17    SEQUENCE {
         ta-Report-r17 ENUMERATED {enabled} OPTIONAL, -- Need
   OR
   t318-r17 ENUMERATED {
      ms0, ms50, ms100, ms200,
      ms500, ms1000, ms2000, ms4000},
   prach-TxDuration-r17                                       PRACH-TxDuration-r17 OPTIONAL, -- Need OR
   pucch-TxDuration-r17                                      PUCCH-TxDuration-r17 OPTIONAL, -- Need OR
   pusch-TxDuration-r17                                      PUSCH-TxDuration-r17 OPTIONAL -- Need OR
   } OPTIONAL -- Cond NTN
   ]],
   [[
   cb-Msg3-ConfigSIB-r19                                     CB-Msg3-ConfigSIB-r19 OPTIONAL -- Need OR
   ]]
}

PCCH-Config ::= SEQUENCE {
   defaultPagingCycle                      ENUMERATED {rf32, rf64, rf128, rf256},
   nB                                            ENUMERATED {
                                                                fourT, twoT, oneT, halfT, quarterT, oneEighthT,
                                                                oneSixteenthT, oneThirtySecondT}
}

PCCH-Config-v1310 ::= SEQUENCE {
   paging-narrowBands-r13                            INTEGER (1..maxAvailNarrowBands-r13),
   mpdcch-NumRepetition-Paging-r13              ENUMERATED {r1, r2, r4, r8, r16, r32, r64, r128, r256},
   nB-v1310                                               ENUMERATED {one64thT, one128thT, one256thT}
   OPTIONAL -- Need OR
}

PCCH-Config-v1700 ::= SEQUENCE {
   ranPagingInIdlePO-r17                               ENUMERATED {true}
}

Three extensions carry WUS. The Release 15 configuration is wus-Config-r15. The power boost comes in wus-Config-v1560, and relaxed measurement comes in wus-Config-v1610. The group WUS configuration is gwus-Config-r16. The field mpdcch-NumRepetition-Paging-r13 in PCCH-Config-v1310 is Rmax for LTE-M, so it sets the actual maximum WUS duration together with maxDurationFactor. The update to 36.331 v19.3.0 changed two things in this listing. The condition on ntn-ConfigCommon-r17 is now Cond NTN, and a Release 19 group with cb-Msg3-ConfigSIB-r19 was added. The SIB2 listing now also shows mbsfn-SubframeConfigList and timeAlignmentTimerCommon, and it marks the rest of the IE as not WUS related.

WUS-Config and GWUS-Config

These are the IEs that the SIB2 fields point to. WUS-Config holds the timing of one WUS resource. GWUS-Config reuses the same timing and adds the groups, the resources and the probability thresholds.

Following is based on 36.331 v19.3.0 (Release 19)

WUS-Config-r15 ::= SEQUENCE {
   maxDurationFactor-r15                                ENUMERATED {one32th, one16th, one8th, one4th},
   numPOs-r15                                              ENUMERATED {n1, n2, n4, spare1} DEFAULT n1,
   freqLocation-r15                                        ENUMERATED {n0, n2, n4, spare1},
   timeOffsetDRX-r15                                     ENUMERATED {ms40, ms80, ms160, ms240},
   timeOffset-eDRX-Short-r15                         ENUMERATED {ms40, ms80, ms160, ms240},
   timeOffset-eDRX-Long-r15                          ENUMERATED {ms1000, ms2000} OPTIONAL -- Need OP
}

WUS-Config-v1560 ::= SEQUENCE {
   powerBoost-r15                                         ENUMERATED {dB0, dB1dot8, dB3, dB4dot8}
}

WUS-Config-v1610 ::= SEQUENCE {
   numDRX-CyclesRelaxed-r16                          ENUMERATED {n1, n2, n4, n8}
}

GWUS-Config-r16 ::= SEQUENCE {
   groupAlternation-r16                                  ENUMERATED {true} OPTIONAL, -- Need OR
   commonSequence-r16                               ENUMERATED {g0, g126} OPTIONAL, -- Need OR
   timeParameters-r16                                  GWUS-TimeParameters-r16 OPTIONAL, -- Cond NoWUSr15
   resourceConfigDRX-r16                              GWUS-ResourceConfig-r16,
   resourceConfig-eDRX-Short-r16                   GWUS-ResourceConfig-r16 OPTIONAL, -- Need OP
   resourceConfig-eDRX-Long-r16                    GWUS-ResourceConfig-r16 OPTIONAL, -- Cond TimeOffset
   probThreshList-r16                                    GWUS-ProbThreshList-r16 OPTIONAL, -- Cond ProbabilityBased
   groupNarrowBandList-r16                            GWUS-GroupNarrowBandList-r16 OPTIONAL -- Need OR
}

GWUS-TimeParameters-r16 ::= SEQUENCE {
   maxDurationFactor-r16                              ENUMERATED {one32th, one16th, one8th, one4th},
   numPOs-r16                                            ENUMERATED {n1, n2, n4, spare1} DEFAULT n1,
   timeOffsetDRX-r16                                    ENUMERATED {ms40, ms80, ms160, ms240},
   timeOffset-eDRX-Short-r16                        ENUMERATED {ms40, ms80, ms160, ms240},
   timeOffset-eDRX-Long-r16                         ENUMERATED {ms1000, ms2000} OPTIONAL, -- Need OP
   numDRX-CyclesRelaxed-r16                        ENUMERATED {n1, n2, n4, n8} OPTIONAL, -- Need OR
   powerBoost-r16                                       ENUMERATED {dB0, dB1dot8, dB3, dB4dot8} OPTIONAL, -- Need OR
   ...
}

GWUS-ResourceConfig-r16 ::= SEQUENCE {
   resourceMappingPattern-r16 CHOICE {
      resourceLocationWithWUS                     ENUMERATED {primary, secondary, primary3FDM},
      resourceLocationWithoutWUS                 ENUMERATED {n0, n2}
   },
   numGroupsList-r16                                  GWUS-NumGroupsList-r16 OPTIONAL, -- Need OP
   groupsForServiceList-r16                         GWUS-GroupsForServiceList-r16 OPTIONAL -- Cond ProbabilityBased
}

GWUS-GroupsForServiceList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-r16)) 
                                                                       OF INTEGER (1..maxGWUS-Groups-1-r16)
GWUS-GroupNarrowBandList-r16 ::= SEQUENCE (SIZE (1..maxAvailNarrowBands-r13)) OF BOOLEAN
GWUS-NumGroupsList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-Resources-r16)) OF GWUS-NumGroups-r16
GWUS-ProbThreshList-r16 ::= SEQUENCE (SIZE (1..maxGWUS-ProbThresholds-r16)) OF GWUS-PagingProbThresh-r16
GWUS-NumGroups-r16 ::= ENUMERATED {n1, n2, n4, n8}
GWUS-PagingProbThresh-r16 ::= ENUMERATED {p20, p30, p40, p50, p60, p70, p80, p90}

Let's go through WUS-Config-r15 field by field. The field maxDurationFactor sets the maximum WUS duration as a fraction of Rmax, from one32th to one4th for LTE-M. The field freqLocation places the 2-PRB MWUS inside the paging narrowband. Value n0 means the 1st and 2nd PRB, n2 the 3rd and 4th PRB, and n4 the 5th and 6th PRB. The field timeOffsetDRX is the minimum gap for DRX, and 36.331 requires timeOffset-eDRX-Short to be not shorter than timeOffsetDRX. The field powerBoost sets the WUS power relative to CRS, from 0 dB to 4.8 dB. Finally, numDRX-CyclesRelaxed in wus-Config-v1610 lets the UE use WUS for synchronisation and skip serving cell measurements for up to 8 DRX cycles.

GWUS-Config-r16 has one rule worth remembering. If wus-Config-r15 is present, GWUS reuses its timing. In that case timeParameters-r16 is absent, under Cond NoWUSr15. The field commonSequence-r16 configures a common WUS that wakes every group on a shared resource. The field probThreshList-r16 splits the UEs into paging probability groups with up to 3 thresholds from 20 % to 90 %. The listing also had a typo in GWUS-ProbThreshList-r16. The element type is GWUS-PagingProbThresh-r16, and the listing now shows it that way.

RRCEarlyDataComplete and RRCConnectionRelease

These two messages decide the last used cell. As the overall procedure shows, WUS applies only in the cell where the UE most recently entered RRC_IDLE through one of them.

Following is based on 36.331 v19.3.0 (Release 19)

RRCEarlyDataComplete-NB-r15 ::= SEQUENCE {
   criticalExtensions CHOICE {
      rrcEarlyDataComplete-r15              RRCEarlyDataComplete-NB-r15-IEs,
      criticalExtensionsFuture              SEQUENCE {}
   }
}

RRCEarlyDataComplete-NB-r15-IEs ::= SEQUENCE {
   dedicatedInfoNAS-r15                     DedicatedInfoNAS OPTIONAL, -- Need ON
   extendedWaitTime-r15                     INTEGER (1..1800) OPTIONAL, -- Need ON
   redirectedCarrierInfo-r15                RedirectedCarrierInfo-NB-r13 OPTIONAL, -- Need ON
   redirectedCarrierInfoExt-r15             RedirectedCarrierInfo-NB-v1430 OPTIONAL, -- Cond Redirection
   nonCriticalExtension                     RRCEarlyDataComplete-NB-v1590-IEs OPTIONAL
}

RRCEarlyDataComplete-NB-v1590-IEs ::= SEQUENCE {
   lateNonCriticalExtension                 OCTET STRING OPTIONAL,
   nonCriticalExtension                     RRCEarlyDataComplete-NB-v1700-IEs OPTIONAL
}

RRCEarlyDataComplete-NB-v1700-IEs ::= SEQUENCE {
   cbp-Index-r17                            INTEGER (1..2) OPTIONAL, -- Need OR
   nonCriticalExtension                     SEQUENCE {} OPTIONAL
}

RRCConnectionRelease-v15b0-IEs ::= SEQUENCE {
   noLastCellUpdate-r15                 ENUMERATED {true} OPTIONAL, -- Need OP
   nonCriticalExtension                   RRCConnectionRelease-v1610-IEs OPTIONAL
}

RRCEarlyDataComplete ends an early data transmission and always updates the last used cell. In RRCConnectionRelease, noLastCellUpdate-r15 tells the UE not to update the last used cell for (G)WUS. With this field, the eNB can end a connection without changing the cell where the UE monitors WUS. RRCEarlyDataComplete-NB-v1700-IEs adds cbp-Index-r17, which selects an entry of the coverage-based paging configuration in SystemInformationBlockType22-NB.

NB-IoT - RadioResourceConfigCommonSIB-NB and WUS-Config-NB

NB-IoT has its own set of IEs with the same structure. The WUS configuration is in RadioResourceConfigCommonSIB-NB-r13, and Rmax comes from npdcch-NumRepetitionPaging-r13 in PCCH-Config-NB-r13. So the same two questions apply here, the WUS timing and the Rmax that scales it.

Following is based on 36.331 v19.3.0 (Release 19)

RadioResourceConfigCommonSIB-NB-r13 ::= SEQUENCE {
   rach-ConfigCommon-r13                         RACH-ConfigCommon-NB-r13,
   bcch-Config-r13                                   BCCH-Config-NB-r13,
   pcch-Config-r13                                   PCCH-Config-NB-r13,
   nprach-Config-r13                                 NPRACH-ConfigSIB-NB-r13,
   npdsch-ConfigCommon-r13                     NPDSCH-ConfigCommon-NB-r13,
   npusch-ConfigCommon-r13                     NPUSCH-ConfigCommon-NB-r13,
   dl-Gap-r13 DL-GapConfig-NB-r13             OPTIONAL, -- Need OP
   uplinkPowerControlCommon-r13               UplinkPowerControlCommon-NB-r13,
   ...,
   [[ nprach-Config-v1330                         NPRACH-ConfigSIB-NB-v1330 OPTIONAL -- Need OR
   ]],
   [[ nprach-Config-v1450                         NPRACH-ConfigSIB-NB-v1450 OPTIONAL -- Cond
       EnhPowerControl
   ]],
   [[ nprach-Config-v1530                         NPRACH-ConfigSIB-NB-v1530 OPTIONAL, -- Need OR
      dl-Gap-v1530                                   DL-GapConfig-NB-v1530 OPTIONAL, -- Cond TDD
      wus-Config-r15                                 WUS-Config-NB-r15 OPTIONAL -- Need OR
   ]],
   [[ nprach-Config-v1550                         NPRACH-ConfigSIB-NB-v1550 OPTIONAL -- Cond TDD1
   ]],
   [[
      gwus-Config-r16                               GWUS-Config-NB-r16 OPTIONAL, -- Need OR
      nrs-NonAnchorConfig-r16                    ENUMERATED {true} OPTIONAL, -- Need OR
      ue-SpecificDRX-CycleMin-r16               ENUMERATED {rf32, rf64, rf128, rf256, rf512,
                                                                                rf1024} OPTIONAL -- Need OR
   ]],
   [[ ntn-ConfigCommon-r17 SEQUENCE {
      ta-Report-r17                                  ENUMERATED {enabled} OPTIONAL, -- Need OR
      t318-r17                                         ENUMERATED {
                                                                             ms0, ms200, ms500, ms1000, ms2000, ms4000, ms8000},
      nprach-TxDurationFmt01-r17              NPRACH-TxDurationFmt01-NB-r17 OPTIONAL, -- Need OR
      nprach-TxDurationFmt2-r17                NPRACH-TxDurationFmt2-NB-r17 OPTIONAL, -- Need OR
      npusch-TxDuration-r17                      NPUSCH-TxDuration-NB-r17 OPTIONAL -- Need OR
   } OPTIONAL -- Cond NTN
   ]],
   [[ cb-Msg3-ConfigSIB-NB-r19                  CB-Msg3-ConfigSIB-NB-r19 OPTIONAL -- Need OR
   ]]
}

BCCH-Config-NB-r13 ::= SEQUENCE {
   modificationPeriodCoeff-r13                   ENUMERATED {n16, n32, n64, n128}
}

PCCH-Config-NB-r13 ::= SEQUENCE {
   defaultPagingCycle-r13                         ENUMERATED {rf128, rf256, rf512, rf1024},
   nB-r13                                               ENUMERATED {
                                                                        fourT, twoT, oneT, halfT, quarterT, one8thT,
                                                                        one16thT, one32ndT, one64thT,
                                                                        one128thT, one256thT, one512thT, one1024thT,
                                                                        spare3, spare2, spare1},
   npdcch-NumRepetitionPaging-r13            ENUMERATED {
                                                                         r1, r2, r4, r8, r16, r32, r64, r128,
                                                                         r256, r512, r1024, r2048,
                                                                         spare4, spare3, spare2, spare1}
}

WUS-Config-NB-r15 ::= SEQUENCE {
   maxDurationFactor-r15                             WUS-MaxDurationFactor-NB-r15,
   numPOs-r15                                            ENUMERATED {n1, n2, n4} DEFAULT n1,
   numDRX-CyclesRelaxed-r15                        ENUMERATED {n1, n2, n4, n8},
   timeOffsetDRX-r15                                    ENUMERATED {ms40, ms80, ms160, ms240},
   timeOffset-eDRX-Short-r15                        ENUMERATED {ms40, ms80, ms160, ms240},
   timeOffset-eDRX-Long-r15                         ENUMERATED {ms1000, ms2000} OPTIONAL, -- Need OP
   ...
}

WUS-ConfigPerCarrier-NB-r15 ::= SEQUENCE {
   maxDurationFactor-r15                                 WUS-MaxDurationFactor-NB-r15
}

WUS-MaxDurationFactor-NB-r15 ::= ENUMERATED {one128th, one64th, one32th, one16th,
                                                                    oneEighth, oneQuarter, oneHalf}

Compare WUS-Config-NB-r15 with the LTE-M version. The field maxDurationFactor has a wider range, from one128th to oneHalf, because NB-IoT uses a larger Rmax, up to r2048. The field numDRX-CyclesRelaxed is part of the Release 15 IE for NB-IoT, while LTE-M added it in Release 16. There is no freqLocation, because NWUS uses the NB-IoT carrier itself. The 36.331 v19.3.0 update also added the Release 19 cb-Msg3-ConfigSIB-NB-r19 group here, and it changed the condition on ntn-ConfigCommon-r17 to Cond NTN.

  • SIB2 holds all the WUS timing : wus-Config-r15, wus-Config-v1560, wus-Config-v1610 and gwus-Config-r16 for LTE-M, and wus-Config-r15 and gwus-Config-r16 in the NB-IoT SIB.
  • Rmax comes from the paging configuration : mpdcch-NumRepetition-Paging-r13 for LTE-M and npdcch-NumRepetitionPaging-r13 for NB-IoT.
  • noLastCellUpdate protects the last used cell : a short connection elsewhere does not move WUS to a cell that did not use it.
  • NB-IoT allows a longer relative WUS duration : maxDurationFactor goes up to oneHalf for NB-IoT and up to one4th for LTE-M.

Reference

  • 3GPP TS 36.300 v19.2.0 - E-UTRA and E-UTRAN overall description, clause 10.1.4
  • 3GPP TS 36.304 v19.2.0 - UE procedures in idle mode, clauses 7.4 and 7.5
  • 3GPP TS 36.331 v19.3.0 - RRC protocol specification, WUS-Config, GWUS-Config and UE-RadioPagingInfo
  • 3GPP TS 36.211 v19.3.0 - Physical channels and modulation, clauses 6.11B and 10.2.6B