How the Windows XP SP2 Bluetooth Stack Worked

Windows XP Service Pack 2 (SP2) fundamentally transformed wireless personal computing by introducing Microsoft's first native Bluetooth software stack. Prior to this release, users relied on inconsistent third-party stacks from vendors like Widcomm, Toshiba, and IVT BlueSoleil to manage Bluetooth hardware. The update integrated native device drivers, core protocol layers, system services, and a standardized graphical user interface into the operating system, creating a unified and stable foundation for connecting wireless peripherals.

Architecture and Driver Framework

The native stack operated within the Windows Driver Model (WDM) architecture, split between kernel-mode drivers and user-mode services:

  • Kernel Drivers: At the lowest level, Bthusb.sys served as the transport driver for USB-attached Bluetooth transceivers, communicating with hardware via standard USB Host Controller Interface (HCI) commands. Above that, Bthport.sys acted as the Bluetooth core port driver, managing core communication, radio initialization, and packet scheduling.
  • Core Protocols: The stack handled baseline Bluetooth communication through foundational protocol implementations, including HCI, Logical Link Control and Adaptation Protocol (L2CAP), Service Discovery Protocol (SDP), and RFCOMM (which emulated standard serial lines).
  • Hardware Detection: When a compatible USB Bluetooth dongle was connected, Windows matched the hardware IDs against Bth.inf. If recognized, the native stack loaded automatically, bypassing the need for third-party driver suites.

Supported Bluetooth Profiles

To maintain stability and prioritize core productivity devices, Microsoft implemented a focused set of profiles in SP2:

  • Human Interface Device (HID): Allowed native support for wireless mice and keyboards without requiring pre-installed software.
  • Hardcopy Cable Replacement Profile (HCRP): Enabled basic wireless printing capabilities.
  • Serial Port Profile (SPP): Emulated traditional COM ports for GPS units, data collectors, and legacy serial equipment.
  • Dial-Up Networking (DUN): Allowed users to use early cellular phones as wireless modems for Internet access.
  • Object Push Profile (OPP): Supported basic file transfers and business card exchanges via the OBEX protocol.

Noticeably absent was support for the Advanced Audio Distribution Profile (A2DP) and Hands-Free/Headset profiles. As a result, Windows XP SP2 could not natively route high-fidelity audio or system sound to Bluetooth headphones, leaving users who needed multimedia audio dependent on third-party vendor stacks.

User Interface and Device Management

The stack exposed its controls through a standardized user interface accessible via the Control Panel and the system notification area:

  • Control Panel Applet (bthprops.cpl): Managed global radio settings, toggled device discoverability, and displayed lists of paired hardware.
  • Pairing Wizard: Guided users through the authentication handshake, supporting both auto-generated passkeys and user-entered PINs to establish secure link keys.
  • File Transfer Wizard (fsquirt.exe): A lightweight utility dedicated to sending and receiving individual files between paired computers and mobile phones over OPP.

By embedding these core protocols and drivers directly into Windows XP SP2, Microsoft established hardware plug-and-play standards that eliminated vendor fragmentation and set the baseline for modern Bluetooth management in subsequent Windows releases.