Technical Details

History

Previously the only widely-known way to change Bluetooth Address was using "bdaddr" command line utility from BlueZ Bluetooth protocol stack under Linux. Writing similar application under Windows wasn't possible without the custom driver.

Things changed when Microsoft allowed sending vendor specific HCI commands to Bluetooth radios from the user space programs in KB942567 under Windows Vista (IOCTL_BTH_HCI_VENDOR_COMMAND control code parameter in DeviceIoControl function).

Bluetooth MAC Address Changer for Windows

I came up with the idea of creating this program while browsing Bluetooth reference on MSDN.

Bluetooth MAC Address Changer is written completely in Object Pascal without third-party libraries.

References

IOCTL_BTH_HCI_VENDOR_COMMAND on MSDN

BlueZ - Official Linux Bluetooth protocol stack