Стек Bluetooth

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Bluetooth-стек (Bluetooth stack) — реализация стека протокола Bluetooth.

Bluetooth-стеки можно условно разделить на две группы:

  1. Универсального назначения. Написаны с упором на функциональность и гибкость, как правило, для настольных компьютеров. Поддержка дополнительных профилей Bluetooth может быть добавлена через драйверы.
  2. Для встроенных систем. Предназначены для использования в периферийных Bluetooth-устройствах, где ресурсы ограничены, а требования ниже.

Универсального назначения[править | править вики-текст]

Windows[править | править вики-текст]

Widcomm[править | править вики-текст]

Реализация компании Widcomm Inc. была первой для операционной системы Windows. Widcomm Inc. прошла слияние с Broadcom Corporation в апреле 2004 года.[1] Компания Broadcom продолжает лицензировать стек для включения со многими Bluetooth-устройствами конечного пользователя.

API доступен для взаимодействия со стеком из пользовательских приложений. Для разработчиков существует утилита BTServer Spy Lite в комплекте со стеком (исключенная некоторыми поставщиками), которая контролирует деятельность Bluetooth-стека на низком уровне. Этот стек также позволяет использовать RFCOMM без создания виртуальных последовательных портов в операционной системе.

Стек Microsoft Windows[править | править вики-текст]

В реализации Microsoft (Microsoft Windows Bluetooth stack) поддерживается только встроенные Bluetooth-адаптеры или внешние, присоединённые через интерфейс USB. Не поддерживается соединение Bluetooth через PCI, I²C, Последовательный порт, PC Card и другие интерфейсы.[2] Также поддерживается только один передатчик Bluetooth.[2] Только один стек может использоваться единовременно: переключение обычно требует деинсталлирования текущего стека, хотя след предыдущих стеков остается в системном реестре Windows. Однако, есть некоторые случаи, когда два стека могут использоваться в одной системе Windows Microsoft, каждый, используя их собственные отдельные аппаратные средства технологии Bluetooth.

Microsoft не выпустила официальный Bluetooth-стек для ранних версий Windows, таких как Windows 2000 или Windows Me.

Для Windows XP Service Pack 1 Microsoft выпустила свой Bluetooth-стек QFE. Маркируется как QFE323183. Microsoft не выпустил его для широкой публики. Сторонним компаниям тогда разрешили выпустить QFE как часть их собственной инсталляции программного обеспечения для устройств Bluetooth. Microsoft больше не поддерживает этот QFE.

Windows XP включает в себя встроенный Bluetooth стек, начиная с Service Pack 2.

Стек Bluetooth в Windows Vista улучшен поддержкой большего количества аппаратных идентификаторов, усовершенствованием производительности EDR, адаптивной скачкообразной перестройки частоты для уверенной работы рядом с точкой Wi-Fi, и поддержкой протокола SCO, который необходим для аудио-профилей.[2] Bluetooth-стек в Windows Vista поддерживает интерфейс драйвера устройства в режиме ядра, кроме интерфейса пользователя в режиме программирования, который дает возможность третьим лицам добавить поддержку дополнительных профилей технологии Bluetooth, таких как SCO, SDP, и L2CAP. Это было недостатком встроенного Bluetooth-стека в Windows XP Service Pack 2, который должен был быть полностью заменен сторонним стеком для дополнительной поддержки профиля. Это также обеспечивает поддержку RFCOMM, используя сокеты помимо виртуальных COM-портов.[3]

Пакет Windows Vista Feature Pack (KB942567) добавляет поддержку Bluetooth 2.1 + EDR и Remote Wake от S3 или S4 автономных модулей Bluetooth.[2] Этот пакет доступен пока только для OEM-производителей включена в Windows Vista Service Pack 2, возможности Feature Pack были включен в каждую версию Windows 7.

Операционные системы Windows XP и Windows Vista изначально поддерживают следующие профили Bluetooth: PAN, SPP, DUN, HID, HCRP.[2]

Windows CE начиная с CE 5.0 поддерживает UART, USB, SDIO, и BCSP подключения.[4] Стек от сторонних разработчиков также может быть установлен на устройствах Windows CE, включая Widcomm, BlueSoleil и Toshiba, в зависимости от встроенных систем и версии операционной системы.

EtherMind[править | править вики-текст]

EtherMind является стеком протокола Bluetooth от MindTree для встраиваемых и ведущих (host) устройств. Для получения документации по API необходимо подписание соглашения о неразглашении информации.

Toshiba[править | править вики-текст]

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

BlueSoleil[править | править вики-текст]

BlueSoleil — это продукт IVT Corporation, которая производит стеки для встраиваемых устройств и настольных систем. Стек доступен в стандартной и VOIP-версии. Он поддерживает профили DUN, FAX, HFP, HSP, LAP, OBEX, OPP, PAN, SPP, А. В., BIP, FTP, HID и синхронизацию.

SDK для сторонних разработчиков приложений доступен для некоммерческого использования на сайте загрузки BlueSoleil, но этот API будет работать только с платной версией стека, BlueSoleil 6.4 и выше.

BlueFritz![править | править вики-текст]

Стек BlueFritz! поставляется с USB адаптерами Bluetooth от немецкого производителя AVM GmbH. Он поддерживает профили SPP, DUN, FTP, факс и некоторые другие. HID, к сожалению, не поддерживается. Этот стек может быть переключен в режим, когда он выключен и стек от Microsoft будет использоваться вместо него.

Linux[править | править вики-текст]

У операционной системы Linux в настоящее время есть две широко распространённые реализации стека технологии Bluetooth:

  • BlueZ, включенный в официальное ядро в дистрибутивах Linux, первоначально разработанный Qualcomm.
  • Affix, разработанная Исследовательским центром Nokia (Nokia Research Center).

BlueZ[править | править вики-текст]

BlueZ — канонический стек технологии Bluetooth для Linux. Его цель состоит в том, чтобы сделать реализацию спецификаций стандартов технологии Bluetooth для Linux. Стек BlueZ поддерживает все основные протоколы и уровни Bluetooth. Был первоначально разработан Qualcomm, и доступен для ядра Linux версии 2.4.6 и выше.

В дополнение к основному стеку, пакеты bluez-utils и bluez-firmware содержат низкоуровневые утилиты. Например, dfutool может опросить чипсет адаптера Bluetooth, чтобы определить может ли его прошивка быть обновлена.

Программы, использующие BlueZ[править | править вики-текст]

OS X[править | править вики-текст]

Операционная система OS X от Apple Inc., начиная с версии 10.2, содержит интегрированный Bluetooth-стек[5], который включает профили DUN, SPP, FAX, HID, HSP, SYNC, PAN, BPP и OBEX. В версии 10.5 добавлена поддержка A2DP и AVRCP.

Для встроенных систем[править | править вики-текст]

BlueMagic[править | править вики-текст]

BlueMagic 3.0 открытый интерфейс (теперь Qualcomm) высоко портативный встроенный Bluetooth-стек протоколов, присутствующий в iPhone от Apple и устройствах Qualcomm, таких как Motorola RAZR. Протокол BlueMagic также используется в продуктах Logitech, Samsung, LG, Sharp, Sagem, и многих других. BlueMagic 3.0 был первым полностью сертифицированным (все протоколы и профили) Bluetooth-стеком протоколов в спецификации 1.1.

BlueCore Host Software (BCHS)[править | править вики-текст]

CSR’s BCHS или BlueCore Host Software обеспечивает верхние уровни стека протокола Bluetooth (выше HCI, или опционально RFCOMM) и большую библиотека профилей, предоставляет полное решение системного программного обеспечения для встраиваемых приложений BlueCore. BCHS поддерживает 1.2, 2.0 + EDR и 2.1 + EDR. Текущие профили доступные с 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.[6]

lwBT[править | править вики-текст]

lwBT является облегченным протоколом Bluetooth-стека для встраиваемых систем с открытым исходным кодом. Он действует как сетевой интерфейс для lwIP стека протоколов.

Этот протокол поддерживает некоторые протоколы Bluetooth и профили, такие, как H4 и BCSP UART. Поддерживаемые более высокие профили включают: HCI, L2CAP, SDP, BNEP, RFCOMM и PPP. Поддерживаемые профили: PAN (NAP, GN, PANU), LAP, DUN и последовательный порт.

lwBT была портирован на Renesas M16C, работающий на платформе Mulle, линейку микроконтроллеров, в Linux, а также в Windows.

BlueLet[править | править вики-текст]

Так же продукт IVT Corporation. В настоящее время поддерживает: DUN, FAX, HFP, HSP, LAP, OBEX, OPP, PAN SPP.

ClarinoxBlue[править | править вики-текст]

Продукт хост-подсистемы Bluetooth от Clarinox Technologies. Поддержка WinCE, Embedded Linux, eCos, VelOSity, DSP-BIOS, QNX и ThreadX. Поддерживаются: HCI, L2CAP, RFCOMM, SDP, SDAP, GAP, SPP, DUN, HFP, HSP, OBEX, FTP, AVRCP, A2DP, AVDTP.

Bluetopia[править | править вики-текст]

Bluetopia является реализацией от Stonestreet One для верхних слоёв протокола Bluetooth-стека выше интерфейса HCI и отвечает условиям версии 2.1+EDR и более ранним версиям спецификации Bluetooth. Интерфейс прикладного программирования (API) обеспечивает доступ для всех протоколов верхнего уровня и профиля, может напрямую взаимодействовать с наиболее популярными Bluetooth чипами от Broadcom, CSR, TI и другими. Bluetopia была портирована на множество операционных систем, таких как Windows Mobile / Windows CE, Linux, QNX, Nucleus, uCOS, ThreadX, NetBSD, и другие. Bluetopia в настоящее время используется в устройствах таких компаний, как Motorola, Kodak, Honeywell, Garmin, VTech и Harris.

Symbian OS[править | править вики-текст]

Symbian OS является операционной системой для мобильных телефонов, который включает в себя Bluetooth-стек. Все телефоны на базе платформы Nokia S60 и Sony Ericsson / Motorola платформы UIQ используют этот стек. Symbian Bluetooth стек работает в непривилегированном режиме, и имеет публичный API для L2CAP, RFCOMM, SDP, AVRCP и т. д. Поддерживаемые профили в OS включают GAP, OBEX, SPP, AVRCP, GAVDP, PAN, PBAP.[7] Дополнительные профили поддерживаются в OS + платформы S60 и включают A2DP, HSP, HFP1.5, FTP, OPP, BIP, DUN, SIM Access, Device ID.[8]

BlueCode+[править | править вики-текст]

BlueCode+ является портативным стеком протокола Bluetooth высших профилей от Stollmann E+V GmbH. BlueCode+ 4.0 аттестирован к Bluetooth версии 3.0.[9] Стек протокола является независимым от микроконтроллера и операционной системы, поддерживает любые доступные Bluetooth HCI чипы. API дает возможность для управления профилями и функциями стека, а также предоставляет прямой доступ к функциям нижнего уровня. BlueCode+ 4.0 поддерживает протоколы L2CAP, eL2CAP, RFCOMM, SDP Сервер и Клиент, MCAP, HCI-Host Side and AVDTP. Поддерживаемые профили: Generic Access Profile (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. Стек был перенесен на широкий диапазон различных микроконтроллеров и операционных систем.

Jungo’s BTware[править | править вики-текст]

Bluetooth-стек от Jungo позволяет производителям устройств легко включать стандартное обеспечение связи Bluetooth в свои продукты, которые включают мобильные телефоны, автомобильные развлекательно-информационные системы, абонентские приставки, медицинскую технику, мобильные интернет-устройства и другую бытовую электронику. Поддерживаемые протоколы: Logical Link Control и Adaptation Protocol (L2CAP), Service Discovery Protocol (SDP), RFCOMM, Audio / Video Distribution Transport Protocol (AVDTP), Bluetooth Network Encapsulation Protocol (BNEP) и Multi Channel Adaptation Protocol (MCAP).

Примечания[править | править вики-текст]

Ссылки[править | править вики-текст]