Что такое Bluetooth и как им воспользоваться на своём компьютере?

С ростом количества сетевых беспроводных устройств (охранные и пожарные сигнализации, телемедицина, мониторинг окружающей среды и множество других) появляются новые и совершенствуются старые стандарты и протоколы беспроводной связи. Разные компании и DIY-разработчики используют для своих устройств и сетей разные стандарты передачи данных, например ZigBee, Z-Wave, Bluetooth 4, Wi-Fi, 6LoWPAN, Thread, ANT или собственные проприетарные протоколы. Не так давно вышла новая спецификация стандарта радиосвязи для обмена данными по воздуху Bluetooth 5. В этой статье я на примере программирования новейшего микроконтроллера покажу преимущества нового стандарта.

На правах любящего логику «программиста с паяльником» 🙂 начну статью с плана.

  1. Обзор стандарта. Преимущества пятой версии в сравнении с четвертой.
  2. Выбор железа. Приемник, передатчик.
  3. Описание отладочной платы и микроконтроллера. В этой части я расскажу о параметрах выбранного микроконтроллера и отладочной платы.
  4. Начало работы с SDK (software development kit) под выбранный микроконтроллер. Здесь описывается, как начать разрабатывать простые радиоприложения под Bluetooth Low Energy четвертой версии на нашей отладочной плате. Чтобы мы привыкли к новому набору инструментов и на конкретном примере научились общаться по Bluetooth c Android-телефоном.
  5. Тест нового стандарта Bluetooth 5. В этой части мы сделаем две прошивки для двух отладочных плат и рассмотрим новые режимы радиопередачи по Bluetooth 5.

Обзор стандарта Bluetooth 5

Что мы знаем о новом стандарте? Мы знаем, что он обратно совместим с четвертыми версиями спецификации BLE (Bluetooth Low Energy, Bluetooth Smart), то есть с версиями 4.0, 4.1, 4.2, и позволяет новым устройствам с Bluetooth 5 общаться со старыми девайсами (разумеется, новые фичи будут недоступны). В четвертых версиях BLE, в полном соответствии с названием, позволял проектировать устройства с гораздо меньшим потреблением, чем Bluetooth Classic. Но все остальное, кроме энергопотребления, было не очень — я про скорость, объем передаваемых данных в одном пакете и дальность. Все эти свойства улучшает Bluetooth 5.

Более подробно можно узнать на официальном сайте Bluetooth 5, а мы сейчас кратко остановимся на главных преимуществах пятой версии.

www-icon.jpg

WWW

Все новые Bluetooth-спецификации публикуются здесь.

Высокая пропускная способность данных

Вместе с усовершенствованиями, введенными в Bluetooth 4.2, которые позволяли увеличить объем данных в одном пакете, и еще большим увеличением возможного объема данных в пакете в Bluetooth 5 (DLE) общая пропускная способность стала впятеро выше, чем исходный уровень Bluetooth 4.0!

Теперь чистая пропускная способность данных без учета накладных расходов, таких как адресация, может достигать 1,4 Мбит/c. Зачем нужна такая высокая скорость? Согласен, дурацкий вопрос, даже не знаю, зачем я его придумал. 🙂 Пользователей-аудиофилов это порадует скоростью передачи качественной музыки, а для нас, гиков, открывает возможность гораздо быстрее обновлять прошивку устройства «по воздуху» (OTA-DFU). Всего же благодаря изменениям, внесенным в физический (PHY) слой для работы Bluetooth-радио, стали доступны четыре скорости:

  • 2 Мбит/с;
  • 1 Мбит/с;
  • 500 Кбит/с;
  • 125 Кбит/с.

Уверен, что с первыми двумя скоростями тебе уже все ясно, но вот вопрос: зачем при таком богатстве нужны две «нижние передачи»?

А дело в том, что при низких скоростях и связанной с ними LE закодированной обработке с использованием прямой коррекции ошибок (FEC) становится легче отказаться от повторной передачи данных в окружающем шуме. Короче говоря, чувствительность улучшается. И не надо при высоком уровне шума повторно запрашивать пакеты данных (маленький квадрокоптер может улететь дальше от пульта управления).

Увеличение пропускной способности вещания

Для снижения загрузки вещательного (advertisment, рекламного :)) канала и решения проблемы перегрузки каналов предлагаются вещательные расширения (они же «рекламные расширения»).

Расширение длины данных и новый PHY-уровень означают, что длина пакетов увеличивается с точки зрения фактических данных и времени, в течение которого они занимают канал. Поскольку существуют только три рекламных канала, эти каналы вскоре могут перегружаться вещательными пакетами с большими объемами данных при более низких скоростях передачи в эфире, таких как 125 Кбит/с.

Рекламные расширения смягчают эту потенциальную проблему.

Улучшенное сосуществование с улучшенным чередованием каналов

Bluetooth 5 также предоставил усовершенствованный алгоритм секвенирования каналов (CSA # 2) для улучшения псевдослучайного последовательного переключения каналов. CSA # 2 повысит производительность сосуществования разрешенных устройств при наличии вокруг Wi-Fi и других Bluetooth-устройств. Все SoCs серии nRF52 имеют возможность поддерживать CSA # 2.

BLE Mesh — пока только 4.0

Выбор железа

На момент написания этой статьи пятую версию протокола поддерживали смартфоны Samsung и Sony и в свободной продаже было довольно мало BLE5-совместимых устройств.

nrf52840PDK.jpg

Поэтому, чтобы оценить все возможности Bluetooth 5, я решил взять две отладочные платы с микроконтроллером nRF52840 компании Nordic Semiconductor. Почему именно их? Просто Nordic Semiconductor давно славится своими разработками именно в области Bluetooth-микросхем. Кроме того, их разработки традиционно отличаются вменяемой ценой и богатой документацией. Чипы серии nRF52 и конкретно nRF52840 представляют собой систему на кристалле (SoC, System on a Chip) и, согласно документации, мультипротокольны — могут работать со стандартами Bluetooth 5, Bluetooth Low Energy, ANT, 802.15.4, 2.4GHz RF. Поддерживают они и NFC.

info-icon.jpg

INFO

Все многопротокольные SoCs серии nRF52 поддерживают перечисленные фичи. Кроме того, nRF52840 имеет улучшенную выходную мощность, что вместе с новыми функциями Long Range (увеличение расстояния вещания) переполняет сердце разработчика безотчетной радостью. 🙂

NRF52840 — это усовершенствованный многопроцессорный SoC, идеально подходящий для сверхмалых беспроводных приложений. Имеет полную аппаратную поддержку Bluetooth 5 (включая увеличенную дальность вещания). Софт nRF52840 крутится на 32-битном процессоре ARM Cortex-M4F (64 МГц достаточно каждому (с) почти Билл Гейтс) с 1 Мбайт флеш-памяти и 256 Кбайт ОЗУ на чипе. Поддерживает инструкции DSP (цифровая обработка сигнала), вычисления с плавающей точкой (FPU).

Поддерживает несколько протоколов, включая Bluetooth с низким энергопотреблением, ANT (кто-нибудь использовал этот протокол? :)), 802.15.4 и 2.4GHz.

NRF52840 SoC использует управление питанием, чтобы максимизировать энергоэффективность приложений и время автономной работы. Запитать чип можно от напряжения постоянного тока в диапазоне от 1,7 до 5,5 В.

EasyDMA, как и все DMA (прямой доступ к памяти), позволяет разгрузить ЦП нашего микроконтроллера, например чтобы передавать потоки данных из АЦП в UART без участия ядра.

В SoC есть также мощный криптографический сопроцессор на кристалле (ARM Cryptocell-310), обеспечивающий криптографические функции и услуги для ускорения операций, экономии времени обработки процессором данных и сокращения потребления энергии. Он включает в себя настоящий генератор случайных чисел (TRNG) и поддерживает широкий спектр асимметричных, симметричных и хеширующих криптографических сервисов. NFC также поддерживается в чипе.

NRF52840 имеет встроенную поддержку USB 2.0 (full speed) и встроенное регулирование питания, позволяющее напрямую подключаться к USB-хостам для передачи данных.

