Common questions and answers about profiler.
Profiler is a Wi-Fi client capability analyzer that captures and analyzes 802.11 association request frames to determine what features a client device supports.
In AP mode, clients must complete WPA2/WPA3 authentication before sending association requests. This ensures we capture complete client capabilities. Without authentication, some clients send incomplete or malformed association requests.
In AP mode, the client will connect briefly, but the profiler doesn't provide internet access, so the connection will fail. This is expected behavior - we only need the association request, not a full connection.
In FakeAP mode, the client will not connect at all, but we still capture the association request.
For live capture, profiler requires Linux with a supported Wi-Fi adapter. However, you can analyze existing pcap files on any platform:
profiler --pcap capture.pcapTested adapters:
- mt76x2u
- mt7921u (a8000)
- mt7921e (rz608/mt7921k, rz616/mt7922m)
- iwlwifi (ax200, ax210, be200)
Other adapters may work but are not officially supported. rtl88XXau adapters have been removed from the recommended list.
On WLAN Pi OS v3:
sudo apt update
sudo apt install wlanpi-profilerFor pipx installations, see upgrading with pipx.
Results are saved to:
/var/www/html/profiler/(default)- Web interface:
http://<WLAN_Pi_IP>/profiler - Or your custom
--files_pathlocation
sudo profiler -c 48sudo profiler -s "My SSID"Edit /etc/wlanpi-profiler/config.ini:
[GENERAL]
passphrase: MyNewPasswordOr use the command line:
sudo profiler --passphrase "MyNewPassword"The default passphrase is profiler (changed from wlanpi123 in v2.0.0).
sudo profiler --debugOr set the environment variable:
export PROFILER_DEBUG=1
sudo profiler- Make sure you're using the correct passphrase
- Check that the client supports the security mode (WPA2/WPA3)
- Try disabling 802.11r:
sudo profiler --security-mode wpa3-mixed - Try disabling 802.11ax:
sudo profiler --no11ax - Use debug mode to see more details:
sudo profiler --debug
- Check that your adapter supports monitor mode
- Verify the interface is correct:
sudo profiler --list_interfaces - Try a different channel
- Check debug output:
sudo profiler --debug - Verify the service is running:
sudo service wlanpi-profiler status
AP mode (default) should discover clients in 1-2 seconds. If it's taking longer:
- Make sure you're using AP mode (default, not
--fakeap) - Check that your adapter supports simultaneous AP + monitor mode
- Try different channels
- Ensure the client is actively scanning
- Check available interfaces:
sudo profiler --list_interfaces - Verify your adapter is plugged in
- Check
iw devto see wireless interfaces - Try specifying the interface explicitly:
sudo profiler -i wlan1
Refresh your browser. Results are written in real-time, but the browser may cache the page.
- Check that you're running with sudo
- Verify hostapd is installed:
which hostapd - Check for conflicting services using the interface
- Review logs:
journalctl -u wlanpi-profiler.service - Try resetting the interface manually
Clients typically only advertise capabilities that match the network they're connecting to. For example:
- A 3 spatial stream client may only report 2 streams when connecting to a 2-stream AP
- Wi-Fi 6E capabilities may not show if the AP doesn't advertise 6 GHz support
- 802.11r support may not appear if the AP doesn't advertise mobility domain
Profiler attempts to advertise the highest-level feature sets, but some clients are conservative in their capability reporting.
Treat 802.11k capability reporting with caution. To verify:
- Check neighbor report requests in WLC/AP debug logs
- Analyze packet captures for action frames containing neighbor reports
- Test actual roaming behavior
- profiler_ap - Live capture from profiler's own AP (controlled environment)
- external - Analysis of external pcap file (unknown environment)
See JSON schema for details.
Not all clients support all features. The profiler only reports what the client advertises in its association request. If a capability isn't listed, the client either:
- Doesn't support it
- Doesn't advertise it to this type of network
- Has it disabled in current configuration
Enable the systemd service:
sudo systemctl enable wlanpi-profilerDefault location: /etc/wlanpi-profiler/config.ini
Yes, for debug logging:
export PROFILER_DEBUG=1sudo profiler --no11beOr in config.ini:
[GENERAL]
be_disabled = truesudo profiler --fakeapNote: FakeAP mode is slower for client discovery but works with more adapters.
No, profiler requires elevated permissions to:
- Put interfaces in monitor mode
- Open raw sockets for frame injection
- Control hostapd
profiler --pcap capture.pcapThis should work on any platform without special hardware and doesn't require root.
- Capability logic - How capabilities are detected
- Interface staging - How interfaces are prepared
- Monitoring integration - Status files and external integration
- Check the known issues
- Review troubleshooting in the quick start
- Create a GitHub issue for bugs