Figuring out how to disable onboard WiFi for Raspberry Pi 3 is great if you have a USB WiFi adapter that you plan on using instead. If you plan on capturing and analyzing packets then you will need a WiFi adapter that supports monitor mode. The onboard WiFi for the Raspberry Pi doesn’t support monitor mode. A USB WiFi adapter can improve signal range as well.
HOW TO DISABLE ONBOARD WIFI FOR RASPBERRY PI 3 – BLACKLISTING DRIVER
Knowing how to disable onboard WiFi for Raspberry Pi 3 is as simple as modifying a configuration file. You will need to edit or create a file in the /etc/modprobe.d directory. This directory is used to add or remove modules. The device manager (udev) relies on modprobe to load drivers for automatically detected hardware.
To navigate to the directory open a terminal session and type in the following command:
cd /etc/modprobe.d
Now use the “ls” command to view the contents in that directory.
YOU WILL NEED TO BLACKLIST the onboard wifi driver
If you are using Kali Linux you will notice that there is a file named “blacklist-libnfc.conf“.This is the file that you will need to edit in order to know how to disable onboard WiFi for Raspberry Pi 3.
If you are using a different linux distribution rather than Kali Linux then you will notice that there is no “blacklist-libnfc.conf” file. You will have to create the blacklist file yourself. While in the /etc/modprobe.d directory you can create your own blacklist file by using the following command:
nano raspi-blacklist.conf
CONFIGURING THE BLACKLIST FILE
Now that you have either created your blacklist file or if you are editing the “blacklist-libnfc.conf” file in Kali Linux you will need to add a few statements to blacklist the drivers. Blacklisting the onboard WiFi driver will prevent your Raspberry Pi from automatically detecting and loading the driver.
When you have your blacklist file in edit mode you can add the following:
#wifi
blacklist brcmfmac
blacklist brcmutil
If you would like to blacklist the bluetooth as well you can add this:
#bluetooth
blacklist btbcm
blacklist hci_uart