Чип совместим с существующими сериями nRF52, nRF51 и nRF24 Series от Nordic Semiconductor.

SoftDevice

Отладочная плата

Отладочную плату на основе этого микроконтроллера я выбрал под стать чипу, вот она: nRF52840 Preview DK Development Kit for nRF52840. Между прочим, к ней прилагается NFC-антенка!

NRF52840 PDK — это универсальный комплект для разработки плат для Bluetooth 5, Bluetooth с низким энергопотреблением, ANT, 802.15.4 и 2.4GHz с использованием nRF52840 SoC. Этот комплект поддерживает разработку для SoC nRF52840.

Набор аппаратно совместим с Arduino Uno Revision 3, позволяет использовать сторонние шилды, совместимые с этим стандартом. Антенна NFC может быть подключена к набору, чтобы активировать функциональность тега NFC. Комплект обеспечивает доступ ко всем входам и выходам через интерфейсы и имеет четыре светодиода и четыре кнопки, которые программируются пользователем.

Он поддерживает стандартную цепочку инструментов разработки Nordic Software Development с использованием Keil, IAR и GCC. Опции программы / отладки в комплекте — это Segger J-Link OB.

Кроме всего прочего, на основе младшего чипа серии nRF52832 уже существуют платы для платформы Arduino, например Arduino Primo. Почему это хорошо? Да потому, что это избавляет тебя от кодинга на С.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

Я уже участник «Xakep.ru»← Ранее Сергей Лебедь. Интервью с руководителем службы кибербезопасности СбербанкаДалее → Опубликованы детали уязвимости в AMD Secure Processor

Razbiraemsya-s-versiyami-Bluetooth.pngДоброго времени!

Многие пользователи даже не подозревают, что версий протокола Bluetooth ни одна и не две, и от нее довольно существенно зависят возможности конкретного устройства.

Например, чтобы передавать файлы по Bluetooth — у вас должен быть адаптер, поддерживающий версию протокола 4.0 (или выше). Разумеется, на это начинают обращать внимание когда сделать этого не получается…

В этой заметке приведу несколько способов, как узнать, какую версию Bluetooth поддерживает ваш телефон, компьютер (или ноутбук), а также укажу в чем отличие разных версий (самое основное).

В помощь! 

Vklyuchaem-blyutuz.png

Как включить Bluetooth на компьютере/ноутбуке — https://ocomp.info/kak-vklyuchit-blyutuz-na-noutbuke.html

*

Узнаем версию Bluetooth

На телефоне (под Android)

Способ 1

Для работы понадобиться спец. приложение для диагностики и просмотра характеристик AIDA 64 (ссылка на Play Market). Возможно, многие знакомы с одноименной и очень популярной утилитой для ПК.

Так вот, установив и открыв AIDA 64 — необходимо перейти во вкладку система и найти строчку с версией Bluetooth (см. пример ниже, в моем случае: V 4.2).

AIDA64-----sistema.png

AIDA64 — система

Этот способ один из самых достоверных и простых. А приложение AIDA 64 пригодится вам еще не раз (рекомендую иметь под-рукой).

Способ 2

Можно обойтись и без установки различных приложений. Для этого нужно узнать точную модель телефона. Обычно, эту информацию можно найти во вкладке «Система/О телефоне»(прим.: Андроид 8.0).

Sistema-----o-telefone-----model-i-nazvanie-800x528.png

Система — о телефоне — модель и название

После, зная модель и название телефона — можно открыть любой коммерческий магазин, где продается подобная техника (либо сайт производителя вашего телефона) и узнать его тех. характеристики. В общем-то, тоже просто и быстро.

Tipovaya-teh.-harakteristika-k-telefonu-dostupna-na-lyubom-kommercheskom-sayte.png

Типовая тех. характеристика к телефону (доступна на любом коммерческом сайте)

Примечание!

Правда, все же, есть у этого варианта один минус. На том сайте, где вы найдете характеристики вашего аппарата могут быть неточности. Я уж не говорю о различных модификациях к той или иной модели телефона…

*

На компьютере/ноутбуке (под Windows)

