Raspberry PI 5 with Linux and Intel iwlwifi as monitor station

Had an installed bookworm on SD from initial eeprom setup, did a dist-upgrade, had to manually compile iwlwifi and manually install it so I am expecting the module to be gone on next kernel update.

Monitor mode seems to work nicely.

This uses a

mostly as they were readily available on short notice; otherwise a

would probably the better solution.

root@raspberrypi:~# cat /proc/cpuinfo  | grep Model
Model           : Raspberry Pi 5 Model B Rev 1.0
root@raspberrypi:~# lspci 
0000:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2712 PCIe Bridge (rev 21)
0000:01:00.0 Network controller: Intel Corporation Wi-Fi 6 AX210/AX211/AX411 160MHz (rev 1a)
0001:00:00.0 PCI bridge: Broadcom Inc. and subsidiaries BCM2712 PCIe Bridge (rev 21)
0001:01:00.0 Ethernet controller: Raspberry Pi Ltd RP1 PCIe 2.0 South Bridge
root@raspberrypi:~# iwconfig mon0
mon0      IEEE 802.11  Mode:Monitor  Frequency:5.5 GHz  
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          
root@raspberrypi:~# dmesg | grep iwl
[ 3740.758322] iwlwifi: loading out-of-tree module taints kernel.
[ 3740.760168] iwlwifi 0000:01:00.0: enabling device (0000 -> 0002)
[ 3740.760844] iwlwifi 0000:01:00.0: Detected crf-id 0x400410, cnv-id 0x400410 wfpm id 0x80000000
[ 3740.760861] iwlwifi 0000:01:00.0: PCI dev 2725/0024, rev=0x420, rfid=0x10d000
[ 3740.760941] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-83.ucode failed with error -2
[ 3740.760954] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-82.ucode failed with error -2
[ 3740.760964] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-81.ucode failed with error -2
[ 3740.760974] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-80.ucode failed with error -2
[ 3740.760983] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-79.ucode failed with error -2
[ 3740.760992] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-78.ucode failed with error -2
[ 3740.761001] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-77.ucode failed with error -2
[ 3740.761010] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-76.ucode failed with error -2
[ 3740.761019] iwlwifi 0000:01:00.0: Direct firmware load for iwlwifi-ty-a0-gf-a0-75.ucode failed with error -2
[ 3740.778595] iwlwifi 0000:01:00.0: api flags index 2 larger than supported by driver
[ 3740.778633] iwlwifi 0000:01:00.0: TLV_FW_FSEQ_VERSION: FSEQ Version: 0.0.2.36
[ 3740.779419] iwlwifi 0000:01:00.0: loaded firmware version 74.fe17486e.0 ty-a0-gf-a0-74.ucode op_mode iwlmvm
[ 3740.781527] iwlwifi 0000:01:00.0: Detected Intel(R) Wi-Fi 6 AX210 160MHz, REV=0x420
[ 3740.956464] iwlwifi 0000:01:00.0: WFPM_UMAC_PD_NOTIFICATION: 0x1f
[ 3740.956485] iwlwifi 0000:01:00.0: WFPM_LMAC2_PD_NOTIFICATION: 0x1f
[ 3740.956497] iwlwifi 0000:01:00.0: WFPM_AUTH_KEY_0: 0x90
[ 3740.956507] iwlwifi 0000:01:00.0: CNVI_SCU_SEQ_DATA_DW9: 0x0
[ 3740.957639] iwlwifi 0000:01:00.0: loaded PNVM version e4a49534
[ 3740.972313] iwlwifi 0000:01:00.0: Detected RF GF, rfid=0x10d000
[ 3741.040855] iwlwifi 0000:01:00.0: base HW address: d8:f8:83:36:40:cf
[ 3741.266604] iwlwifi 0000:01:00.0: WFPM_UMAC_PD_NOTIFICATION: 0x1f
[ 3741.266626] iwlwifi 0000:01:00.0: WFPM_LMAC2_PD_NOTIFICATION: 0x1f
[ 3741.266639] iwlwifi 0000:01:00.0: WFPM_AUTH_KEY_0: 0x90
[ 3741.266648] iwlwifi 0000:01:00.0: CNVI_SCU_SEQ_DATA_DW9: 0x0
[ 3741.353674] iwlwifi 0000:01:00.0: Registered PHC clock: iwlwifi-PTP, with index: 1
[ 3938.965712] iwlwifi 0000:01:00.0 wlan1: entered promiscuous mode
[ 3938.990256] iwlwifi 0000:01:00.0 wlan1: left promiscuous mode
[ 4177.722421] iwlwifi 0000:01:00.0: WFPM_UMAC_PD_NOTIFICATION: 0x1f
[ 4177.722444] iwlwifi 0000:01:00.0: WFPM_LMAC2_PD_NOTIFICATION: 0x1f
[ 4177.722457] iwlwifi 0000:01:00.0: WFPM_AUTH_KEY_0: 0x90
[ 4177.722467] iwlwifi 0000:01:00.0: CNVI_SCU_SEQ_DATA_DW9: 0x0
[ 4249.697671] iwlwifi 0000:01:00.0 mon0: entered promiscuous mode
[ 4257.486490] iwlwifi 0000:01:00.0 mon0: left promiscuous mode
[ 4269.579043] iwlwifi 0000:01:00.0 mon0: entered promiscuous mode
[ 4269.614243] iwlwifi 0000:01:00.0 mon0: left promiscuous mode
[ 4317.567374] iwlwifi 0000:01:00.0 mon0: entered promiscuous mode
[ 4333.858112] iwlwifi 0000:01:00.0 mon0: left promiscuous mode
root@raspberrypi:~# cat WIFI 
# https://sandilands.info/sgordon/capturing-wifi-in-monitor-mode-with-iw
iw phy phy1 interface add mon0 type monitor
iw dev wlan1 del
ifconfig mon0 up
iw dev mon0 set freq 5500
iwconfig mon0
tcpdump -i mon0 -e -vvv -ln -y IEEE802_11_RADIO not type mgt subtype beacon
root@raspberrypi:~# uname -a
Linux raspberrypi 6.6.62+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.62-1+rpt1 (2024-11-25) aarch64 GNU/Linux

Getting FreeBSD to do the same

TBD one day

But the Pi5 can also be used for hacking FreeBSD for it -- if only network booting would be easily and readily available to netboot FreeBSD as well.

BjoernZeeb/RPi5IwlMon (last edited 2024-12-03T03:53:59+0000 by BjoernZeeb)