General Tools

Most ports use a regular Makefile to build the examples.

On Unix-based systems, git, make, and Python are usually installed. If not, use the system’s packet manager to install them.

On Windows, there is no packet manager, but it's easy to download and install all requires development packets quickly by hand. You'll need:

Getting BTstack from GitHub

Use git to clone the latest version:

git clone

Alternatively, you can download it as a ZIP archive from BTstack’s page on GitHub.

Let's Go

The easiest way to try BTstack is on a regular desktop setup like macOS, Linux or Windows together with a standard USB Bluetooth Controller. Running BTstack on desktop speeds up the development cycle a lot and also provides direct access to full packet log files in cases something doesn't work as expected. The same code can then later be run unmodified on an embedded target.

For macOS and Linux, please see libusb port. For Windows, please see windows-winusb port.

Or checkout the list of existing ports