This package contains code to allow Scapy sockets to communicate with Bluetooth controllers using UsbBluetooth for Python.
For general documentation about the project, please visit usbbluetooth.github.io.
For a barebones Python version of this library, check out UsbBluetooth for Python.
For other programming languages you may visit UsbBluetooth for C or UsbBluetooth for C#.
Just use pip :)
pip install scapy-usbbluetooth
See the examples folder for sample code.
A short illustrative sample usage can be as follows:
import usbbluetooth
from scapy_usbbluetooth import UsbBluetoothSocket
from scapy.layers.bluetooth import HCI_Hdr, HCI_Command_Hdr, HCI_Cmd_Reset
# Get a list of all the available devices
devices = usbbluetooth.list_devices()
for dev in devices:
print(dev)
# Open a socket using a device
socket = UsbBluetoothSocket(devices[0])
# Create a reset packet
pkt = HCI_Hdr() / HCI_Command_Hdr() / HCI_Cmd_Reset()
# Send a packet to the controller and await a response
response = socket.sr1(pkt)
response.show()This package has some requirements to work because of different platform particularities. To make sure the package works, please, see https://usbbluetooth.github.io/quirks/.