Как стать автором
Обновить

Bluetooth LE не так уж и страшен, или Как улучшить пользовательский опыт без особых усилий

Время на прочтение13 мин
Количество просмотров25K
Всего голосов 33: ↑32 и ↓1+31
Комментарии16

Комментарии 16

«Улучшить пользовательский опыт» — это по английски.
По-русски «лучше удовлетворить пользователя».

Такое себе замечание, учитывая «лучше удовлетворить».
Большое спасибо за подробную статью, мне как раз в скором времени эта информация очень пригодится.
Чем пользуетесь при разработке под Android? Или такой функциональности там не предусмотрено по причине того, что мало какие устройства поддерживают peripheral?
Не думаю что это проблема, даже под React Native существует минимум 2 библиотеки для работы с BLE, единственное что проблемы могут быть в восстановлении состояния при выходе из фонового режима. Остальное работает как часики. И самое главное что поддерживается запрос на увеличение блока MTU, а это снимает ограничения на объем потока информации
Bluetooth LE используется во всех устройствах умного дома

Нет.


Конечно, нет.


Мало кто использует Bluetooth в умном доме, слишком много ограничений. ZigBee, Z-Wave, WiFi (для устройств в внешним питанием) — вот это оно.

слишком много ограничений

А можно по-конкретнее, для несведущих?
  • 100 м даже для class 1 устройств (= 1 стенка в реальном доме), для class 2 устройств — только внутри комнаты
  • одноранговая сеть без mesh или маршрутизаторов => нельзя продолжить дальше этих 100 м. В Bluetooth 5 появился mesh, лет через 5 мы его увидим в работе (не факт)
  • низкая пропускная способность — никакой передачи голоса / видео или потоковых данных
  • обычно нет нормальной авторизации / спаривания, с безопасностью от этого всё плохо
  • самая неудобная для радиосвязи частота (отчего её и отдали гражданским)
  • нет IP, нет интероперабельности с интернетом, нужен доп. шлюз.
  • нет стандартов сервисов/устройств, как ZigBee Home Automation или Z-Wave, устройства не интероперабельны даже друг с другом (если только не от одного поставщика)
  • и, принципиально, bluetooth делается как personal area network — сетью устройств, окружающих одного человека, а не разбросанных по разным углам двухэтажного коттеджа с гаражом.
А почему пишут про какие то километры в стандарте BLE 5.0?
Зачем в датчиках функция передачи голоса?
У xiaomi есть набор датчиков и шлюзов с BLE (4.0-4.2) которые функционируют в составе mihome, и вроде все это интегрируется «Умный дом» Apple (homekit). А недавно новость была что на базе я.алисы можно будет управлять mihome.
Зачем в датчиках функция передачи голоса?

Популярная категория устройств умного дома — камеры наблюдения (и видеоглазки с видеонянями). Для них не подходит.


А почему пишут про какие то километры в стандарте BLE 5.0?


В Bluetooth 5 появился mesh, лет через 5 мы его увидим в работе (не факт)

Когда через каждые 5 метров стоит устройство с Bluetooth 5 + Mesh, вставленное в розетку, и ретранслирует сигнал, можно километры, да. Вот только вы когда-нибудь видели такое устройство? И ещё долго не увидите.


Датчики Xiaomi работают через ZigBee. У них есть пара Bluetooth-устройств, но они не работают нормально со шлюзом, только напрямую с телефоном. С Homekit, соответственно, оно работает через проприетарный шлюз от Xiaomi. Алиса тоже работает по проприетарному протоколу через проприетарный шлюз и через кучу чужих компьютеров в России и Китае.

Камеры с bluetooth? Обычно они все с питанием и wifi.
У меня дома датчики температуры ble от xiaomi нормально работают через лампу-шлюз ble-wifi.

Появился режим Long Range, который позволяет получить дальность около километра. При существенной потери скорости, конечно же.
Согласен, не во всех — во многих.
Т.к. он сильно стандартизирован и есть почти в каждом персональном устройстве, поэтому при создании своего устройства умного дома тебе не нужно делать какое-то дополнительное устройство для управления им и во многих случая даже универсальный софт подходит.
ZigBee хороший протокол, но к сожалению сильно меньше используется.

А ещё, правильно понимаю, что если на телефоне установлен (и запущен в фоне) ваш клиент-банк, то кто угодно может слить с него фотографию владельца с привязкой к Bluetooth адресу?

Конечно нет, тут для примера упрощен протокол взаимодействия.
В текущей разработке, фотография не передается если вы не разрешили перевод или данного человека нету в вашей контактной книге.
почему по LE нельзя было просто передавть id клиента, а фотографию загружать с инета?
И в догонку, откуда вообще у вас фотографии клиентов?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий