Bluetooth stack: Difference between revisions

Content deleted Content added
HI-dodo (talk | contribs)
Tag: Reverted
 
(13 intermediate revisions by 8 users not shown)
Line 15:
 
===BSD===
====Free dodo headsFreeBSD====
The [[FreeBSD]] bluetooth stack is implemented using the [[Netgraph]] framework.<ref>{{cite web|title=FreeBSD Handbook: Advanced Networking - Bluetooth|url=https://www.freebsd.org/doc/handbook/network-bluetooth.html#idp82252392|access-date=2018-04-02}}</ref> A broad variety of Bluetooth USB dongles are supported by the ng_ubt driver.<ref>{{cite web|title=FreeBSD Kernel Interfaces Manual: NG_UBT(4)|url=https://www.freebsd.org/cgi/man.cgi?query=ng_ubt&sektion=4&manpath=freebsd-release-ports#HARDWARE|access-date=2018-04-02}}</ref>
 
Line 43:
 
===={{Anchor|BLUEDROID}}BlueDroid/Fluoride====
[[Android (operating system)|Android]] switched from BlueZ to its own ''BlueDroid'' stack, created by [[Broadcom]], in late 2012.<ref name=lwn-BlueZ-Android/> BlueDroid has been since been renamed Fluoride.<ref>{{Cite web|url=https://gerrit.unlegacy-android.org/plugins/gitiles/Unlegacy-Android/android_system_bt/+/219d4b6a542ade76b6069ee99cd0af0548139c9c|archive-url=https://web.archive.org/web/20190831084012/https://gerrit.unlegacy-android.org/plugins/gitiles/Unlegacy-Android/android_system_bt/%2B/219d4b6a542ade76b6069ee99cd0af0548139c9c|url-status=dead|archive-date=August 31, 2019|title=Fluoride Bluetooth stack|website=android.googlesource.com|access-date=2019-08-31}} </ref> Marcel Holtmann, from the Intel Open Source Technology Center, claimedimplied that Google made a poor choice in switching to BlueDroid, during a presentation for ''BlueZ for Android'' at the Android Builders Summit in 2014.<ref name=lwn-BlueZ-Android/>
 
==== Gabeldorsche ====
Line 50:
The name ''Gabeldorsche'' very indirectly relates to [[Sweyn Forkbeard]], the son and successor of [[Harald Bluetooth]].<ref>{{cite web | url=https://9to5google.com/2020/02/19/android-11-dp1-gabeldorsche-bluetooth/ | title=Android 11's new 'Gabeldorsche' Bluetooth stack was given its name for a great reason | date=20 February 2020 }}</ref>
 
===Mac OS XmacOS===
Since version 10.2, [[Apple Inc.]]'s [[Mac OS XmacOS]] has contained an integrated Bluetooth stack.<ref>{{cite web|url=https://developer.apple.com/mac/library/archive/documentation/DeviceDrivers/Conceptual/Bluetooth/BT_Intro/BT_Intro.html |title=LoadingIntroduction to Bluetooth Device Access Guide |work=Bluetooth Device Access Guide |publisher=Developer.apple.com |access-date=20122025-0805-2404}}</ref> Included profiles are DUN, SPP, FAX, HID, HSP, SYNC, PAN, BPP and OBEX. VersionMac OS X 10.5 addsadded support for A2DP and AVRCP.
 
===Windows===
 
====Microsoft Bluetooth Stack====
Prior to Windows 8, the Microsoft Bluetooth Stack only supports external or integrated Bluetooth dongles attached through [[USB]]. It does not support Bluetooth radio connections over [[Conventional PCI|PCI]], [[I2C|I²<sup>2</sup>C]], [[serial port|serial]], [[PC Card]] or other interfaces.<ref name="MSBTFAQ">{{cite web|url=http://download.microsoft.com/download/9/c/5/9c5b2167-8017-4bae-9fde-d599bac8184a/Bth_FAQ.docx |title=Bluetooth Wireless Technology FAQ |access-date=2012-11-04}}</ref> It also only supports a single Bluetooth radio.<ref name="MSBTFAQ"/> Windows 8 has an extensible transport model allowing support for Bluetooth radios on non-USB buses.<ref name="BTWindows">{{cite web|url=https://msdn.microsoft.com/en-us/library/windows/hardware/dn133849(v=vs.85).aspx|title=General Bluetooth Support in Windows|publisher=Microsoft}}</ref>
 
Generally, only a single stack can be used at any time: switching usually requires uninstalling the current stack, although a trace of previous stacks remains in the Windows registry. However, there are some cases where two stacks can be used on the same Microsoft Windows system, each using their own separate Bluetooth radio hardware.
Line 126:
 
===Blue SDK===
OpenSynergy's Bluetooth Protocol Stack (Blue SDK) currently provides A2DP, AVRCP, VDP, BIP, BPP, CTN, FTP, GPP, HFP, HSP, HCRP, HDP, HID, MAP, OPP, PAN, PBAP, SAP, DUN, FAX, DID, GATT profiles. It is licensed by the Bluetooth™Bluetooth Special Interest Group (SIG) and meets the standards of safety and security expected in automotive-grade products. Bluetooth™Bluetooth Software Development Kit (Blue SDK) can easily be integrated into any operating system. It supports both BR/EDR (Classic) and Low Energy operations, classic profiles and low energy profiles use the same underlying protocol stack software.<ref>{{cite web|url=http://www.opensynergy.com/produkte/blue-sdk/ |title=OpenSynergy's Blue SDK|date=28 October 2020 }}</ref>
 
===Bluetopia===
Line 134:
 
=== BlueWiseLE ===
BlueWiseLE is the ''Bluetooth® Low Energy'' certified protocol stack software product from Alpwise. It includes the Link Layer<ref>{{cite web |url=http://www.alpwise.com/bluetooth-protocol-stack/software/bluetooth-stack/link-layer/ |title=Link layer Bluetooth Low Energy 5 developed by Alpwise |publisher=alpwise.com |access-date=2018-11-20}}</ref> and also the Host stack (i.e. upper layers above the HCI).<ref>{{Cite web|url=https://launchstudio.bluetooth.com/ListingDetails/RedirectFromQdid/102355|title=QD ID 102355 {{!}} Launch Studio - Listing Details|website=launchstudio.bluetooth.com|access-date=2018-11-20}}</ref> The Link Layer controls the radio and the timing of the Bluetooth® communication in three possible chipset configurations: SoC, co-processor or HCI. Several proprietary BLE profiles are also available including Voice over BLE and Firmware update Over the Air (FOTA).<ref>{{cite web |url=http://www.alpwise.com/bluetooth-protocol-stack/software/bluetooth-stack/ |title=Bluetooth Protocol Stack and its development kit - Alpwise |publisher=alpwise.com |access-date=2018-11-20 |archive-date=2018-02-03 |archive-url=https://web.archive.org/web/20180203141832/http://www.alpwise.com/bluetooth-protocol-stack/software/bluetooth-stack/ |url-status=dead }}</ref>
 
===ClarinoxBlue===
Bluetooth host subsystem product of Clarinox Technologies. Support for Windows 7/8/10, WinCE, Linux/AGL Linux, Android, AutoSAR, Integrity, SafeRTOS, QNX, µITRONμITRON, FreeRTOS, µCμC/OS, Azure RTOS ThreadX, Nucleus, MQX, RTX, embOS, TI-RTOS, DSP/BIOS, eCos and µμ-velOSity. Qualified for Bluetooth specification 5.2,5.0 and all previous specifications includes all Classic profiles/protocols and LE profiles/services including BT & LE Audio. ClarinoxBlue supports HCI transport for SDIO, UART 3-Wire, UART-BCSP, UART-H4, USB. The stack has been ported to many CPU and MCU families including NXP i.MX6/i.MX7/i.MX8/i.MX RT, Kinetis K6x/7x, LPC 18xx/43xx/54xxx STMicro; STM32F4x, STM32H7, STM32WB55, STM32MP157; Texas Instruments TI MSP432, DSP 5xxx, OMAP/Davinci, Tiva TM4C123x, Sitara 3xxx; Renesas Synergy S5/S7, RH850, R-Car M3/H3; Xilinx PowerPC, soft core SPARC LEON. ClarinoxBlue Bluetooth host system is provided with ClariFi debug tool, in-built protocol analyzer, supports faster debugging of complex wireless devices. ClariFi offers threading, memory usage, memory leak analysis and audio analysis to support the tuning of applications and aid in the communication of issues.<ref>{{cite web
|url=https://clarinox.com/products/softframe/supported-platforms/
|title=ClarinoxBlue
Line 148:
 
==={{Proper name|dotstack}}===
{{Proper name|dotstack}}, a dual mode Bluetooth stack by SEARAN, is a good fit for low cost and low power embedded devices, tested with iPhone (uses SEARAN's IAP), Android and other mobile platforms. {{Proper name|dotstack}} is qualified as V2.1 + EDR, V4.1, V4.2 and 5.0 ready, with SPP, GAP, HID, Headset, HFP, FTP, HDP, PBAP, Simple Secure Pairing, A2DP, AVRCP, PAN, MAP, BLE (GATT) with ANP/ANS, FMP, HIDS, HOGP, PASP/PASS, PXP, TIP, BAS, DIS, IAS, LLS, TPS, ANCS, BLP/BLS, GP, HTP, HRP/HRS. {{Proper name|dotstack}} is ported to platforms from, ST Micro (STM32L1/4, STM32F0/1/2/3/4), Microchip (PIC24, dsPIC, PIC32), NXP (LPC), Energy Micro (EFM32), TI (MSP430, C5000 etc.), Renesas (RX, SH-2A, M2 ARM Cortex A15, R-Car), and tested with Bluetooth RF controllers, CSR8811/8311/8510, BlueCore 4 & 6, TI CC2560/2564, Intel/Infineon PMB8753, Marvell Avastar 88w8777, 88W8790, Toshiba TC35661, Microchip/ISSC IS1662. {{Proper name|dotstack}} has FreeRTOS, uOS, Linux, Android, QNX, MQX, ThreadX, and no RTOS integration. Min RAM requirement for SPP 3KB with RTOS and app.<ref>
{{cite web
|url=http://www.searanllc.com/
Line 175:
 
===Mecel/Aricent Betula===
[[Mecel]] Betula is aAda Bluetooth stack aimed at the embedded automotive market. The stack has support for a wide range of CPUs including, ARM, Renesas V850, TI DSP 54xx and 55xx family and x86 compatible. It also ported to a wide range of operating systems, such as [[Microsoft Windows|Windows]], [[Linux]], [[Android (operating system)|Android]] or running without or with a custom OS. It has support for Bluetooth version 45.03, including the new Bluetooth Low Energy & mesh.<ref>
{{cite web
|url=http://www.mecel.se/products/bluetooth