12d04a09aSmilamikica# Welcome to BTstack 22d04a09aSmilamikica 3bac2979aSMilanka RingwaldBTstack is [BlueKitchen's](http://bluekitchen-gmbh.com) implementation of the official Bluetooth stack. 4bac2979aSMilanka RingwaldIt is well suited for small, resource-constraint devices 52d04a09aSmilamikicasuch as 8 or 16 bit embedded systems as it is highly configurable and comes with an ultra small memory footprint. 62d04a09aSmilamikicaA minimal configuration for an SPP server on a MSP430 can run in 32 kB FLASH and only 4 kB of RAM. 72d04a09aSmilamikica 8*6d9dc928SMatthias RingwaldIt connects to the Bluetooth modules via a different Bluetooth HCI transport layers (e.g., HCI H4 UART and 9*6d9dc928SMatthias RingwaldH5 the "Tree-Wire" protocol, HCI H2 USB). Various platforms can be easily targeted by providing the necessary 102d04a09aSmilamikicaUART, CPU, and CLOCK implementations. 112d04a09aSmilamikica 122d04a09aSmilamikicaOn smaller embedded systems, a minimal run loop implementation allows to use BTstack without a Real Time OS (RTOS). 132d04a09aSmilamikicaIf a RTOS is already provided, BTstack can be integrated and run as a single thread. 142d04a09aSmilamikica 152d04a09aSmilamikicaOn larger systems, BTstack provides a daemon that connects to a Bluetooth module. 162d04a09aSmilamikicaMultiple applications can communicate with this daemon over different inter-process communication methods. 172d04a09aSmilamikica 18*6d9dc928SMatthias RingwaldBTstack supports both, the Central and the Peripheral Role of Bluetooth 4.2 Low Energy specification. 192d04a09aSmilamikicaIt can be configures as both a single mode or a dual mode stack. 202d04a09aSmilamikica 21b0715761SMilanka RingwaldBTstack is free for non-commercial use. For commercial use, <a href="mailto:[email protected]">tell us</a> 222d04a09aSmilamikicaa bit about your project to get a quote. 23*6d9dc928SMatthias RingwaldIt has been qualified with the the Bluetooth SIG for GAP, IOP, HFP, HSP, SPP, PAN profiles and 24*6d9dc928SMatthias RingwaldGATT, SM of the Bluetooth 4.2 LE Central and Peripheral roles (QD ID 25340). 252d04a09aSmilamikica 26439fcdeaSmilamikica## Documentation 27d9f907dbSmilamikica- [HTML](http://bluekitchen-gmbh.com/btstack/) 283ac88a1eSMatthias Ringwald- [PDF](http://bluekitchen-gmbh.com/btstack.pdf) 29439fcdeaSmilamikica 302d04a09aSmilamikica## Supported Protocols 312d04a09aSmilamikica* L2CAP 322d04a09aSmilamikica* RFCOMM 332d04a09aSmilamikica* SDP 342d04a09aSmilamikica* BNEP 352d04a09aSmilamikica* ATT 362d04a09aSmilamikica* SM 372d04a09aSmilamikica 38bac2979aSMilanka Ringwald 392d04a09aSmilamikica## Supported Profiles 402d04a09aSmilamikica* GAP 412d04a09aSmilamikica* IOP 42*6d9dc928SMatthias Ringwald* HFP 43*6d9dc928SMatthias Ringwald* HSP 442d04a09aSmilamikica* SPP 452d04a09aSmilamikica* PAN 462d04a09aSmilamikica* GATT 47bac2979aSMilanka Ringwald 48*6d9dc928SMatthias RingwaldComing next: HID, HOGP, A2DP, and more. 49bac2979aSMilanka Ringwald 502fe24f3eSMatthias Ringwald## Evaluation Platforms 51bac2979aSMilanka Ringwald 52cd07fdb2SMilanka Ringwald#### Embedded Platforms: 530776193fSMatthias RingwaldStatus | Platform 540776193fSMatthias Ringwald-------------- | ------ 55cf642f95SMatthias Ringwald | [EZ430-RF256x Bluetooth Evaluation Tool for MSP430](http://www.ti.com/tool/ez430-rf256x) 56cf642f95SMatthias Ringwald | [MSP430F5438 Experimenter Board for MSP430](http://www.ti.com/tool/msp-exp430f5438) with [Bluetooth CC2564 Module Evaluation Board](http://www.ti.com/tool/cc2564modnem) 57cf642f95SMatthias Ringwald | [MSP-EXP430F5529LP LaunchPad](http://www.ti.com/ww/en/launchpad/launchpads-msp430-msp-exp430f5529lp.html#tabs) with [Bluetooth CC2564 Module Evaluation Board](http://www.ti.com/tool/cc2564modnem) and [EM Adapter BoosterPack](http://www.ti.com/tool/boost-ccemadapter) with additional 32768Hz quartz oscillator 58cf642f95SMatthias Ringwald | [STM32 Nucleo development board NUCLEO-F103RB](http://www.st.com/web/catalog/tools/FM116/SC959/SS1532/LN1847/PF259875) with [Bluetooth CC2564 Module Evaluation Board](http://www.ti.com/tool/cc2564modnem) and [EM Adapter BoosterPack](http://www.ti.com/tool/boost-ccemadapter) with additional 32768Hz quartz oscillator 59cf642f95SMatthias Ringwald | [Microchip's PIC32 Bluetooth Audio Development Kit](http://www.microchip.com/Developmenttools/ProductDetails.aspx?PartNO=DV320032) 600776193fSMatthias Ringwald 61cd07fdb2SMilanka Ringwald 62cd07fdb2SMilanka Ringwald#### Other Platforms: 630776193fSMatthias RingwaldStatus | Platform 640776193fSMatthias Ringwald-------------- | ------ 65cf642f95SMatthias Ringwald| posix: Unix-based system talking to Bluetooth module via serial port 66cf642f95SMatthias Ringwald| libusb: Unix-based system talking via USB Bluetooth dongle 67cf642f95SMatthias Ringwald| daemon: TCP and Unix domain named socket client-server architecture supporting multiple clients 68cf642f95SMatthias Ringwald| java: Java wrapper for daemon 69cf642f95SMatthias Ringwald| iOS: daemon for iOS jailbreak devices, C client-server API 70cf642f95SMatthias Ringwald| mtk: daemon for rooted Android devices, based on Mediatek MT65xx processor, Java and C client-server API 71cd07fdb2SMilanka Ringwald 72bac2979aSMilanka Ringwald 73bac2979aSMilanka Ringwald## Supported Chipsets 74bac2979aSMilanka RingwaldChipsets | Status 75bac2979aSMilanka Ringwald-------------- | ------ 76*6d9dc928SMatthias RingwaldTI CC256x, WL183x | complete incl. eHCIll support and SCO-over-HCI (chipset-cc256x) 77*6d9dc928SMatthias RingwaldCSR 8x10, 8x11 | H4 only (chipset-csr), SCO-over-HCI missing 78be0cb757SMatthias RingwaldSTM STLC2500D | working, no support for custom deep sleep management (chipset-stlc2500d) 7958cabe00SMatthias RingwaldTC35661 | working, BLE patches missing (chipset-tc3566x) 80*6d9dc928SMatthias RingwaldEM 9301 (LE-only) | working, used on Arduino Shield (chipset-em9301) 81*6d9dc928SMatthias RingwaldCSR USB Dongles | complete, incl. SCO-over-HCI 82*6d9dc928SMatthias RingwaldBroadcom USB Dongles | complete, SCO-over-HCI not working 83bac2979aSMilanka Ringwald 84be0cb757SMatthias Ringwald## Discussion and Community Support 85be0cb757SMatthias Ringwald[BTstack Google Group](http://groups.google.com/group/btstack-dev) 86e1edd10aSMatthias Ringwald 87