Существует ли беспроводная блютус 5.0 гарнитура. Bluetooth v4.2: что же действительно нового и как это работает? Есть ли уже возможность пощупать

19.12.2023 Ios

Здравствуйте.

3 декабря 2014 года Bluetooth SIG официально анонсировала спецификацию bluetooth версии 4.2.
В пресс-релизе указаны 3 главных нововведения:

  • увеличение скорости приема-передачи данных;
  • возможность подключения к интернету;
  • улучшение конфиденциальности и безопасности.

Главный тезис пресс-релиза: версия 4.2 - идеальна для интернета вещей (IoT).
В этой статье я хочу рассказать, как реализованы эти 3 пункта. Кому интересно добро пожаловать.

Все, что описано ниже, относится только к BLE, поехали…

1. Увеличение скорости приема-передачи пользовательских данных.

Самым главным недостатком у BLE была малая скорость передачи данных. Хотя с какой стороны посмотреть, ведь изначально BLE придумывали ради сохранения энергии источника, питающего устройство. А чтобы беречь энергию, надо с перерывами выходить на связь и передавать немного данных. Однако, все равно, весь интернет заполнен возмущениями о малой скорости и вопросами о возможности ее увеличения, а также увеличения размера передаваемых данных.

И вот с появлением версии 4.2, Bluetooth SIG заявил об увеличении скорости передачи в 2,5 раза и размера передаваемого пакета в 10 раз. Как же они этого добились?

Сражу скажу, что эти 2 цифры связаны друг с другом, а именно: скорость увеличилась потому, что увеличился размер передаваемого пакета.

Посмотрим на PDU (protocol data unit) канала данных:


Каждый PDU содержит 16-ти битный заголовок (header). Так вот, этот заголовок в версии 4.2 отличается от заголовка в версии 4.1.

Вот заголовок версии 4.1:

А вот заголовок версии 4.2:

Примечание: RFU (Reserved for Future Use) - поле, обозначенное этой аббревиатурой зарезервировано для будущего использования и заполняется нулями.

Как мы видим, последние 8 бит заголовка отличаются. Поле «Lenght» - это сумма длин полезных данных и поля MIC (Message Integrity Check), находящегося в PDU (если последнее включено).
Если в версии 4.1 поле «Lenght» имеет размер 5 бит, то в версии 4.2 это поле размером 8 бит.

Отсюда несложно вычислить, что поле «Lenght» в версии 4.1 может содержать значения в промежутке от 0 до 31, а в версии 4.2 в промежутке от 0 до 255. Если из максимальных значений вычесть длину поля MIC (4 октета), то получим, что полезных данных может быть 27 и 251 октет для версии 4.1 и 4.2 соответственно. На самом деле максимальное кол-во данных еще меньше, т.к. в полезной нагрузке находятся еще и служебные данные L2CAP (4 октета) и ATT (3 октета), но это мы рассматривать не будем.

Таким образом размер передаваемых пользовательских данных увеличился приблизительно в 10 раз. Что же касается скорости, которая, почему-то, увеличилась на в 10 раз, а всего в 2.5 раза, то тут нельзя говорить о пропорциональном увеличении, потому, что все упирается еще и в гарантированность доставки данных, ведь гарантировать доставку 200 байт немного сложнее чем 20-ти.

2. Возможность подключения к интернету.

Пожалуй, самое интересное нововведение, из-за которого Bluetooth SIG и объявила, что версия 4.2 делает интернет вещей (IoT) лучше именно благодаря этой возможности.

Еще в версии 4.1 в L2CAP появился режим «LE Credit Based Flow Control Mode». Этот режим позволяет управлять потоком данных, используя т.н. схему, основанную на кредите. Особенность схемы в том, что она не использует сигнальные пакеты, для обозначения кол-ва передаваемых данных, а запрашивает у другого устройства кредит на определенный объем данных для передачи, тем самым ускоряя процесс передачи. При этом, принимающая сторона каждый раз при получении фрейма, уменьшает счетчик фреймов, и при достижении последнего фрейма может разорвать соединение.

В списке команд L2CAP появилось 3 новых кода:
- LE Credit Based Connection request – запрос на соединение по схеме кредита;
- LE Credit Based Connection response – ответ на соединение по схеме кредита;
- LE Flow Control Credit – сообщение о возможности получить дополнительные LE-кадры.

В пакете «LE Credit Based Connection request»


есть поле «Initial Credits» длиной в 2 октета, указывающее на кол-во LE-фреймов, которое устройство может отправить на уровне L2CAP.

В ответном пакете «LE Credit Based Connection response»


в том же поле указано кол-во LE-фреймов, которое может отправить другое устройство, а также в поле «Result» указан результат запроса на соединение. Значение 0x0000 говорит об успехе, остальные значения указывают на ошибку. В частности, значение 0x0004 указывает на отказ в соединении из-за отсутствия ресурсов.

Таким образом уже в версии 4.1 появилась возможность передачи большого кол-ва данных на уровне L2CAP.
И вот, практически одновременно с выходом версии 4.2, публикуется:

  • сервис: «IP Support Service» (IPSS) .
  • профиль IPSP (Internet Protocol Support Profile) , который определяет поддержку передачи пакетов IPv6 между устройствами, имеющими BLE.

Главным требованием профиля для уровня L2CAP является «LE Credit Based Connection» появившееся в версии 4.1, которое, в свою очередь позволяет передавать пакеты с MTU >= 1280 октетов (надеюсь намек на цифру понятен).

Профиль определяет следующие роли:
- роль маршрутизатора (Router) – используется для устройств, которые могут маршрутизировать IPv6 пакеты;
- роль узла (Node) – используется для устройств, которые могу только принимать или отправлять пакеты IPv6; имеют функцию обнаружения сервисов и имеют сервис IPSS, позволяющий маршрутизаторам обнаруживать данное устройство;

Устройства с ролью маршрутизатора, которым необходимо подключение к другому маршрутизатору могут иметь роль узла.

Как ни странно, но передача пакетов IPv6 не является частью спецификации профиля, и указывается в IETF RFC «Transmission of IPv6 packets over Bluetooth Low Energy» . В этом документе опредлен еще один интересный момент, а именно то, что при передаче пакетов IPv6 используется стандарт 6LoWPAN - это стандарт взаимодействия по протоколу IPv6 поверх маломощных беспроводных персональных сетей стандарта IEE 802.15.4.

Посмотрите на рисунок:


В профиле определено, что IPSS, GATT и ATT используются только для обнаружения сервиса, а GAP используется только для обнаружения устройства и установки соединения.

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

3. Улучшение конфиденциальности и безопасности.

Одной из обязанностей менеджера безопасности (Sequrity manager) (SM) является сопряжение двух устройств. В процессе сопряжения создаются ключи, которые затем используются для шифрования связи. Процесс сопряжения состоит из 3-х фаз:

  • обмен информацией о способах сопряжения;
  • генерация краткосрочных ключей (Short Term Key (STK));
  • обмен ключами.

В версии 4.2 2-я фаза разделилась на 2 части:

  • генерация краткосрочных ключей (Short Term Key (STK)) под названием «LE legacy pairing»
  • генерация долговременных ключей (Long Term Key (LTK)) под названием «LE Secure Connections»

В связи с этим в криптографическом тулбоксе менеджера безопасности помимо 3-х существующих функций, появилось еще 5 и эти 5 используются только для обслуживания нового процесса сопряжения «LE Secure Connections». Эти функции генерируют:

  • LTK и MacKey;
  • подтверждающие переменные;
  • переменные проверки аутентификации;
  • 6-ти значные числа, используемые для отображения на связываемых устройствах.

Все функции используют алгоритм шифрования AES-CMAC с 128-ми битным ключом.

Так вот, если при сопряжении во 2-й фазе по методу «LE legacy pairing» генерировалось 2 ключа:

  • Temporary Key (TK): 128-ми битный временный ключ, используемый для генерации STK;
  • Short Term Key (STK): 128-ми битный временный ключ, используемый для шифрования соединениЯ

то по методу «LE Secure Connections» генерируется 1 ключ:

  • Long Term Key (LTK): 128-ми битный ключ, используемый для шифрования последующих соединениЙ.

Результатом этого нововведения мы получили:

  • предотвращение отслеживания, т.к. теперь за счет «Numeric Comparison» есть возможность контролировать возможность подключения к Вашему устройству.
  • улучшение энерго-эффективности, т.к. теперь не требуется дополнительная энергия для повторных генераций ключей при каждом соединении.
  • отраслевой стандарт шифрования для обеспечения конфиденциальных данных.

Как это ни странно звучит, но за счет улучшения безопасности мы получили улучшение энерго-эффективности.

4. Есть ли уже возможность пощупать?

Да, есть.
NORDIC Semiconductor выпустил «nRF51 IoT SDK» который включает в себя стек, библиотеки, примеры и API для устройств серии nRF51. Сюда входят:

  • чипы nRF51822 и nRF51422;
  • nRF51 DK;
  • nRF51 Dongle;
  • nRF51822 EK.

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

Что такое Bluetooth и как его использовать?

В 1994 году появился новый стандарт связи устройств. Шведская компания Эрикссон привела в то время к унификации беспроводных технологий, как и в 20 веке, когда король Харальд Блюйз объединил викингами под одной нацией. В честь этого короля новая волна была окрещена его именем, и в 2017 году пятое поколение приносит нам новое измерение, чтобы общаться с объектами вокруг нас.

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

Hands-free звонки и необходимость приблизиться к вашему телефону, потому что вы теряете связь, ушли в прошлое с устройствами Bluetooth 5. Теперь вы можете отправиться в любое место своего дома, не теряя соединения, независимо от того, где находится ваш телефон. Это все благодаря способности Bluetooth 5 поддерживать высокую пропускную способность более чем на 100 метров. Данное расстояние Usain Bolt может пробежать за 9,58 секунд, а Bluetooth будет принимать за 5 миллисекунд.