Теперь узнаем версию Bluetooth адаптера на компьютере (ноутбуке). Для этого нужно сначала открыть диспетчер устройств: нажмите Win+R, в появившемся окне введите в строку открыть команду devmgmt.msc, и OK.

Zapusk-dispetchera-ustroystv-Windows-10.png

Запуск диспетчера устройств — devmgmt.msc

Далее следует найти вкладку «Bluetooth» и раскрыть ее. Среди устройств должно быть одно, в названии которого содержится слово «адаптер» (либо «adapter», либо «Bluetooth radio…», либо «Broadcom Bluetooth…») — нужно открыть его свойства.

Примечание: иногда в названии адаптера можно сразу же увидеть версию Bluetooth (см. скрин ниже, именно такой случай…).

Svoystva-Bluetooth-adaptera.png

Свойства Bluetooth адаптера

После перейти во вкладку «Дополнительно», там должна быть строка с номером LMP. В моем примере ниже LMP 8.56425 (в общем-то, нужно запомнить только первую цифру «8»).

LMP-8.x-----vkladka-dopolnitelno.png

LMP 8.x — вкладка «Дополнительно»

Далее см. простой список, приведенный ниже (напротив каждого номера LMP значится версия):

  • LMP 3.x — Bluetooth 2.0 + EDR;
  • LMP 4.x — Bluetooth 2.1 + EDR;
  • LMP 5.x — Bluetooth 3.0 + HS;
  • LMP 6.x — Bluetooth 4.0;
  • LMP 7.x — Bluetooth 4.1;
  • LMP 8.x — Bluetooth 4.2;
  • LMP 9.x — Bluetooth 5.0.

У наушников

Чтобы узнать какую версии протокола поддерживают наушники — как правило, достаточно посмотреть на их тех. характеристики (приводятся на их упаковке).

Harakteristiki-besprovodnyih-naushnikov.png

Характеристики беспроводных наушников

Если упаковка давно утеряна — обратите внимание на корпус наушников (нередко на нем можно узнать их модель и название). А зная модель — не составит труда найти их тех. характеристики (если, конечно, речь не идет о малоизвестных китайских брендах).

Кстати, если на корпусе наушников не указана их модель, попробуйте открыть панель управления, вкладку «Оборудование и звук/Звук» (см. пример ниже).

Oborudovanie-i-zvuk-----zvuk-800x498.png

Оборудование и звук — звук

Во вкладке «Воспроизведение», обычно, можно узнать информацию и подключаемых устройствах (в том числе и модель наушников). См. пример ниже.

Model-naushnikov.png

Модель наушников

*

Отличие разных версий Bluetooth

Важный момент!

Не стоит забывать, что само по себе устройство Bluetooth не работает, как минимум у вас есть два устройства, сопрягающиеся по этому протоколу, например, телефон и наушники.

И если ваш телефон поддерживает версию Bluetooth 4.2, а наушники 2.1 + EDR — подключение будет происходить по протоколу 2.1 + (прим.: всегда выбирается самая низкая из доступных версий).

Теперь о том, какие версии Bluetooth существуют, и что можно сейчас встретить…

1) Bluetooth 1.0, 1.1, 1.2 — первые версии протокола, появились в 1994 году. Сегодня найти что-то из тех устройств почти нереально.

2) Bluetooth 2.0 + EDR — обновленная версия протокола, датируется 2004 г. По сравнению с первыми версиями существенно снижено энергопотребление и несколько возросла скорость работы. До сих пор можно встретить в старых и недорогих наушниках, гарнитурах.

3) Bluetooth 2.1 и Bluetooth 2.1 + EDR — более новая версия протокола (от 2007 г.). Появилась поддержка NFC, уменьшено энергопотребление в 5-10 раз, ускорено сопряжение устройств.

4) Bluetooth 3.0 + HS — обновление от 2009 г. Была существенно увеличена скорость передач данных (до 1 Мбит/с). Правда, вместе с этим серьезно возросло энергопотребление, поэтому эта версия не стала такой популярной (как предыдущие).

5) Bluetooth 4.0 — обновление от 2010 г. Было уменьшено энергопотребление, появилась возможность передавать файлы, скорость осталась прежняя — 1 Мбит/с. Bluetooth адаптеры этой версии до сих пор можно встретить в ноутбуках, телефонах. Также было выпущено достаточно много гарнитур.

