diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index 4671b4ff7..83f17200b 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -31,6 +31,7 @@ Release 3-dev - (wifi) Only include QoS Null frames for TIDs for which a BA agreement exists in responses to BSRP TFs - (wifi) Notify RX end only for the last received HE TB PPDU - (wifi) Correctly compute the time to RX end to be passed to WifiPhyStateHelper::SwitchToRx() +- (wifi) #709 Adjust WifiPhy::RxSensitivity with channel width for YansWifiChannel Release 3.36.1 -------------- diff --git a/src/wifi/model/yans-wifi-channel.cc b/src/wifi/model/yans-wifi-channel.cc index 6cbbad859..4d691ef3c 100644 --- a/src/wifi/model/yans-wifi-channel.cc +++ b/src/wifi/model/yans-wifi-channel.cc @@ -127,7 +127,9 @@ YansWifiChannel::Receive (Ptr phy, Ptr ppdu, double NS_LOG_FUNCTION (phy << ppdu << rxPowerDbm); // Do no further processing if signal is too weak // Current implementation assumes constant RX power over the PPDU duration - if ((rxPowerDbm + phy->GetRxGain ()) < phy->GetRxSensitivity ()) + // Compare received TX power per MHz to normalized RX sensitivity + uint16_t txWidth = ppdu->GetTransmissionChannelWidth (); + if ((rxPowerDbm + phy->GetRxGain ()) < phy->GetRxSensitivity () + RatioToDb (txWidth / 20.0)) { NS_LOG_INFO ("Received signal too weak to process: " << rxPowerDbm << " dBm"); return;