xref: /btstack/port/windows-winusb/README.md (revision a1a1af71298e894bdc785286cad933814a587ed6)
1*a1a1af71SMatthias Ringwald# BTstack Port for Windows Systems using the WinUSB Driver
2*a1a1af71SMatthias Ringwald
3*a1a1af71SMatthias RingwaldAlthough libusb basically works with the POSIX Run Loop on Windows, we recommend to use the Windows-WinUSB port that uses the native run loop and WinUSB API to access a USB Bluetooth dongle.
4*a1a1af71SMatthias Ringwald
5*a1a1af71SMatthias RingwaldTo allow libusb or WinUSB to access an USB Bluetooth dongle, you need to install a special device driver to make it accessible to user space processes.
6*a1a1af71SMatthias Ringwald
7*a1a1af71SMatthias RingwaldIt works like this:
8*a1a1af71SMatthias Ringwald-  Start [Zadig](http://zadig.akeo.ie)
9*a1a1af71SMatthias Ringwald-  Select Options -> “List all devices”
10*a1a1af71SMatthias Ringwald-  Select USB Bluetooth dongle in the big pull down list
11*a1a1af71SMatthias Ringwald-  Select WinUSB (libusb) in the right pull pull down list
12*a1a1af71SMatthias Ringwald-  Select “Replace Driver”
13*a1a1af71SMatthias Ringwald
14*a1a1af71SMatthias RingwaldWhen running the examples in the MSYS2 shell, the console input (via btstack_stdin_support) doesn't work. It works in the older MSYS and also the regular CMD.exe environment. Another option is to install WinPTY and then start the example via WinPTY like this:
15*a1a1af71SMatthias Ringwald
16*a1a1af71SMatthias Ringwald    $ winpty ./hfp_hf_demo.exe
17*a1a1af71SMatthias Ringwald
18