У нас уже есть устройства, которые синхронизируются по Bluetooth, но до сих пор вы могли слушать музыку только на одном динамике или на одном наушнике. С помощью Bluetooth 5 вы можете подключить несколько устройств.

Диапазон Bluetooth находится между NFC и Wi-Fi. Его главным преимуществом является его безопасность. Зашифрованная информация перемещается с одного устройства на другое, что делает его особенно полезным для устройств, которые контролируют наше здоровье или даже управляют платежами.

Сети Wi-Fi в наших домах, и Bluetooth 5 может помочь отменить их, контролируя большую часть устройств IoT, подключенных к Wi-Fi, таких как динамики, телевизор или кофейник. Кроме того, благодаря BLE (Bluetooth с низким энергопотреблением), вам, возможно, не придется зависеть от разъемов, так как вы будете использовать меньше энергии.

Bluetooth 5: новые устройства, которые будут определять будущее IoT

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

В марте на рынок вышли первые устройства с этой новой технологией, которая была анонсирована чуть меньше, чем год назад: Samsung Galaxy S8 и S8 +. Второй, Xiaomi Mi 6, был выпущен на китайский рынок в конце апреля. Следующие устройства, которые будут поставляться с Bluetooth 5, будут HTC U 11, который будет выпущен 16 мая, и Sony Xperia XZ Premium, который должен появиться в магазинах этим летом.

Эти четыре устройства первыми взяли азарт на эту улучшенную версию Bluetooth, но можно с уверенностью сказать, что после весны мы, вероятно, также увидим эту спецификацию на OnePlus 5, Samsung Galaxy Note 8.

Только подключения одного комплекта наушников ушла в прошлое благодаря Bluetooth 5.

Bluetooth 5: удвоенная скорости и диапазон

Пятое поколение этой короткой волны, которая движется в диапазоне 2,4 ГГц, имеет гораздо больший охват и быстрее, чем предыдущие версии. Он обеспечивает низкое энергопотребление и высокий уровень безопасности с помощью шифрования (который соответствует стандарту защиты правительства США), а также в два раза быстрее, до 5120 кбит/с.

Bluetooth 5 удваивает диапазон Bluetooth 4.0, который составляет до 60 метров. Другими словами, на 240 метров BT5 поддерживает скорость 128 кбит/с, а на 120 м – 500 кбит/с. С другой стороны, это новое поколение также может иметь в 8 раз больше соединений, чем старый стандарт.

Bluetooth 5 поддерживает BLE (Bluetooth с низким энергопотреблением), который был представлен в версии 4.0. Таким образом, увеличение скорости и дальности не влияет на энергопотребление устройств BLE.

Bluetooth 5: новое измерение для аудио

Во-первых, это увеличение расстояния, скорости и количества подключений повлияет на количество устройств, к которым мы можем подключиться, и объем информации, которую мы можем отправить. Это уже непосредственно влияет на нас.

С Galaxy S8 мы можем одновременно подключить две Bluetooth-гарнитуры. Таким образом, два человека могут слушать одну и ту же песню одновременно, не беспокоя окружающих. Однако, с видео на S8, мы заметили небольшую задержку в одном из двух подключенных наушников, но мы надеемся, что это улучшится с обновлениями программного обеспечения. В версии 5.0 аудио не имеет специального сжатия для улучшения качества, но ожидается, что этот аспект будет расширен в стандартном обзоре в 2018 году, возможно, в версии 5.1.


Аудио для двух Bluetooth-гарнитур с Samsung Galaxy S8.

Вторая (и на мой взгляд самая важная) вещь заключается в том, что при большем объеме данных качество звука может увеличиваться, пока нет никакой разницы между ним и использованием кабеля. В настоящее время сжатие звука через Bluetooth, SBC, хуже, чем у CD, так как обычно оно передается со скоростью около 328 Кбит/с. Но эта скорость не является проблемой для Bluetooth 5.

У Sony уже есть технология под названием LDAC, которая передает аудио через Bluetooth со скоростью 990 Кбит/с, что является вполне управляемой скоростью передачи для Bluetooth 5.

Bluetooth 5 – это будущее

Через четыре года в мире будет более 48 миллиардов смарт-устройств, из которых около трети будет иметь Bluetooth-соединение. Другими словами, на наши смартфоны будет подключено несколько миллиардов устройств. Очевидно, что стандарт Bluetooth будет одним из ведущих игроков в Интернете вещей (IoT).

Это уже король связи среди носимых, и многие устройства Smart Home также общаются с этой «голубой» волной. Поэтому единственное, что остается в будущем, это раздвинуть границы.

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

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