6) Bluetooth 4.1 — устранение перекрестных помех при одновременной работе с LTE-модулями, которые есть во всех 4G смартфонах (2013 г.);

7) Bluetooth 4.2 — была несколько увеличена стабильность и скорость передачи данных, улучшена защита, конфиденциальность, увеличено расстояние на котором могут работать устройства (до 60 метров). Наиболее часто-встречаемый протокол на сегодняшний день, используется повсеместно: наушниках, мышках, плеерах, ноутбуках и т.д.

8) Bluetooth 5.0 — новый протокол от 2017 г. Была увеличена скорость (до 2 Мбит/с) и расстояние, на котором могут работать устройства (до 240 метров). Встречается только в новых и дорогих гаджетах: телефонах, ноутбуках и пр.

9) Bluetooth 5.1 — разработчики обещают выпустить новую версию уже совсем скоро. Основное нововведение — определение местоположения устройств.

Стоит ли гнаться за более новой версией Bluetooth

В общем-то, чем новее версия Bluetooth — тем быстрее, стабильнее и качественнее будет связь, чище звук (если вы используете беспроводные наушники), меньшее энергопотребление устройства (а значит оно дольше проработает без подзарядки).

Кроме того, новая версия Bluetooth 5.0 (например) позволяет работать устройствам на существенно большем расстоянии. Это может быть весьма полезно, если вы находитесь где-нибудь на даче.

Что касается качества звука…

Если говорить о беспроводных наушниках, то большое значение на звук может оказывать не только версия поддерживаемого ими протокола Bluetooth, но и кодек, которым сжимается сигнал.

Суть тут вот в чем: аудио-плеер напрямую не передает по Bluetooth MP3 звук на динамики наушников. Сначала воспроизводимая музыка сжимается, затем по протоколу Bluetooth передается на адаптер наушников — после сигнал декодируется и только потом подается на динамики. Разумеется, различные наушники, аудио-плееры поддерживают разные форматы кодеков (что и влияет на качество звука).

Одним из лучших кодеков, обеспечивающим очень качественный звук, является технология aptX. Чтобы вы могли заметить работу этой технологии — ее должны поддерживать и наушники, и тот плеер (гаджет), с которым вы их сопрягаете. Отмечу, что это удовольствие пока не самое дешевое…

*

На этом пока все. Удачи!

RSS  (как читать Rss)

Другие записи:

  • Выбираем фоторедактор для Android (на русском)
  • Значение клавиш F1-F12: на обычной клавиатуре и на ноутбуке
  • Как убрать красные глаза на фото: несколько способов
  • Ошибка 0xc0000022 при запуске игр, программ [решение]
  • Обои для Windows: компьютеры и сеть (Full HD 1920×1080)
  • Принтер зависает при печати документа: что можно сделать? Несколько практических советов
  • 10 умных мини портативных КОЛОНОК и динамиков для ПК, ноутбука и телефона с AliExpress (подборка)
  • Сколько Мегабайт в Мегабите? Скорость интернета в Мбит/с и МБ/с: в чем разница и где подвох?

Многие люди, используют технологию для обмена данными Bluetooth, но не знают, что это такое, а возможно некоторые только собираются ей воспользоваться. Данная статья коротко расскажет, что такое Bluetooth; как этот вид радио связи работает; где используется и как воспользоваться Bluetooth на своём компьютере.

bluetooth-logo.jpg

Что такое Bluetooth?

Bluetooth является стандартом беспроводной радиосвязи, связывающим на коротких расстояниях различные типы устройств и предназначенным для создания личных сетей. Технология Bluetooth использует ту же 2,4 ГГц рабочую частоту, что и при использовании беспроводных стандартов 802.11b и 802.11g, но, в свою очередь, во время работы потребляет меньшее количество энергии.

bluetooth-garnitura.jpg

