If you want to automaticly clear the PXE advertisements of a certain age, you can use the Powershell script below to clear them. The script determines what advertisements are OK to clear, using a WQL query. Please note…timing logic works accurate if you keep $minutesBeforeAction < 60. Otherwise you might need to alter the logic a bit. Have fun

Import-Module “C:Program Files (x86)Microsoft Configuration ManagerAdminConsolebinConfigurationManager.psd1”

$siteServer = “localhost”

$siteCode = “SITECODE”

$minutesBeforeAction = 15

$query = “select lastPXEAdvertisementTime, NetbiosName from SMS_LastPXEAdvertisement”

$formattedTime = [bigint](Get-Date).ToString(“yyyyMMddhhmmss”)

cd “$($siteCode):”

$PXEAdvertisements = Get-WmiObject -Query $query -Namespace “ROOTSMSsite_$siteCode” -ComputerName “$siteServer”

foreach ($PXEAdvertisement in $PXEAdvertisements){

    $simpleLastPXEAdvertisementTime = [bigint]$PXEAdvertisement.LastPXEAdvertisementTime.Split(“.”)[0]

    if ($formattedTime – $simpleLastPXEAdvertisementTime -gt ($minutesBeforeAction*100)){

        Clear-CMPxeDeployment -DeviceName $PXEAdvertisement.NetbiosName

    }

}