Видео: Новости о новой технологии Blutetooth 5.0

  • Беспроводные технологии
  • Здравствуйте.

    3 декабря 2014 года Bluetooth SIG официально анонсировала спецификацию bluetooth версии 4.2.
    В пресс-релизе указаны 3 главных нововведения:

    • увеличение скорости приема-передачи данных;
    • возможность подключения к интернету;
    • улучшение конфиденциальности и безопасности.
    Главный тезис пресс-релиза: версия 4.2 - идеальна для интернета вещей (IoT).
    В этой статье я хочу рассказать, как реализованы эти 3 пункта. Кому интересно добро пожаловать.

    Все, что описано ниже, относится только к BLE, поехали…

    1. Увеличение скорости приема-передачи пользовательских данных.


    Самым главным недостатком у BLE была малая скорость передачи данных. Хотя с какой стороны посмотреть, ведь изначально BLE придумывали ради сохранения энергии источника, питающего устройство. А чтобы беречь энергию, надо с перерывами выходить на связь и передавать немного данных. Однако, все равно, весь интернет заполнен возмущениями о малой скорости и вопросами о возможности ее увеличения, а также увеличения размера передаваемых данных.

    И вот с появлением версии 4.2, Bluetooth SIG заявил об увеличении скорости передачи в 2,5 раза и размера передаваемого пакета в 10 раз. Как же они этого добились?

    Сражу скажу, что эти 2 цифры связаны друг с другом, а именно: скорость увеличилась потому, что увеличился размер передаваемого пакета.

    Посмотрим на PDU (protocol data unit) канала данных:


    Каждый PDU содержит 16-ти битный заголовок (header). Так вот, этот заголовок в версии 4.2 отличается от заголовка в версии 4.1.

    Вот заголовок версии 4.1:

    А вот заголовок версии 4.2:

    Примечание: RFU (Reserved for Future Use) - поле, обозначенное этой аббревиатурой зарезервировано для будущего использования и заполняется нулями.

    Как мы видим, последние 8 бит заголовка отличаются. Поле «Length» - это сумма длин полезных данных и поля MIC (Message Integrity Check), находящегося в PDU (если последнее включено).
    Если в версии 4.1 поле «Length» имеет размер 5 бит, то в версии 4.2 это поле размером 8 бит.

    Отсюда несложно вычислить, что поле «Length» в версии 4.1 может содержать значения в промежутке от 0 до 31, а в версии 4.2 в промежутке от 0 до 255. Если из максимальных значений вычесть длину поля MIC (4 октета), то получим, что полезных данных может быть 27 и 251 октет для версии 4.1 и 4.2 соответственно. На самом деле максимальное кол-во данных еще меньше, т.к. в полезной нагрузке находятся еще и служебные данные L2CAP (4 октета) и ATT (3 октета), но это мы рассматривать не будем.

    Таким образом размер передаваемых пользовательских данных увеличился приблизительно в 10 раз. Что же касается скорости, которая, почему-то, увеличилась не в 10 раз, а всего в 2.5 раза, то тут нельзя говорить о пропорциональном увеличении, потому, что все упирается еще и в гарантированность доставки данных, ведь гарантировать доставку 200 байт немного сложнее чем 20-ти.

    2. Возможность подключения к интернету.

    Пожалуй, самое интересное нововведение, из-за которого Bluetooth SIG и объявила, что версия 4.2 делает интернет вещей (IoT) лучше именно благодаря этой возможности.

    Еще в версии 4.1 в L2CAP появился режим «LE Credit Based Flow Control Mode». Этот режим позволяет управлять потоком данных, используя т.н. схему, основанную на кредите. Особенность схемы в том, что она не использует сигнальные пакеты, для обозначения кол-ва передаваемых данных, а запрашивает у другого устройства кредит на определенный объем данных для передачи, тем самым ускоряя процесс передачи. При этом, принимающая сторона каждый раз при получении фрейма, уменьшает счетчик фреймов, и при достижении последнего фрейма может разорвать соединение.

    В списке команд L2CAP появилось 3 новых кода:
    - LE Credit Based Connection request – запрос на соединение по схеме кредита;
    - LE Credit Based Connection response – ответ на соединение по схеме кредита;
    - LE Flow Control Credit – сообщение о возможности получить дополнительные LE-кадры.

    В пакете «LE Credit Based Connection request»


    есть поле «Initial Credits» длиной в 2 октета, указывающее на кол-во LE-фреймов, которое устройство может отправить на уровне L2CAP.

    В ответном пакете «LE Credit Based Connection response»


    в том же поле указано кол-во LE-фреймов, которое может отправить другое устройство, а также в поле «Result» указан результат запроса на соединение. Значение 0x0000 говорит об успехе, остальные значения указывают на ошибку. В частности, значение 0x0004 указывает на отказ в соединении из-за отсутствия ресурсов.

    Таким образом уже в версии 4.1 появилась возможность передачи большого кол-ва данных на уровне L2CAP.
    И вот, практически одновременно с выходом версии 4.2, публикуется:

    • сервис: «IP Support Service» (IPSS) .
    • профиль IPSP (Internet Protocol Support Profile) , который определяет поддержку передачи пакетов IPv6 между устройствами, имеющими BLE.
    Главным требованием профиля для уровня L2CAP является «LE Credit Based Connection» появившееся в версии 4.1, которое, в свою очередь позволяет передавать пакеты с MTU >= 1280 октетов (надеюсь намек на цифру понятен).

    Профиль определяет следующие роли:
    - роль маршрутизатора (Router) – используется для устройств, которые могут маршрутизировать IPv6 пакеты;
    - роль узла (Node) – используется для устройств, которые могу только принимать или отправлять пакеты IPv6; имеют функцию обнаружения сервисов и имеют сервис IPSS, позволяющий маршрутизаторам обнаруживать данное устройство;

    Устройства с ролью маршрутизатора, которым необходимо подключение к другому маршрутизатору могут иметь роль узла.

    Как ни странно, но передача пакетов IPv6 не является частью спецификации профиля, и указывается в IETF RFC «Transmission of IPv6 packets over Bluetooth Low Energy» . В этом документе опредлен еще один интересный момент, а именно то, что при передаче пакетов IPv6 используется стандарт 6LoWPAN - это стандарт взаимодействия по протоколу IPv6 поверх маломощных беспроводных персональных сетей стандарта IEE 802.15.4.

    Посмотрите на рисунок:


    В профиле определено, что IPSS, GATT и ATT используются только для обнаружения сервиса, а GAP используется только для обнаружения устройства и установки соединения.

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

    3. Улучшение конфиденциальности и безопасности.

    Одной из обязанностей менеджера безопасности (Sequrity manager) (SM) является сопряжение двух устройств. В процессе сопряжения создаются ключи, которые затем используются для шифрования связи. Процесс сопряжения состоит из 3-х фаз:
    • обмен информацией о способах сопряжения;
    • генерация краткосрочных ключей (Short Term Key (STK));
    • обмен ключами.
    В версии 4.2 2-я фаза разделилась на 2 части:
    • генерация краткосрочных ключей (Short Term Key (STK)) под названием «LE legacy pairing»
    • генерация долговременных ключей (Long Term Key (LTK)) под названием «LE Secure Connections»
    А 1-я фаза добавилась еще одним способом сопряжения: «Numeric Comparison» который работает только со вторым вариантом 2-й фазы: «LE Secure Connections».

    В связи с этим в криптографическом тулбоксе менеджера безопасности помимо 3-х существующих функций, появилось еще 5 и эти 5 используются только для обслуживания нового процесса сопряжения «LE Secure Connections». Эти функции генерируют:

    • LTK и MacKey;
    • подтверждающие переменные;
    • переменные проверки аутентификации;
    • 6-ти значные числа, используемые для отображения на связываемых устройствах.
    Все функции используют алгоритм шифрования AES-CMAC с 128-ми битным ключом.

    Так вот, если при сопряжении во 2-й фазе по методу «LE legacy pairing» генерировалось 2 ключа:

    • Temporary Key (TK): 128-ми битный временный ключ, используемый для генерации STK;
    • Short Term Key (STK): 128-ми битный временный ключ, используемый для шифрования соединениЯ
    то по методу «LE Secure Connections» генерируется 1 ключ:
    • Long Term Key (LTK): 128-ми битный ключ, используемый для шифрования последующих соединениЙ.
    Результатом этого нововведения мы получили:
    • предотвращение отслеживания, т.к. теперь за счет «Numeric Comparison» есть возможность контролировать возможность подключения к Вашему устройству.
    • улучшение энерго-эффективности, т.к. теперь не требуется дополнительная энергия для повторных генераций ключей при каждом соединении.
    • отраслевой стандарт шифрования для обеспечения конфиденциальных данных.
    Как это ни странно звучит, но за счет улучшения безопасности мы получили улучшение энерго-эффективности.

    4. Есть ли уже возможность пощупать?


    Да, есть.
    NORDIC Semiconductor выпустил «nRF51 IoT SDK» который включает в себя стек, библиотеки, примеры и API для устройств серии nRF51. Сюда входят:

    • чипы nRF51822 и nRF51422;
    • nRF51 DK;
    • nRF51 Dongle;
    • nRF51822 EK.
    По

    Bluetooth 5.0 стал реальностью. По сравнению с Bluetooth 4.0 новая версия имеет вдвое большую пропускную способность, увеличенную в четыре раза дальность действия и целый ряд других улучшений. Рассмотрим преимущества Bluetooth 5.0 над предшественниками, в том числе на примере процессора CC2640R2F от Texas Instruments .

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

    Теперь, когда стали появляться первые устройства с Bluetooth 5, у пользователей и разработчиков справедливо возникают вопросы: какие из заявленных ранее обещаний воплотились в реальность? Насколько выросли радиус действия и скорость передачи данных? Как это отразилось на уровне потребления? Каким образом изменился подход к формированию широковещательных пакетов? Какие были сделаны усовершенствования, направленные на рост помехозащищенности? И, конечно, главный вопрос — существует ли обратная совместимость между Bluetooth 5 и Bluetooth 4? Ответим на эти и некоторые другие вопросы и рассмотрим основные преимущества Bluetooth 5.0 перед предшественниками, в том числе – на примере реального процессора с поддержкой Bluetooth 5.0 производства компании Texas Instruments .

    Начнем обзор Bluetooth 5.0 с ответа на самый часто задаваемый вопрос об обратной совместимости с Bluetooth 4.x

    Обеспечивает ли Bluetooth 5.0 обратную совместимость с Bluetooth 4.x?

    Да, обеспечивает . Bluetooth 5 перенял большинство особенностей и расширений Bluetooth 4.1 и 4.2. Например, устройства Bluetooth 5 сохраняют все улучшения Bluetooth 4.2 в области повышения защищенности данных и поддерживают расширение LE Data Length Extension. Стоит напомнить, что благодаря LE Data Length Extension начиная с Bluetooth 4.2 размер пакета данных (packet data unit, PDU) при установленном соединении может быть увеличен с 27 до 251 байта, что позволяет поднять скорость обмена данными в 2,5 раза.

    Из-за большого количества различий между версиями протокола сохраняется традиционный механизм согласования параметров между устройствами при установлении соединений. Это значит, что перед тем как начать обмениваться данными, устройства «знакомятся» и определяют максимальную частоту передачи данных, длину сообщений и так далее. При этом по умолчанию используются параметры Bluetooth 4.0. Переход к параметрам Bluetooth 5 происходит только если в процессе согласования оказывается, что оба устройства поддерживают более позднюю версию протокола.

    Говоря об инструментах, которые уже сейчас доступны для разработчиков, стоит отметить новый процессор CC2640R2F и бесплатный стек BLE5-Stack от Texas Instruments. К радости разработчиков, BLE5-Stack основан на предыдущей версии BLE-Stack, и изменения в его использовании коснулись только новых особенностей Bluetooth 5.0.

    Как увеличилась скорость передачи данных в Bluetooth 5?

    Bluetooth 5 использует беспроводное соединение с физической скоростью передачи данных до 2 Мбит/с, что в два раза выше, чем у Bluetooth 4.х . Здесь стоит отметить, что эффективная скорость обмена данными зависит не только от физической пропускной способности канала передачи, но и от соотношения служебной и полезной информации в пакете, а также от сопутствующих «накладных» расходов, например, потери времени между пакетами (таблица 1).

    Таблица 1. Скорость обмена данными для различных версий Bluetooth

    В версиях Bluetooth 4.0 и 4.1 физическая пропускная способность канала составляла 1 Мбит/с, что при длине пакета данных PDU в 27 байт позволяло достигать скорости обмена до 305 кбит/с. В версии Bluetooth 4.2 появилось расширение LE Data Length Extension. Благодаря ему после установления соединения между устройствами появлялась возможность увеличить длину пакета до 251 байта, что приводило к росту скорости обмена данными в 2,5 раза – до 780 кбит/с.

    В версии Bluetooth 5 сохранилась поддержка LE Data Length Extension, что совместно с ростом физической пропускной способности до 2 Мбит/с позволяет достигать скорости обмена данными до 1,4 Мбит/с.

    Как показывает практика, такое ускорение передачи данных не является пределом. Например, беспроводной микроконтроллер CC2640R2F способен работать со скоростями вплоть до 5 Мбит/с.

    Стоит сказать и о распространенном заблуждении, что рост пропускной способности до 2 Мбит/с был достигнут за счет сокращения радиуса действия. Конечно, физически микросхема приемопередатчика (PHY) при работе с частотой 2 Мбит/с имеет на 5 дБм меньшую чувствительность, чем при работе с частотой 1 Мбит/с. Однако кроме чувствительности есть и другие факторы, которые способствуют увеличению радиуса действия, например, переход к кодированию данных. По этой причине при прочих равных условиях Bluetooth 5 оказывается более надежным и имеет больший радиус действия по сравнению с Bluetooth 4.0. Подробно об этом рассказывается в одном из следующих разделов статьи.

    Как активировать высокоскоростной режим передачи данных в Bluetooth 5?

    При установлении соединения между двумя устройствами Bluetooth изначально используются настройки Bluetooth 4.0 . Это значит, что на первом этапе устройства обмениваются данными на скорости 1 Мбит/с. После установления соединения мастер с поддержкой Bluetooth 5.0 может начать процедуру PHY Update Procedure, цель которой — установление максимальной скорости 2 Мбит/с. Эта операция будет успешной, только если ведомый также поддерживает Bluetooth 5.0. В противном случае скорость остается на уровне 1 Мбит/с.

    Для разработчиков, ранее использовавших BLE-Stack от Texas Instruments, хорошей новостью станет то, что для выполнения приведенной процедуры в новом стеке BLE5-Stack выделена одна единственная функция HCI_LE_SetDefaultPhyCmd(). Таким образом при переходе на Bluetooth 5.0 у пользователей продуктов TI первоначальная инициализация не вызовет проблем. Также для разработчиков будет полезен пример, выложенный на портале GitHub , который позволяет оценить работу двух микроконтроллеров CC2640R2F, работающих в составе CC2640R2 LaunchPads в режимах High Speed и Long Range.

    Как увеличился радиус действия Bluetooth 5?

    В спецификации Bluetooth 5.0 говорится об увеличении радиуса действия в четыре раза по сравнению с Bluetooth 4.0. Это достаточно тонкий вопрос, на котором стоит остановиться подробнее.

    Во-первых, понятие «в четыре раза» является относительным и не привязывается к конкретному радиусу действия в метрах или километрах. Дело в том, что дальность радиопередачи сильно зависит от целого ряда факторов: состояния окружающей среды, уровня помех, числа одновременно передающих устройств и так далее. В итоге ни один производитель, а также и сам разработчик стандарта Bluetooth SIG, конкретных значений не приводит. Увеличение радиуса действия оценивается в сравнении с Bluetooth 4.0.

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

    Бюджет радиоканала = мощность T X (дБм) – чувствительность R X (дБм)

    Для Bluetooth 4.0 стандартная чувствительность приемника составляет -93 дБм. Если полагать мощность передатчика 0 дБм, то бюджет составляет 93 дБ.

    Увеличение радиуса действия в четыре раза потребует увеличения бюджета на 12 дБ, что дает значение 105 дБ. Как же предполагается достигать этого значения? Есть два пути:

    • увеличение мощности передатчиков;
    • увеличение чувствительности приемников.

    Если идти по первому пути и увеличивать мощность передатчика, это неизбежно вызовет рост потребления. Например, для CC2640R2F переход на выходную мощность 5 дБм приводит к росту тока потребления до 9 мА (рисунок 1). При мощности 10 дБм ток увеличится до 20 мА. Такой подход не выглядит привлекательным для большинства беспроводных устройств с батарейным питанием и не всегда подходит для IoT, а ведь именно на эту область в первую очередь и ориентировался Bluetooth 5.0. По этой причине второе решение выглядит более предпочтительным.

    Для увеличения чувствительности приемника предлагается два способа:

    • снижение скорости передачи;
    • использование кодирования данных Coded PHY.

    Уменьшение скорости передачи данных в восемь раз теоретически повышает чувствительность приемника на 9 дБ. Таким образом до заветного значения не хватает всего 3 дБ.

    Необходимые 3 дБ удается получить с помощью дополнительного кодирования Coded PHY. Ранее в версиях Bluetooth 4.х кодирование битов было однозначным 1:1. Это значит, что поток данных напрямую направлялся на дифференциальный демодулятор. В Bluetooth 5.0 при использовании Coded PHY существует два дополнительных формата передачи:

    • с кодированием 1:2, при котором каждому биту данных ставятся в соответствие два бита в потоке радиоданных. Например, логическая «1» представляется как последовательность «10». При этом физическая скорость остается равной 1 Мбит/с, а реальная скорость передачи данных падает до 500 кбит/с.
    • С кодированием 1:4. Например, логическая «1» представляется последовательностью «1100». Скорость передачи данных при этом уменьшается до 125 кбит/с.

    Описанный подход называется Forward Error Correction (FEC) и позволяет обнаруживать и исправлять ошибки на приемной стороне, а не запрашивать повторную передачу пакетов, как это было в Bluetooth 4.0.

    На бумаге все выглядит неплохо. Остается только выяснить, насколько эти теоретические выкладки соответствуют реальности. В качестве примера возьмем все тот же микроконтроллер CC2640R2F. Благодаря различным улучшениям и новым режимам модуляции Bluetooth 5.0, приемопередатчик этого процессора имеет чувствительность -97 дБм при скорости обмена 1 Мбит/с и -103 дБм при использовании Coded PHY и скорости обмена 125 кбит/с. Таким образом в последнем случае до уровня 105 дБ не хватает всего 2 дБм.

    Для оценки радиуса действия CC2640R2F инженеры из Texas Instruments провели полевой эксперимент в городе Осло. При этом с точки зрения уровня шумов окружающую среду в данном опыте нельзя назвать «дружелюбной», так как в непосредственной близости находилась деловая часть города.

    Для получения бюджета мощности больше 105 дБ было решено увеличить мощность передатчика до 5 дБм. Это позволило достичь внушительного итогового значения в 108 дБм (рисунок 2). При выполнении эксперимента дальность действия составила 1,6 км, что является весьма впечатляющим результатом, особенно – если учесть минимальный уровень потребления радиопередатчиков.

    Как изменился подход к широковещательным сообщениям Bluetooth 5?

    Ранее в Bluetooth 4.x для установления соединений между устройствами использовалось три выделенных канала данных (37, 38, 39). С их помощью устройства находили друг друга и обменивались служебной информацией. По ним же можно было передавать широковещательные пакеты данных. Такой подход имеет недостатки:

    • при большом количестве активных передатчиков эти каналы можно попросту перегрузить;
    • все больше устройств использует широковещательные посылки без установления соединения «точка-точка». Это особенно важно для интернета вещей IoT;
    • новая система кодирования Coded PHY потребует в восемь раз больше времени на установление соединения, что дополнительно будет нагружать широковещательные каналы.

    Чтобы решить эти проблемы в Bluetooth 5.0, было решено перейти к схеме, при которой данные передаются по всем 37 каналам данных, а служебные каналы 37, 38, 39 используются для передачи указателей. Указатель отсылает к тому каналу, по которому будет производиться передача широковещательного сообщения. При этом данные передаются всего лишь один раз. В итоге удается значительно разгрузить служебные каналы и устранить это узкое место.

    Также стоит отметить, что теперь длина данных широковещательного пакета может достигать 255 байт вместо 6…37 байт PDU в Bluetooth 4.x. Это чрезвычайно важно для приложений IoT, так как позволяет минимизировать накладные расходы на передачу и обойтись без установления соединений, а значит и сократить уровень потребления.

    Поддерживает ли Bluetooth 5 Mesh-сети?

    Решения от Texas Instruments для Bluetooth 5

    Одним из самых первых микроконтроллеров с Bluetooth 5.0 стал высокопроизводительный процессор CC2640R2F производства компании Texas Instruments.

    CC2640R2F построен на базе современного 32-битного ядра ARM Cortex-M3 с рабочей частотой до 48 МГц. Работой радиопередатчика управляет второе 32-битное ядро ARM Cortex-M0 (рисунок 3). Кроме того, CC2640R2F отличается богатой цифровой и аналоговой периферией.

    Достоинством микроконтроллера CC2640R2F также является малый уровень потребления (таблица 2). Это относится ко всем режимам работы. Например, в активном режиме при приеме данных по радиоканалу потребление составляет 5,9 мА, а при передаче – 6,1 мА (0 дБм) или 9,1 мА (5 дБм). При переходе в спящий режим питающий ток и вовсе падает до 1 мкА.

    Сочетание трех таких важных качеств как поддержка Bluetooth 5.0, малое потребление и высокая пиковая производительность делает CC2640R2F весьма интересным решением для интернета вещей. При этом с помощью данного микроконтроллера можно создавать весь спектр IoT-устройств: автономные датчики, работающие несколько лет от одной батарейки , мосты между дополнительным управляющим процессором и каналом Bluetooth 5.0, сложные приложения, требующие высокой вычислительной мощности.

    Таблица 2. Потребление беспроводного микроконтроллера CC 2640 R 2 F с поддержкой Bluetooth 5

    Режим работы Параметр Значение (при Vcc = 3 В)
    Активные вычисления мкА/МГц ARM® Cortex®-M3 61 мкА/МГц
    Coremark/мА 48,5
    Coremark при частоте 48 МГц 142
    Радиообмен Пиковый ток при приеме, мА 5,9
    Пиковый ток при передаче, мА 6,1
    Режим сна Контроллер датчиков, мкА/МГц 8,2
    Режим Sleep mode с включенным RTC и сохранением памяти, мА 1

    Для быстрого начала работы с CC2640R2F компания Texas Instruments подготовила традиционный отладочный набор (рисунок 4). С помощью пары таких устройств можно оценить быстродействие и дальность радиопередачи по Bluetooth 5.0. Для этого можно воспользоваться готовыми примерами или создать собственное приложение на базе бесплатного протокола BLE 5 stack 1.0 (www.ti.com/ble).

    Заключение

    Новая версия протокола Bluetooth 5.0 ориентирована на максимальное соответствие потребностям Интернета вещей (IoT). По сравнению с версией Bluetooth 4.0, она имеет целый ряд качественных улучшений:

    • скорость передачи данных увеличилась в два раза и достигла 2 Мбит/с;
    • дальность передачи возросла в четыре раза за счет кодирования данных Coded PHY и Forward Error Correction (FEC);
    • пропускная способность широковещательных сообщений выросла в 8 раз.

    Кроме того, Bluetooth 5.0 обеспечивает обратную совместимость с устройствами Bluetooth 4.x, а также поддерживает большинство расширений поздних версий протокола.

    Оценить возможности Bluetooth 5.0 можно уже сейчас с помощью инструментов производства Texas Instruments. Компания выпускает высокопроизводительный и малопотребляющий микроконтроллер CC2640R2F, предоставляет бесплатный стек BLE 5 stack 1.0 и множество готовых примеров для отладочного набора LAUNCHXL-CC2640R2.

    Литература

    1. Bluetooth Core Specifcation 5.0 FAQ. 2016. Bluetooth SIG.