bluetooth USB dongle firmware download

troy zhu 21 Reputation points

I need to develop Bluetooth USB driver for my host controller.
Windows generic adapter driver (with bthusb.sys) should be used, but it has no firmware download function.
Should I develop new USB driver instead bthusb.sys(refer uart sample)or any way to add firmware download function based on Windows generic adapter driver?

Windows Hardware Performance
Windows Hardware Performance
Windows: A family of Microsoft operating systems that run across personal computers, tablets, laptops, phones, internet of things devices, self-contained mixed reality headsets, large collaboration screens, and other devices.Hardware Performance: Delivering / providing hardware or hardware systems or adjusting / adapting hardware or hardware systems.
1,574 questions
0 comments No comments
{count} votes

Accepted answer
  1. Doron Holan 1,801 Reputation points

    You should write a device lower filter that sits below bthusb. You are not allowed to touch hardware in AddDevice, instead implement the firmware download in EvtDevicePrepareHardware().

    0 comments No comments

2 additional answers

Sort by: Most helpful
  1. troy zhu 21 Reputation points

    can I put firmware download in filter driver's deviceAdd function,
    Like the following sample code ?
    Thank you for any help


    0 comments No comments

  2. troy zhu 21 Reputation points

    Thank you

    May I register the prepare hardware function in the bluetooth filter driver like the following code?


    pnpPowerCallbacks.EvtDevicePrepareHardware = BthFirmwareDownloadAndDeviceReset;

    The usb driver in bthusb.sys has AddDevice, BthEchoSrvEvtDriverDeviceAdd was just a patch for it
    download bluetooth controller firmware and restart the chip.