WLAN-Pi / wlanpi-profiler

Wi-Fi client capabilities analyzer tool built for the WLAN Pi
BSD 3-Clause "New" or "Revised" License
25 stars 9 forks source link

Initial chipset heuristics #120

Closed joshschmelzle closed 1 year ago

joshschmelzle commented 1 year ago

PR adds chipset lookup via heuristics. Initial detection supports Broadcom, MediaTek, Qualcomm, Infineon AG, and Intel Wireless Network Group

TEXT REPORT:

---------------------------------------------
 - Client MAC: da:39:b9:32:72:d2
 - OUI manufacturer lookup: Samsung (Randomized MAC)
 - Chipset lookup: Broadcom
 - Frequency band: 5 GHz
 - Capture channel: 36
---------------------------------------------
802.11k                Supported             
802.11r                Supported             
802.11v                Supported             
802.11w                Supported             
802.11n                Supported (2ss)       
802.11ac               Supported (2ss), MCS 0-9, [X] 160 MHz, [X] SU BF, [X] MU BF
802.11ax               Supported (2ss), MCS 0-11, [X] 160 MHz, [X] TWT, [ ] Punctured Preamble, [X] SU Beamformer, [X] SU Beamformee, [ ] HE ER SU PPDU, [ ] UORA, [X] BSR
6 GHz Operating Class  Supported             
Max Power              17 dBm                
Supported Channels     36-64, 100-144, 149-165**
Number of Channels     25                    

Key: [X]: Supported, [ ]: Not supported

JSON:

{"mac": "da-39-b9-32-72-d2", "is_laa": true, "manuf": "Samsung", "chipset": "Broadcom", "band": 5, "capture_channel": 36, "listen_only": false, "features": {"dot11k": 1, "dot11r": 1, "dot11v": 1, "dot11w": 1, "dot11n": 1, "dot11n_nss": 2, "dot11ac": 0, "dot11ac_nss": 2, "dot11ac_160_mhz": 1, "dot11ac_mcs": "0-9", "dot11ac_su_bf": 1, "dot11ac_mu_bf": 1, "dot11ax": 1, "dot11ax_nss": 2, "dot11ax_mcs": "0-11", "dot11ax_twt": 1, "dot11ax_uora": 0, "dot11ax_bsr": 1, "dot11ax_punctured_preamble": 0, "dot11ax_he_su_beamformer": 1, "dot11ax_he_su_beamformee": 1, "dot11ax_he_er_su_ppdu": 0, "dot11ax_six_ghz": 0, "dot11ax_160_mhz": 1, "six_ghz_operating_class_supported": 1, "max_power": 17, "min_power": -7, "supported_channels": [36, 40, 44, 48, 52, 56, 60, 64, 100, 104, 108, 112, 116, 120, 124, 128, 132, 136, 140, 144, 149, 153, 157, 161, 165]}, "pcap": "\"AAA4AC9AQKAgCACgIAgAAF3TWQAAAAAAAAw8FEAB4AAAAAAAAAAAAF3TWQAAAAAAAAABAeAA2AEAADwA4OGpNbbv2jm5MnLS4OGpNbbvkK4REQoAAAxQcm9maWxlciAzZTQBCIwSmCSwSGBsIQL5ESQKJAQ0BGQMlQSlATAaAQAAD6wEAQAAD6wEAQAAD6wEjAAAAAAPrAZGBXMIAQAANgNFwgA7FXOGhYSDgYB/fn18e3p5eHd2dXRzUS0abwAb//8AAAAAAAAAAAAAIAAAAAAAAAAAAAB/CgQACAAAAABAgCC/DHYYkQ/6/wAA+v8AIMcBEP8hIwMICAAAgEwwAoB9AZ4IDAwA+v/6//r/+v95HMdxHMdx3QsAAPAiAAEEAAAAD90FAJBMBBfdCgAQGAIAABAAAADdBwBQ8gIAAQA=\"", "schema_version": 1, "profiler_version": "1.0.16-dev.1"}