Эта технология применяется во многих устройствах, имеющие чипы Bluetooth. Наиболее распространено использование мобильных телефонов для связи с компьютерами, гарнитурами и другими устройствами. Этот вид связи даёт возможность дистанционного управления игровыми консолями, многие планшеты и ноутбуки тоже имеют чипы Bluetooth. Существуют и другие устройства, с поддержкой Bluetooth: беспроводные мыши и клавиатуры, аудио системы для автомобилей, и т.д.

Немного из истории Bluetooth

Термин Bluetooth связан с именем датского правителя 10-го века Harald Blåtand — или Harald Bluetooth на английском языке. Он был первым правителем, объединившим враждующие группировки, называемые сейчас Норвегия, Швеция и Дания. Если перевести Bluetooth, то получится словосочетание «синиц зуб», гораздо чаще можно увидеть Блютуз или Блютус.

Bluetooth был изобретен шведской компанией Ericsson в 1994 году. С 1998 года, стандарт управляется специальной группой Bluetooth (SIG) — орган, который осуществляет надзор за разработкой стандартов Bluetooth, лицензирование технологий Bluetooth и товарных знаков для производителей. Эта организация ориентирована на разработку стандарта, новых версий, но не производство и продажу продуктов Bluetooth, оставляя такую возможность лицензированным производителям.

Новейшие стандартные версии, используемые в большинстве современных устройств Bluetooth 3.0 и Bluetooth 4.0 – 4.2.

Bluetooth 3.0 используется в большинстве современных смартфонов и прочих устройств. Стандарт был принят 21 апреля 2009 года и предусматривает теоретические скорости передачи данных до 24 Мбит / с.

Bluetooth 4.0 является улучшением по сравнению с версией 3.0 и обеспечивает более низкое энергопотребление при той же скорость передачи. Стандарт был принят 30 июня 2010 года, а количество устройств, использующих эту версию неуклонно растет. Одними из самых известных смартфонов, использующих эту версию, являются iPhone 6 в и Samsung Galaxy S3.

bluetooth-akustika.jpg

Самая современная, на момент выпуска статьи, является версия Bluetooth 4.2, представленная 3 декабря 2014 года.

Как воспользоваться Bluetooth на своём компьютере?

Bluetooth интегрирован почти в каждый смартфон и планшет, а также имеется в ряде ноутбуков. А вот наличие чипов Bluetooth в стационарных компьютерах скорее исключение из правил.

Поэтому, единственным способом, иметь Bluetooth на настольном компьютере становится приобретение небольшого по размеру Bluetooth адаптера с USB интерфейсом подключения. Такие адаптеры могут быть найдены практически в любом компьютерном магазине.

bluetooth-usb-adapter.jpg

При выборе Bluetooth адаптера, нужно обратить внимание на поддерживаемую версию Bluetooth. Приобретать нужно по крайней мере версию 3.0, если не 4,0 или более свежие. Обычно самые дешёвые USB-адаптеры обеспечивают поддержку только для Bluetooth версии 2.1. Более дорогостоящие адаптеры, как правило, обеспечивают поддержку последних версий.

Установка таких устройств обычно происходит в автоматическом режиме (Plug and Play). Windows 7, 8 или 10 просто обнаруживает USB-адаптер Bluetooth и устанавливает свои драйверы автоматически. Затем устройство можно сразу же использовать.

Если операционная система не найдёт драйвер устройства, нужно воспользоваться находящимся в комплекте с устройством компакт-диском, или произвести поиск драйверов на сайте производителя. Для расширения возможностей связи можно использовать предназначенную для этого утилиту.

znachok-bluetooth-panel-zadach.jpg

При работающем модуле Bluetooth на компьютере, можно увидеть его синий значок в области уведомлений панели задач. Если значка Bluetooth там нет, это означает, что установка была выполнена неправильно или же Bluetooth вовсе отсутствует.

Итак, теперь стало понятно, что такое Bluetooth, принципы его работы, возможности и способы использования. Но существует стандарт связи Wi-Fi Direct, который имеет преимущества над Bluetooth и по этому имеет все шансы заменить его.

Используемые источники:

  • https://xakep.ru/2018/01/09/ble5/
  • https://ocomp.info/versiyu-bluetooth.html
  • http://procomputer.su/seti-i-svyaz/179-chto-takoe-bluetooth

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации