В этой статье есть несколько проблем. Помогите улучшить ее или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти сообщения ) |
Стек Bluetooth — это программное обеспечение , представляющее собой реализацию стека протоколов Bluetooth .
Стеки Bluetooth можно условно разделить на две отдельные категории:
Стек Bluetooth FreeBSD реализован с использованием фреймворка Netgraph . [2] Драйвер ng_ubt поддерживает широкий спектр USB-модемов Bluetooth. [3]
Реализация была завершена в 2002 году и впервые выпущена с FreeBSD 5.0 . [4]
NetBSD имеет собственную реализацию Bluetooth, разработанную в 2006 году и впервые выпущенную в NetBSD § 4.0 . [5]
В OpenBSD некоторое время использовалась реализация NetBSD, но в 2014 году она была удалена из-за отсутствия поддержки и ухудшения кода . [6] [7]
DragonFly BSD имеет реализацию Bluetooth от NetBSD с версии 1.11 (2008), впервые выпущенной с DragonFly BSD § 1.12 . [8]
Реализация на основе netgraph из FreeBSD также доступна в дереве с 2008 года, начиная с импорта Netgraph из временного интервала FreeBSD 7 в DragonFly, но, возможно, была отключена до 2014-11-15 и все еще может требовать дополнительной работы. [9] [10]
BlueALSA — это бэкэнд Bluetooth-аудио ALSA , который позволяет использовать аудиоустройства, подключенные по Bluetooth, без использования PulseAudio или PipeWire . [11] [12]
BlueZ , изначально разработанный Qualcomm , [13] представляет собой стек Bluetooth, включенный в официальные дистрибутивы ядра Linux [14] для семейства операционных систем на основе ядра Linux . Его цель — программировать реализацию спецификаций беспроводных стандартов Bluetooth для Linux. По состоянию на 2006 год стек BlueZ поддерживает все основные протоколы и уровни Bluetooth. [ необходима ссылка ] Первоначально он был разработан Qualcomm и доступен для версий ядра Linux 2.4.6 и выше. [15] В дополнение к базовому стеку пакеты bluez-utils и bluez-firmware содержат низкоуровневые утилиты, такие как dfutool, которые могут опрашивать чипсет адаптера Bluetooth, чтобы определить, можно ли обновить его прошивку. BlueZ лицензируется в соответствии с лицензией GNU General Public License (GPL), но, как сообщается, находится на пути к переходу на лицензию GNU Lesser General Public License (LGPL). [16]
hidd — это демон Bluetooth- устройства интерфейса пользователя (HID) . [17]
Android перешел с BlueZ на собственный стек BlueDroid , созданный Broadcom , в конце 2012 года. [16] С тех пор BlueDroid был переименован во Fluoride. [18] Марсель Хольтманн из Intel Open Source Technology Center во время презентации BlueZ для Android на Android Builders Summit в 2014 году намекнул, что Google сделала плохой выбор, перейдя на BlueDroid. [16]
В Android 13 Google по умолчанию включил недавно разработанный стек Bluetooth Gabeldorsche . [19]
Имя Габельдёрше весьма косвенно связано с именем Свен Вилобородый , сыном и преемником Харальда Синезубого . [20]
Начиная с версии 10.2, Mac OS X от Apple Inc. содержит интегрированный стек Bluetooth. [21] Включены профили DUN, SPP, FAX, HID, HSP, SYNC, PAN, BPP и OBEX. В версии 10.5 добавлена поддержка A2DP и AVRCP.
До Windows 8 стек Microsoft Bluetooth поддерживал только внешние или встроенные Bluetooth-адаптеры, подключенные через USB . Он не поддерживает радиоподключения Bluetooth через PCI , I 2 C , последовательный , PC Card или другие интерфейсы. [22] Он также поддерживает только один радиомодуль Bluetooth. [22] Windows 8 имеет расширяемую транспортную модель, позволяющую поддерживать радиомодули Bluetooth на шинах, отличных от USB. [23]
Как правило, в любой момент времени можно использовать только один стек: переключение обычно требует удаления текущего стека, хотя следы предыдущих стеков остаются в реестре Windows. Однако в некоторых случаях в одной системе Microsoft Windows можно использовать два стека, каждый из которых использует свое собственное отдельное радиооборудование Bluetooth.
Версии Windows: [24]
Примечание: Стек Bluetooth Windows XP/Vista Windows Vista/Windows 7 изначально поддерживает следующие профили Bluetooth: PANU, SPP, DUN, OPP, OBEX, HID, HCRP. [22] [23] [26] В Windows 8 добавлена поддержка профилей HFP, A2DP, GATT и AVRCP. [23]
Стек Windows 7/Vista/8/10 предоставляет API-интерфейсы режима ядра и пользовательского режима для своего стека Bluetooth, поэтому поставщики оборудования и программного обеспечения могут реализовывать дополнительные профили. [23]
Windows 10 (версия 1803) и более поздние версии поддерживают Bluetooth версии 5.0 и несколько профилей Bluetooth. [29]
Профили Bluetooth, предоставляемые устройством, но не поддерживаемые стеком Windows, будут отображаться в диспетчере устройств как «Периферийное устройство Bluetooth» .
WIDCOMM был первым стеком Bluetooth для операционной системы Windows . Стек был первоначально разработан компанией WIDCOMM Inc., которая была приобретена Broadcom Corporation в апреле 2004 года. [30] Broadcom продолжает лицензировать стек для включения во многие устройства конечного пользователя с поддержкой Bluetooth , такие как Qualcomm Atheros, Realtek, Ralink.
API доступен для взаимодействия со стеком из пользовательского приложения. Для разработчиков также есть утилита BTServer Spy Lite, поставляемая вместе со стеком (за исключением некоторых версий, привязанных к поставщику), которая отслеживает активность Bluetooth в стеке на очень низком уровне — хотя категорию и уровень трассировки можно настраивать. Этот стек также позволяет использовать RFCOMM без создания виртуального последовательного порта в операционной системе.
В 2001 году Toshiba впервые анонсировала дизайн ноутбука, который будет интегрировать антенну Bluetooth внутри крышки. Затем Toshiba выпустила первые две модели ноутбуков, предлагающие двойную интеграцию Bluetooth/ Wi-Fi . [31]
Toshiba создала свой собственный стек Bluetooth для использования в Microsoft Windows. Toshiba лицензирует свой стек другим производителям оригинального оборудования (OEM) и поставляет его с некоторыми ноутбуками Fujitsu Siemens , ASUS , Dell и Sony . Для получения API необходимо подписать соглашение о неразглашении . Стек Toshiba также доступен с некоторыми не-OEM аксессуарами Bluetooth, такими как USB-донглы Bluetooth и карты PCMCIA от различных поставщиков.
Стек Toshiba поддерживает один из наиболее полных списков профилей Bluetooth, включая: SPP , DUN , FAX , LAP , OPP , FTP , HID , HDP , HCRP , PAN , BIP , HSP , HFP (включая поддержку Skype), A2DP , AVRCP .
Последняя версия стека Toshiba — 9.20.02(T), выпущенная 30 сентября 2016 года.
В 2010 году CSR plc (ранее Cambridge Silicon Radio) создала свой собственный стек Bluetooth. [32] Он был основан на хост-стеке CSR Synergy BT. CSR была приобретена Qualcomm в августе 2015 года. [33]
BlueSoleil (продается как 1000Moons в Китае ) — это продукт корпорации IVT, которая производит стеки для встраиваемых устройств и настольных систем. Стек доступен как в стандартной, так и в VOIP-версии. Он поддерживает профили A2DP, DUN, FAX, HFP, HSP, LAP, OBEX, OPP, PAN, SPP, AV, BIP, FTP, HID и SYNC.
SDK для сторонних разработчиков приложений доступен для некоммерческого использования на сайте загрузки BlueSoleil, но этот API будет работать только с платной версией стека BlueSoleil 6.4 и выше.
По состоянию на апрель 2018 года последней версией глобального стека BlueSoleil является 10.0.497.0, выпущенная 8 января 2018 года. Китайский стек 1000Moons имеет версию 10.2.497.0, выпущенную 9 января 2018 года.
BlueFRITZ! — стек, поставляемый с USB-донглами Bluetooth от немецкого производителя AVM GmbH . Он поддерживал профили SPP, DUN, FTP, FAX и некоторые другие. HID не поддерживался. Этот стек можно было переключить в режим, в котором он был выключен, а вместо него использовался стек Microsoft. Разработка этого стека была прекращена.
Digianswer был дочерней компанией Motorola, Inc. с 1999 года. [34] Digianswer Bluetooth Software Suite (BTSWS) был продан и представлен OEM -клиентами, такими как Motorola , Dell и IBM , которые объединяли PCMCIA и USB -продукты вместе с BTSWS. Продукт был доступен с августа 2000 года. [35]
Apache Mynewt NimBLE — это полнофункциональный стек протоколов Bluetooth Low Energy 4.2 и 5.0 с открытым исходным кодом, написанный на языке C для встраиваемых систем . NimBLE — один из самых полных стеков протоколов, поддерживающий функции 5.0, включая высокую скорость передачи данных и расширенную рекламу. Реализация поддерживает все уровни протокола Bluetooth. Первые порты для части контроллера — это серии nRF51 и nRF52 SoC от Nordic Semiconductor. NimBLE также поддерживает стандартные интерфейсы HCI для работы с контроллерами, включая чипсеты ST, Dialog и Em Micro. Он использует ОС Apache Mynewt с открытым исходным кодом , которая предназначена для поддержки нескольких архитектур микроконтроллеров. [36] NimBLE также может работать с FreeRTOS и переносим в другие операционные системы реального времени. Реализация позволяет использовать часть контроллера Mynewt NimBLE с хостом NimBLE, отличным от Mynewt.
BlueCode+ — это переносимый стек протоколов Bluetooth более высокого уровня от Stollmann E+V GmbH. BlueCode+ 4.0 соответствует версии Bluetooth 3.0. [37] Стек протоколов не зависит от чипсета и операционной системы и поддерживает любые доступные чипы Bluetooth HCI. API-интерфейсы обеспечивают управление профилями и функциями стека, а также прямой доступ к функциям более низкого уровня. BlueCode+ 4.0 поддерживает протоколы L2CAP, eL2CAP, RFCOMM, SDP Server and Client, MCAP, HCI-Host Side и AVDTP. Поддерживаемые профили: Generic Access (GAP), Service Discovery Application (SDAP), Serial Port Profile (SPP), Health Device Profile (HDP), Device Identification Profile (DID), Dial-up Networking (DUN), Fax, Headset (HSP), Handsfree (HFP), SIM Access (SAP), Phone Book Access (PBAP), Advanced Audio Distribution Profile (A2DP), Audio/Video Remote Control (AVRCP) и OBEX. Стек был портирован на широкий спектр различных микроконтроллеров и операционных систем.
Программное обеспечение CSR BCHS или BlueCore Host (теперь называемое CSR Synergy) обеспечивает верхние уровни стека протоколов Bluetooth (выше HCI или опционально RFCOMM) - плюс большую библиотеку профилей - предоставляя полное системное программное решение для встроенных приложений BlueCore. Текущие квалифицированные профили, доступные с BCHS: A2DP, AVRCP, PBAP, BIP, BPP, CTP, DUN, FAX, FM API, FTP GAP, GAVDP, GOEP, HCRP, Headset, HF1.5, HID, ICP, JSR82, LAP Message Access Profile, OPP, PAN, SAP, SDAP, SPP, SYNC, SYNC ML. [38]
Bluelet — это портативный встроенный стек протоколов Bluetooth от Barrot Technology Limited с эффективными, надежными и небольшими функциями. Bluelet идеально совместим с профилями BREDR/LE. Bluelet можно легко портировать на различные платформы, например, Linux, RTOS, Android. Это предложение включает в себя последнюю полную реализацию хоста Bluetooth 5.3 с использованием ANSI C, реализующую все аудиопрофили/сервисы LE (BAP, PACS, ASCS, BASS; CSIP/CSIS; CCP/TBS; MCP/MCS; MICP/MICS; VCP/VCS/VOCS/AICS; TMAP, HAP/HAS; CAP) и стек MESH. [39]
BlueMagic 3.0 — это высокопортативный встроенный стек протоколов Bluetooth компании Qualcomm (ранее Open Interface North America ), который используется в iPhone от Apple и устройствах на базе Qualcomm, таких как Motorola RAZR. BlueMagic также поставляется в продуктах Logitech, Samsung, LG, Sharp, Sagem и других. BlueMagic 3.0 был первым полностью сертифицированным (все протоколы и профили) стеком протоколов Bluetooth на уровне 1.1. [40]
Bluetooth Protocol Stack (Blue SDK) от OpenSynergy в настоящее время предоставляет профили A2DP, AVRCP, VDP, BIP, BPP, CTN, FTP, GPP, HFP, HSP, HCRP, HDP, HID, MAP, OPP, PAN, PBAP, SAP, DUN, FAX, DID, GATT. Он лицензирован Bluetooth Special Interest Group (SIG) и соответствует стандартам безопасности, ожидаемым от продуктов автомобильного класса. Bluetooth Software Development Kit (Blue SDK) можно легко интегрировать в любую операционную систему. Он поддерживает как операции BR/EDR (Classic), так и операции с низким энергопотреблением, классические профили и профили с низким энергопотреблением используют одно и то же базовое программное обеспечение стека протоколов. [41]
Bluetopia — это реализация Stonestreet One верхних уровней стека протоколов Bluetooth над интерфейсом HCI, которая была квалифицирована для версии 4.0 и более ранних версий спецификации Bluetooth. Интерфейс прикладного программирования (API) обеспечивает доступ ко всем протоколам и профилям верхнего уровня и может напрямую взаимодействовать с самыми популярными чипами Bluetooth от Broadcom, CSR, TI и других. Bluetopia была портирована на несколько операционных систем, таких как Windows Mobile/Windows CE, Linux, QNX, Nucleus, uCOS, ThreadX, NetBSD и другие. В настоящее время Bluetopia поставляется в устройствах таких компаний, как Motorola, Kodak, Honeywell, Garmin, VTech и Harris.
Stonestreet One была приобретена Qualcomm в 2014 году. Texas Instruments предоставляет свою версию стека Bluetopia для использования с чипами Bluetooth от TI.
BlueWiseLE — это сертифицированный стек протоколов Bluetooth Low Energy от Alpwise. Он включает в себя Link Layer [42] , а также Host stack (т. е. верхние уровни над HCI). [43] Link Layer управляет радио и синхронизацией связи Bluetooth в трех возможных конфигурациях чипсета: SoC, сопроцессор или HCI. Также доступно несколько фирменных профилей BLE, включая Voice over BLE и Firmware update Over the Air (FOTA). [44]
Подсистема хоста Bluetooth от Clarinox Technologies. Поддержка Windows 7/8/10, WinCE, Linux/AGL Linux, Android, AutoSAR, Integrity, SafeRTOS, QNX, μITRON, FreeRTOS, μC/OS, Azure RTOS ThreadX, Nucleus, MQX, RTX, embOS, TI-RTOS, DSP/BIOS, eCos и μ-velOSity. Квалифицирован для спецификации Bluetooth 5.2,5.0 и всех предыдущих спецификаций, включает все профили/протоколы Classic и профили/службы LE, включая BT и LE Audio. ClarinoxBlue поддерживает транспорт HCI для SDIO, UART 3-Wire, UART-BCSP, UART-H4, USB. Стек был портирован на многие семейства ЦП и МК, включая 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. Хост-система Bluetooth ClarinoxBlue снабжена инструментом отладки ClariFi, встроенным анализатором протоколов, поддерживает более быструю отладку сложных беспроводных устройств. ClariFi предлагает потоки, использование памяти, анализ утечек памяти и аудиоанализ для поддержки настройки приложений и помощи в сообщении о проблемах. [45]
dotstack, двухрежимный стек Bluetooth от SEARAN, хорошо подходит для недорогих и маломощных встраиваемых устройств, протестирован с iPhone (использует IAP SEARAN), Android и другими мобильными платформами. dotstack квалифицирован как V2.1 + EDR, V4.1, V4.2 и 5.0, с SPP, GAP, HID, Headset, HFP, FTP, HDP, PBAP, Simple Secure Pairing, A2DP, AVRCP, PAN, MAP, BLE (GATT) с ANP/ANS, FMP, HIDS, HOGP, PASP/PASS, PXP, TIP, BAS, DIS, IAS, LLS, TPS, ANCS, BLP/BLS, GP, HTP, HRP/HRS. dotstack портирован на платформы ST Micro (STM32L1/4, STM32F0/1/2/3/4), Microchip (PIC24, dsPIC, PIC32), NXP (LPC), Energy Micro (EFM32), TI (MSP430, C5000 и т. д.), Renesas (RX, SH-2A, M2 ARM Cortex A15, R-Car) и протестирован с контроллерами Bluetooth RF CSR8811/8311/8510, BlueCore 4 и 6, TI CC2560/2564, Intel/Infineon PMB8753, Marvell Avastar 88w8777, 88W8790, Toshiba TC35661, Microchip/ISSC IS1662. dotstack имеет FreeRTOS, uOS, Linux, Android, QNX, MQX, ThreadX и не имеет интеграции с RTOS. Минимальные требования к ОЗУ для SPP 3 КБ с RTOS и приложением. [46]
EtherMind от MINDTREE Ltd — это предложение Bluetooth Stack и Profile IP, сертифицированное BT-SIG. [47]
Стек EtherMind от Mindtree поддерживает все популярные версии спецификаций Bluetooth (2.1+EDR, v4.0, v4.1, v4.2, 5.0, 5.1 и 5.2) и включает все обязательные и дополнительные функции основного стека, а все принятые профили поддерживаются как часть EtherMind. Стек поддерживает последнюю принятую версию 23 классических профилей Bluetooth [48], таких как A2DP, AVRCP и т. д.; и 54 профилей и сервисов Bluetooth Low Energy [49], таких как профиль местоположения и навигации, профиль/сервис весов и т. д. Предложение включает новейшие возможности Mesh [50] и IPv6 Stack [51] через возможности Bluetooth Smart.
Стек протоколов Bluetooth BTware от Jungo позволяет производителям устройств легко включать стандартное подключение Bluetooth в свои разработки, включая мобильные телефоны, автомобильные информационно-развлекательные системы, телевизионные приставки и медицинские устройства. BTware поддерживает стандартный HCI, а также собственный HCI. Поддерживаемые протоколы: L2CAP, RFCOMM, AVDTP, AVCTP, BNEP, MCAP. Поддерживаемые профили: GAP, A2DP, AVRCP, HSP, HFP, SPP, DUN, HID, PAN, HDP, PBAP, OPP, FTP, MAP и другие. Jungo прекратила распространение BTware.
lwBT — это открытый исходный код облегченного стека протоколов Bluetooth для встраиваемых систем от blue-machines. Он действует как сетевой интерфейс для стека протоколов lwIP.
Поддерживает некоторые протоколы и уровни Bluetooth, такие как уровни H4 и BCSP UART. Поддерживаемые более высокие уровни включают: HCI , L2CAP , SDP, BNEP, RFCOMM и PPP . Поддерживаемые профили: PAN (NAP, GN, PANU), LAP, DUN и Serial Port.
lwBT был портирован на Renesas M16C , используемый на платформе Mulle, линейке микроконтроллеров, а также Linux и Windows. Исходный код также был доступен для использования.
Форк lwBT можно найти в репозитории GitHub , поскольку Googlecode исчез. [52]
Mecel Betula совместим с aAd x86. Он также портирован на широкий спектр операционных систем, таких как Windows , Linux , Android или работает без или с пользовательской ОС. Он поддерживает Bluetooth версии 4.0, включая новый Bluetooth Low Energy. [53] Поддерживаемые профили: HSP, DUN, FAX, HFP, PBAP, MAP, OPP, FTP, BIP, BPP, SYNC, GAVDP, A2DP, AVRCP, HID, SAP, PAN.
Silvair Mesh Stack — это реализация профиля Bluetooth MESH и моделей , разработанных в первую очередь для приложений интеллектуального освещения . Помимо основных функций узла сетки, он реализует модель сервера Lightness, модель контроллера освещения и модель сервера датчиков, чтобы его можно было использовать для создания светильников с диммированием и датчиков сбора дневного света . Он обеспечивает выход PWM / 0-10 В для прямого управления диммированием и интерфейс UART для целей интеграции. Выход DALI отмечен как запланированный. [54]
Silvair Mesh Stack был квалифицирован Bluetooth SIG 18 июля 2017 г. с QDID 98880 как первая реализация узла Bluetooth Mesh. [55]
Реализация точки доступа blue2net компанией Siemens .
Symbian OS была операционной системой для мобильных телефонов, которая включает в себя стек Bluetooth. Все телефоны на базе платформы S60 от Nokia и платформы UIQ от UIQ Technology используют этот стек. Стек Bluetooth от Symbian работает в пользовательском пространстве , а не в пространстве ядра, и имеет публичные API для L2CAP, RFCOMM, SDP, AVRCP и т. д. Профили, поддерживаемые в ОС, включают GAP, OBEX, SPP, AVRCP, GAVDP, PAN и PBAP. [56] Дополнительные профили, поддерживаемые в комбинации ОС + платформы S60, включают A2DP, HSP, HFP1.5, FTP, OPP, BIP, DUN, доступ к SIM-карте и идентификатор устройства. [57] [58]
Zephyr Project RTOS включает в себя полный открытый исходный код Bluetooth Low Energy v5.3 [59] совместимый стек протоколов, написанный на языке C для встраиваемых систем . Он содержит как контроллер BLE, так и хост с поддержкой BLE и BR/EDR, работающий на SoC nRF51 Series и nRF52 от Nordic Semiconductor.
не работает и никуда не денется.
Из них вам, возможно, не хватает поддержки Bluetooth. К сожалению, текущий код не работает и не структурирован должным образом, чтобы способствовать дальнейшей разработке.
Первые шаги по поддержке Bluetooth в Linux были сделаны Axis Communications, и они выпустили свой стек OpenBT Bluetooth в апреле 1999 года. Также IBM выпустила свой BlueDrekar, который был доступен только в виде двоичных модулей.... 3 мая 2001 года стек протоколов Bluetooth под названием BlueZ, написанный Qualcomm, был выпущен под лицензией GPL. Этот новый стек следовал подходу на основе сокетов. Месяц спустя его подхватил Линус Торвальдс и интегрировал в ядро Linux 2.4.6-pre2. Другой стек Bluetooth для Linux был выпущен исследовательским центром Nokia в Хельсинки и называется Affix. Сообщество разработчиков ПО с открытым исходным кодом уже решило поддерживать BlueZ в качестве официального стека протоколов Bluetooth Linux, и он стал одной из лучших реализаций спецификации Bluetooth.
BlueZ для Android (BfA) обеспечивает "замену" BlueDroid, что означает, что приложения не нужно менять... Список недостатков BlueDroid также сократился почти до нуля за счет замены BlueZ на... Кроме того, BfA был разработан как часть проекта BlueZ с открытым исходным кодом... Также примечательно, что BlueZ находится на пути к переходу на LGPL. Примерно 80% кода уже лицензировано таким образом, и ожидается еще больше, хотя неясно, когда эта работа будет завершена. Хотя об этом никогда не говорилось в презентации, явный намек из выступления Хольтмана состоял в том, что Google сделала плохой выбор, перейдя на BlueDroid.
{{cite web}}
: CS1 maint: бот: исходный статус URL неизвестен ( ссылка )