🛠️ToolsShed

Wireless Standards Reference

Compare Wi-Fi 802.11 standards from b/g/n to Wi-Fi 6E and Wi-Fi 7 specifications.

802.11bWiFi 1
WirelessStandardsReference.legacy
Year1999Frequency2.4 GHzMax Speed11 MbpsWirelessStandardsReference.range~35m indoor

First widely adopted standard. DSSS modulation. Compatible with legacy devices.

802.11aWiFi 2
WirelessStandardsReference.legacy
Year1999Frequency5 GHzMax Speed54 MbpsWirelessStandardsReference.range~35m indoor

OFDM modulation. Less interference than 2.4 GHz. Higher cost, limited adoption.

802.11gWiFi 3
WirelessStandardsReference.legacy
Year2003Frequency2.4 GHzMax Speed54 MbpsWirelessStandardsReference.range~38m indoor

Backward compatible with 802.11b. OFDM at 2.4 GHz. Widely deployed globally.

802.11nWiFi 4
WirelessStandardsReference.current
Year2009Frequency2.4 / 5 GHzMax Speed600 MbpsWirelessStandardsReference.range~70m indoor

MIMO technology (up to 4 streams). Channel bonding (40 MHz). Dual-band support.

802.11acWiFi 5
WirelessStandardsReference.current
Year2013Frequency5 GHzMax Speed3.5 GbpsWirelessStandardsReference.range~35m indoor

MU-MIMO (downlink). 256-QAM. Up to 8 spatial streams. Wave 2 added MU-MIMO.

802.11axWiFi 6
WirelessStandardsReference.current
Year2019Frequency2.4 / 5 GHzMax Speed9.6 GbpsWirelessStandardsReference.range~35m indoor

OFDMA for multiple users. Target Wake Time (battery saving). BSS Coloring. 1024-QAM.

802.11axWiFi 6E
WirelessStandardsReference.current
Year2021Frequency2.4 / 5 / 6 GHzMax Speed9.6 GbpsWirelessStandardsReference.range~35m indoor

Extends WiFi 6 to 6 GHz band. 1200 MHz of additional spectrum. Less congestion.

802.11beWiFi 7
WirelessStandardsReference.latest
Year2024Frequency2.4 / 5 / 6 GHzMax Speed46 GbpsWirelessStandardsReference.range~35m indoor

Multi-Link Operation (MLO). 4096-QAM. 320 MHz channels. Ultra-low latency.

Preguntas Frecuentes

Implementación de Código

import subprocess
import re

def get_wifi_info() -> dict:
    """Get current WiFi connection info (Linux)."""
    try:
        result = subprocess.run(['iwconfig'], capture_output=True, text=True)
        output = result.stdout

        info = {}
        # Parse SSID
        ssid = re.search(r'ESSID:"([^"]+)"', output)
        if ssid:
            info['ssid'] = ssid.group(1)

        # Parse frequency
        freq = re.search(r'Frequency:([d.]+) GHz', output)
        if freq:
            info['frequency_ghz'] = float(freq.group(1))
            info['band'] = '2.4 GHz' if float(freq.group(1)) < 3 else '5 GHz'

        # Parse bit rate
        rate = re.search(r'Bit Rate=([d.]+) Mb/s', output)
        if rate:
            info['bit_rate_mbps'] = float(rate.group(1))

        # Parse signal strength
        signal = re.search(r'Signal level=(-d+) dBm', output)
        if signal:
            info['signal_dbm'] = int(signal.group(1))
            # Convert dBm to approximate quality (0-100%)
            dbm = int(signal.group(1))
            info['quality_pct'] = max(0, min(100, 2 * (dbm + 100)))

        return info
    except Exception as e:
        return {"error": str(e)}

wifi = get_wifi_info()
for key, val in wifi.items():
    print(f"{key}: {val}")

# Determine WiFi standard from channel/frequency
def wifi_standard_from_freq(freq_ghz: float, max_mbps: float) -> str:
    if freq_ghz >= 6:
        return "Wi-Fi 6E (802.11ax)"
    elif freq_ghz >= 5:
        if max_mbps > 3500:
            return "Wi-Fi 6 (802.11ax)"
        elif max_mbps > 54:
            return "Wi-Fi 5 (802.11ac)"
        else:
            return "Wi-Fi 2 (802.11a)"
    else:
        if max_mbps > 100:
            return "Wi-Fi 4+ (802.11n)"
        elif max_mbps > 11:
            return "Wi-Fi 3 (802.11g)"
        else:
            return "Wi-Fi 1 (802.11b)"

print(wifi_standard_from_freq(5.18, 300))  # Wi-Fi 5/6

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.