Tips - Disabling Bluetooth on Raspberry Pi

This post shows steps to “1. Disabling on-board Bluetooth” and “2. Disable Bluetooth completely”.
Lee Campbell©
Disabling on-board Bluetooth
The steps below shows how to disable on-board Bluetooth and related services. Those steps also disable loading the related kernel modules such as bluetooth, hci_uart, btbcm, etc at boot.
Open /boot/config.txt file
# file: "/boot/config.txt"
sudo vi /boot/config.txt
Looking in /boot/overlays/README from the September 2019 release of Raspbian Buster I can now see disable-bt and disable-wifi documented
Add below, save and close the file
# file: "/boot/config.txt"
# Disable Bluetooth
dtoverlay=disable-bt
Info: Disable onboard Bluetooth on Pi 3B, 3B+, 3A+, 4B and Zero W, restoring UART0/ttyAMA0 over GPIOs 14 (pin 8) & 15 (pin10). N.B. To disable the systemd service that initialises the modem so it doesn’t use the UART, use ‘sudo systemctl disable hciuart’.
Disable related services
sudo systemctl disable hciuart.service
sudo systemctl disable bluealsa.service
sudo systemctl disable bluetooth.service
Reboot to apply the changes
sudo reboot
Even after disabling on-board Bluetooth and related services, Bluetooth will be available when a Bluetooth adapter (e.g. Plugable Bluetooth Adapter) is plugged in.
Disable Bluetooth completely
If Bluetooth is not required at all, uninstall Bluetooth stack. It makes Bluetooth unavailable even if external Bluetooth adapter is plugged in.
Uninstall BlueZ and related packages
sudo apt-get purge bluez -y
sudo apt-get autoremove -y