Рынок маячков: обзор beacon-сервисов в России. Для получения дополнительной информации

Ключи, телефон, рюкзак, футляр для очков, кошелек, визитница – в нашей жизни множество мелких вещиц, облегчающих жизнь и теряющихся в самое неподходящее время. Сколько раз, собираясь утром на работу, вы истерично метались по дому, пытаясь вспомнить, куда же накануне бросили ключи от машины. А случалось ли вам, придя домой вечером, налить чашечку горячего чая и усевшись в кресло в предвкушении спокойного, расслабляющего телепросмотра… не найти пульта от телевизора. Не говоря уже о вечно пытающихся сбежать котов, собак, и, чего уж там скрывать, маленьких, любопытных детей. Больше этого не случится никогда. В нашем магазине можно найти различные модели поисковых брелоков (маячков, меток), купить миниатюрные устройства и облегчить жизнь себе и близким.

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

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

Продажа поисковых брелков, радиомаячков осуществляется в виде комплекта из приемно-считывающего устройства и радиометки или радио-стикеров, синхронизируемых с мобильным устройством. Благодаря удобным способам фиксации, метку можно прикрепить практически на любую поверхность. Поисковые бытовые системы имеют широчайший диапазон применения – в промышленности, на складах, в медицине, библиотеках, для отслеживания домашних животных, багажа, локализации самых разных объектов online. Прочтите описание поисковых брелков, радиомаячков, отзывы покупателей, прежде чем сделать окончательный выбор.

В поисковую метку, брелок, радиомаячок интегрируется модуль беспроводной связи. Чаще всего производители внедряют в наклейку энергосберегающий модуль Bluetooth стандарта Bluetooth Low Energy версии 4.0. Радиомаячок сопрягается с мобильным гаджетом и определяется через интерфейс приложения.

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

Если метка находится в пределах «видимости» приемника, приложение выводит сведение о местоположении потеряшки. В программе могут быть реализованы аудио подсказки для обнаружения метки, которые работают по принципу усиления или уменьшения громкости сигнала в зависимости от приближения к радиомаячку. По аналогичному принципу работают визуальные индикаторы, которые становятся более яркими и наполненными, если пользователь движется в сторону метки и, наоборот, гаснут и уменьшаются, если ищущий отдаляется от цели. Более всего подобная технология напоминает детскую игру в «холодно-жарко». На нашем сайте представлены бюджетные модели поисковых брелоков и радиомаячков, купить которые можно в различных вариантах исполнения и комплектации.

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

Современные поисковые стикеры обладают достоинствами, свойственными промышленным поисковым маякам, но при этом стоимостью, доступной рядовому потребителю. Последние модели поисковых комплектов предлагают системы, в которых местоположение метки определяется с помощью сотовой связи. Для такого стикера дальность удаления от приемника не является приоритетной – метка определится в любом месте, где действует сигнал вышки сотовой связи.

Поисковые брелоки и радиомаячки со встроенным модулем GPS, несомненно, оценят владельцы домашних питомцев. Такой трекер можно прикрепить к велосипеду, рюкзаку, скутеру и другим ценным предметам. Владельцам авто придутся по душе радиомаячки, работающие через GSM-сеть и поддерживающие протокол GPRS. В нашем магазине осуществляются продажи поисковых брелоков и радиомаячков мультифункционального назначения, совмещающих возможности поискового стикера, зарядного устройства, и флэшки.

Зачем биконы нужны вашему бизнесу и куда за ними идти

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

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

Достучаться до клиента в офлайне способны биконы (от англ. beacon) - миниатюрные маячки, которые связываются с телефонами покупателей в радиусе до 50 метров. Так заведение может быстро узнать своего завсегдатая, посчитать посетителей, уведомить об акциях и скидках, собрать данные о передвижении и частоте посещений.

Также beacon-системы можно использовать для:

  • бесконтактной оплаты счета (в США такую возможность внедрил PayPal);
  • контроля обслуживания в ресторане;
  • создания тепловых карт магазина;
  • бесконтактной регистрации и нетворкинга на мероприятиях;
  • поиска ключей, забытых вещей или багажа в аэропорту;
  • навигации внутри крупных помещений;
  • навигации для слепых;
  • интерактивных экскурсий по музею или по городу (альтернатива QR-кодам);
  • контроля посещаемости в школах и университетах;
  • отслеживания городских пассажиропотоков;
  • создания геолокационных игр.

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

Как это работает

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

Технология

Геолокационные маяки взаимодействуют с мобильными устройствами по технологии Bluetooth Low Energy (BLE). Это четвертый стандарт Bluetooth, который разработала Nokia в 2006 году. Сначала ее назвали Wibree, потом - Bluetooth Smart, потом - Bluetooth Low Energy. Финальное название подчеркивает экономный расход энергии - до 100 раз меньше обычного Bluetooth, в 1000 раз меньше Wi-Fi.

В 2013 году корпорация Apple выпустила на базе технологии BLE стандарт iBeacon и представила ее маркетинговые возможности широкой публике. В середине 2015 года Google выкатила открытый протокол для Bluetooth-маячков Eddystone, который работает и на iOS, и на Android. На рынке есть и другие альтернативы iBeacon, но решение Apple пока лидирует.

Плюсы биконов Минусы биконов
  • Легкая установка без проводов (маячки размером со спичечный коробок просто закрепляются на стенах или мебели)
  • Один маячок стоит $10-30 (если нужно только уведомлять посетителя при входе, то хватит одного)
  • Батарейки хватает на срок до 2-3 лет (а некоторые биконы питаются от розетки или USB)
  • Bluetooth 4.0 практически не разряжает батарею телефона
  • Избавляет от возни с печатью листовок и купонов, большая часть которых всегда оказывается в мусорке
  • Работает только с клиентами, заранее установившими приложение заведения
  • На их смартфонах должен быть включен Bluetooth*
  • Есть риск по неопытности заспамить и отвратить от себя лояльных клиентов
  • На iOS уведомления могут приходить с опозданием (если телефон лежит в кармане)

*Говорят, Bluetooth всегда работает лишь на 15-20% российских гаджетов - это пользователи умных часов, браслетов и гарнитур. Впрочем, ходят слухи, что в iPhone 7 Bluetooth будет включен всегда, ведь в нем не будет разъема для наушников.

Интегрировать технологию в приложение легко, сложно мотивировать людей скачивать фирменные приложения и держать Bluetooth всегда включенным. Если биконы войдут в широкий обиход и продемонстрируют свою практическую пользу, люди привыкнут к этому, как в свое время привыкли носить с собой мобильники и держать включенным wi-fi.

Рынок биконов

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

С другой стороны, beacon-устройства представляют собой частный случай indoor-навигации - геолокации внутри зданий, где плохо работает традиционная спутниковая система навигации. К 2020 году мировой рынок indoor-навигации составит $10 млрд.

Indoor-навигация, в свою очередь, входит в огромный рынок Location-based services (LBS) - сервисов, основанных на понимании местоположения пользователей (карты, погода, игры, знакомства). В 2015 году глобальный рынок LBS составлял $11,4 млрд, а к 2020 году вырастет до $55 млрд.

Рынок маячков делится на производителей передатчиков (BlueCats, BlueSense, Estimote, Gelo, Glimworm, Gimbal, Kontakt, Sensorberg, Sonic Notify и др.) и разработчиков приложений (Local Social, Indoor Atlas, Localytics, Urban Airship и др).

Модели beacon-устройств

По данным ABI Research, сейчас в мире работает 4 млн биконов, а к 2020 году их будет 400 млн.

Аналитики прогнозируют, что в этом году beacon-сервисы принесут крупнейшим американским офлайн-ритейлерам $4 млрд дополнительной прибыли, а в 2017 году - $44 млрд.

Российский рынок геоконтекстной рекламы и indoor-навигации только-только начинает развиваться. Как правило, это разработчики мобильных приложений, которые предлагают заведениям установку биконов как дополнительную опцию к приложению для лояльных клиентов.

Российские beacon-сервисы

Notissimus - студия мобильной разработки. Она активно внедряет iBeacon в свои сервисы - дейтинг для знакомств в заведениях Tusam, геолокационную программу лояльности Letmeget.ru, товарный агрегатор Tapki.com (сообщает о скидках в привязке к расположению пользователя). Notissimus развернула систему BLE-маячков в сети магазинов Love Republic и сети Obuv.com, а сейчас устанавливает биконы для кофеен Coffeeshop Company. Один радиопередатчик стоит около 3 тысяч рублей, разработка фирменного приложения - от 300 до 350 тысяч рублей.

Beaconka - проект компании Complex Systems. В сентябре она напополам с Фондом Бортника вложила в него 9 млн рублей. Платформа предназначена для офлайн-магазинов. Она позволяет распознавать клиентов, отслеживать их действия, отправлять им персонализированные предложения, а в перспективе - считать покупателей и производить бесконтактные платежи. Разворачивание beacon-системы (два маячка и приложение) будет стоить клиенту от 70 до 270 тысяч рублей в зависимости от пакета услуг. Первый клиент компании - магазин «Зеленая околица» из подмосковного Раменского. Beaconka разработала для него приложения с программой лояльности и скоро собирается установить в магазине маячки.

Getsy - пожалуй, самый медийный отечественный проект в сфере биконов. Себастьян Блан, Фил Дробышев и Максим Перцовский запустили этот стартап в 2013 году. Сначала он развивался как мобильная программа лояльности (получив на это дело $150 тысяч от фонда IMI.VC), потом переключился на маячки. В 2014 году он установил 10 биконов в книжном магазине «Республика» на Тверской, в 2015 году - медиагид и 20 маячков в Мультимедиа Арт Музее Москвы (МАММ). Также Getsy пробовал сотрудничать с НП «ГЛОНАСС» - демонстрировал на его стенде возможности маячков в городской среде. Сейчас технологии Getsy развивает студия мобильной разработки Phobos.

Ru-Beacon - проект компании Empatika. В 2013 году она победила на хакатоне PayPal, разработав приложение для сбора пожертвований с помощью биконов. Призовые $100 тысяч пошли на перестройку сервиса под b2b. Технологию iBeacon поддерживают известные приложения Empatika - App in the air (оно ориентирует по маячкам в семи американских аэропортах), CityGuru и Restagram. Компания запускала пилотные проекты с сетью Starbucks Russia, образовательным центром «Цифровой октябрь» и с разработчиком ресторанного софта IIKO, а также внедряла систему маячков в екатеринбургском аэропорту.

Navigine разрабатывает точные геолокационные сервисы для навигации внутри помещений, геомаркетинга и аналитики перемещений людей и предметов. В приложении пользователь видит свое местоположение с точностью 1-2 метра и может строить маршруты - прямо как в Google Maps. Компания развернула систему точной навигации на базе 20 маячков в главном здании МГУ, на форумах «Навитех 2014» (в партнерстве с компанией Getsy) и SAP Forum 2015, реализовала пилотные проекты в Шереметьево, аэропорту Дубая и Московском метрополитене. Navigine работает с iBeacon, Wi-Fi и другими технологиями indoor-навигации. В 2014 году компания привлекла $200 тысяч от Starta Capital, в 2015 году - еще $200 тысяч от AYR Ventures.

Indoors Navigation разворачивает системы внутренней навигации в помещениях - в торговых центрах, на выставках, в музеях, аэропортах и вокзалах. Компания сама производит маячки, монтирует системы, разрабатывает мобильные приложения и сопровождает работу проектов. Их фирменные биконы с уникальным алгоритмом шифрования позволяют избежать несанкционированного использования и защитить инвестиции в систему. Indoors Navigation установила около 50 маячков для навигации в здании DI Telegraph. Также система распознает и автоматически открывает двери для сотрудников компании Dream Industries.

iBecom разрабатывает и производит BLE-маячки, платформы для навигации помещениях и геомаркетинга. Продукты компании поддерживают стандарты iBeacon и Eddystone. iBecom продает свои маячки в основном разработчикам бикон-сервисов. Единственный публичный кейс - внедрение системы навигации в здании дизайн-завода Flacon. Компания установила там порядка 100 маячков.

Neklo - белорусская ИТ-компания продает маячки известного польского производителя Kontakt.io и разрабатываем софт для iBeacon. Владельцам бизнеса в сфере розничной торговли они продают готовое решение - программно-аппаратный комплекс Beacon Smart Store. На сайте описаны реализованные проекты для магазина одежды, учета рабочего времени сотрудников, автоматизации пропуска машин на автостоянку, геолокационной игры, интерактивной экскурсии по городу и организации конференции, но конкретные заказчики не указаны.

Shopster комбинирует технологию iBeacon с Wi-Fi. Они сами собирают роутеры с маячками, которые могут определить местоположение человека с точностью до метра. Это позволяет отследить метрики офлайн-бизнеса - количество уникальных посетителей, их лояльность и вовлеченность, а также сориентировать людей внутри крупных помещений. В апреле Shopster развернул геолокационную сеть с биконами в московском торговом центре «Афимолл Сити».

Mobecan - еще одна платформа для геоситуационного маркетинга с помощью iBeacon. Известна тем, что разработала навигационное приложение для участников конференций РИФ+КИБ 2014 и РИФ+КИБ 2015. В 2014 году приложение скачали 2334 человека, оно отправило 3220 push-уведомлений и привело 601 человека в заданное место. Также компания установила маячки в нескольких московских и питерских ресторанах и магазинах.


Если вы знаете другие компании, которые внедряют Bluetooth-маячки в России, дополняйте список в комментариях.

Нашли опечатку? Выделите текст и нажмите Ctrl + Enter

Stick-n-Find – относительная молодая компания из Флориды (США), называющая себя мировым лидером в разработке и производстве Bluetooth low energy (BLE) технологий, а в частности – миниатюрных поисковых маяков и программного обеспечения к ним. Компания была основана в 2004 году, однако в интернете есть информация, что ее серьезные подвижки с маяками начались немногим больше двух лет назад, когда на популярной краудфандинговой площадке Indiegogo закончилась кампания по сбору средств , причем закончилась очень успешно, с превышением минимального бюджета в $70 000 более чем в 10 раз.

Итак, что предлагает Stick-n-Find? Суть сводится к размещению на личных вещах, местоположение которых нужно контролировать (ключи, документы, сумки, пульты ДУ и проч.) тех самых миниатюрных маяков и установки из App Store или Google Play одноименных приложений на смартфон. Далее такая связка маяк-смартфон позволяет контролировать расстояние до маяков и пользоваться разными видами оповещений на смартфоне.

Кратко теория выглядит так, подробности – в обзоре ниже.

Внешний вид, технические характеристики

Поисковые маяки Stick-n-Find поставляются комплектом по 2, 4, 6, 10 или 20 шт., цветовое оформление также разное. В небольшой коробочке кроме них находится определенное количество пластиковых брелоков по форме напоминающих медиаторы для музыкальных инструментов.

Поисковый маяк представляет собой Bluetooth-устройство в миниатюрном пластиковом корпусе, похожим монету или «таблетку» от домофона. Размеры устройства составляют 24х4 мм, масса – около 5 г.

На одной из сторон маяка (пусть будет аверсом) за вырезами в пластике видны металлические элементы антенны, реверс «таблетки» снабжен фирменным клейким слоем 3M VHB, адгезивные свойства которого, кстати, усиливаются со временем (согласно инструкции за 1 час обеспечивается 60 % сцепления, за 12 часов 80 %, за 24 часа – 100 %).

Ребро корпуса маяка составное, как бутерброд – кольца из непрозрачного пластика прикрывают среднее прозрачное кольцо, благодаря чему, в том числе, возможна реализация в «таблетке» светодиодной подсветки.

Питается вся начинка от аккумулятора CR2016, производитель гарантирует от 7 до 12 месяцев автономной работы устройства от одной батарейки (разбежка зависит от выбранного режима инициализации маяка). Замена батареи представляется, субъективно, довольно трудоемким процессом, если нет цели, конечно, разворотить и так не сильно прочный пластиковый корпус.

Основные технические характеристики поискового маяка приведены в таблице:

Параметр

Значение

Максимальный радиус действия

Bluetooth, спецификация Bluetooth low energy (BLE) *

Диапазон температур, о С.

10 – +65 о С

ОС смартфона

Версия Bluetooth смартфона

не ниже 4,0

*– некоторыеотличия характеристик BLE от классического Bluetooth:

Параметр

Bluetooth

Bluetooth low energy

Максимальный радиус действия

Скорость передачи данных

Пропускная способность

Общее время передачи данных

Максимальный потребляемый ток

< 20 мА (макс. 15 мА при работе от батареи)

В работе, функциональность ПО

Для работы в связке с маяками был использован смартфон Lenovo P90 с последней версией ОС Android. В Google Play при поиске по имени Stick-n-Find обнаруживаются два приложения: Stick-n-Find Android и Stick-n-Find BeaconMaker скачивается и устанавливается первое.

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

Приложение Stick - n - Find Android русифицировано, представляет собой оболочку с пятью вкладками: Начать, Радар, Карта, Оповещения, Настройки .

Для полноты возможностей работы с маяками стоит создать и активировать учетную запись. Тем самым станет доступна регистрация маяков и некоторые дополнительные возможности. Базовые функции, однако, доступны и без «учетки».

Подключение маяков начинается с кнопки Синхронизировать новые наклейки во вкладке Начать или Настройки. Важный момент – во время подключения голубая полоса справа от названия маячка означает не «прогресс бар», а уровень сигнала. Стоит просто «тапнуть» и маяк подключен. Каждому маяку можно задать индивидуальное имя: «ключи», «записная книжка» и так далее.

После синхронизации имя маяка становится доступным по кнопке Где моя наклейка? вкладки Начать . Тап активирует поиск, в случае успеха приложение переходит к следующей вкладке.

Радар – основная вкладка приложения. Именно с ней завязано основное взаимодействие с маяками: можно оценить расстояние (не направление!) до маяка, активировать его поиск (устройство отзывается светодиодной подсветкой и мелодией), оценить температуру, переключиться на другой маячок.

Здесь выявились и первые помарки. Так, переключение между маяками часто занимало до 15-30 с, когда хочется делать это мгновенно. Кроме того, показания температуры в данных экземплярах не соответствовали действительности и обновлялись по собственному желанию, когда вздумается.

Еще важный момент – на вкладке доступна кнопка Зарегистрировать наклейку (понятно, должна быть активирована учетная запись и присутствовать доступ в интернет).

После регистрации по кнопке Управление зарегистрированными наклейками вкладки Начать (еще минус – метание по вкладкам вперед-назад) также становится доступным имя маяка и некоторые дополнительные функции.

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

Вкладка Карта оказалась самой бесполезной: несмотря на «танцы с бубнами» –регистрации маяков, обновление различных сервисов и конфигурирование настроек смартфона увидеть отображение маяков на карте так и не получилось.

Вкладка Оповещения . Здесь на каждый подключенный маяк доступны два типа оповещения:

- Поводок – активация тревожного сигнала на смартфоне при удалении от маяка;

- В зоне – активация тревожного сигнала на смартфоне при приближении к маяку.

Граничное значение в обоих случаях – радиус действия BLE – 45 м в теории, 5-15 метров на практике. Субъективное замечание разработчикам – уменьшить минимальный порог времени отключения поводка .

Вкладка Настройки ничем особым не выделяется.

Примечательна лишь кнопка Помощь/ЧаВо с подробным описанием устройства, принципов работы и объемным разделом T roubleshooting (все сводится к проблемам отсутствия или неуверенной связи). Последний факт огорчает и радует одновременно – за качество и обратную связь.

Заключение

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

P.S. второе приложение Stick - n - Find BeaconMaker в Google Play возможно понравится специалистам – присутствуют некоторые опции конфигурирования маяков.

Если перед вами поставлена задача спроектировать решение на базе устройств, питающихся от одной батарейки, собирающих информацию в течении многих лет и передающих ее по каналу Bluetooth Low Energy, то самое логичное решение – обратиться к опыту компании Texas Instruments, включающему аппаратные и программные решения и средства разработки.

Под «маячками» в этой статье подразумеваются миниатюрные радиопередатчики на основе технологии Bluetooth Low Energy с батарейным питанием, которые периодически отправляют данные в эфир. Давайте детально рассмотрим наиболее важные аспекты, которые нужно учитывать при проектировании маячков. С использованием BLE-стека Texas Instruments разработка маячков происходит простым и интуитивно понятным способом.

Что такое Beacon?

Beacon (маячки) в беспроводной технологии - это тип миниатюрных батарейных устройств для передачи информации малого объема. Информация может быть любой, начиная от параметров окружающей среды (температура, давление, влажность и так далее) или состоянии объекта (местоположение, ускорения, вибрации) до уведомлений о ценах и товарах в магазине.

Переданные данные, как правило, статические, но могут быть также динамическими и изменяться со временем. Маячки, использующие Bluetooth Low Energy, как правило, предназначены для работы в течение многих лет на одной батарее размером с монету. Рассмотрим, с чего начать реализацию решений на базе маячков, распространяющих информацию при помощи объявлений (advertisement), то есть широковещательных рассылок по технологии Bluetooth Low Energy, которая также известна под маркетинговым именем Bluetooth Smart.

Bluetooth Low Energy и Bluetooth Smart

Модуль Bluetooth Low Energy может работать в четырех различных режимах, при которых устройства ведут себя по-разному. Первые два режима основаны на процедуре «соединения» (connection-based), то есть на установлении непосредственной связи с другим конкретным устройством:

  • периферийное устройство выполняет функцию объявителя (advertiser), оно может устанавливать соединение и работать как ведомое устройство (slave) в случае соединения, например, термометр или монитор сердечного ритма;
  • центральное устройство сканирует объявителей и может инициировать соединение. Оно работает как ведущее устройство (master) при одном или более соединениях, например, смартфоны и компьютеры. Это означает, что устройства, которые участвуют в процедуре соединения, могут работать как периферийные или центральные. Два других режима используются в устройствах с однонаправленной передачей или приемом данных:
  • широковещательный передатчик (Broadcaster) – объявитель без функции соединения, например, температурный датчик, который передает текущую температуру, или электронная метка для слежения за объектами;
  • наблюдатель (Observer) сканирует эфир в поисках объявлений, но не может инициализировать соединения. Это может быть удаленный дисплей, который получает температурные данные и выдает их на экран или следит за электронными метками.

Очевидные режимы для приложений маячка - это периферийное устройство (Peripheral) и широковещательный передатчик. В этих режимах посылается один и тот же тип объявлений за исключением одного определенного флага внутри пакета, который указывает, является устройство соединяемым или несоединяемым. Периферийное устройство, которое реализует сервер GАТТ (архитектура для хранения информации и обмена ею между двумя или более устройствами), известно под маркетинговым названием “Bluetooth Smart”. Итак, название Bluetooth Smart указывает, что это устройство является соединяемым периферийным устройством, которое содержит данные и с которым центральное устройство может взаимодействовать.

Технология Bluetooth Low Energy идеальна для маячков, потому что имеет низкое энергопотребление, присутствует в большинстве смартфонов или в других доступных на рынке устройствах Bluetooth Smart Ready. Низкое энергопотребление достигнуто за счет максимального уменьшения времени передачи и перехода в спящий режим между отправкой пакетов.

Несоединяемые маячки

Несоединяемый маячок - это устройство Bluetooth Low Energy в широковещательном режиме. Он просто передает информацию, которая хранится в его памяти. Поскольку в режиме несоединяемой передачи не активируется функция приема, достигается самое низкое возможное потребление энергии. Устройство просыпается, передает данные и возвращается в спящий режим. Недостаток такого устройства - передаются только те динамические данные, которые известны устройству, или данные, которые можно загрузить в маячок через проводной интерфейс, например, через последовательный вход UART, SPI или USB.

Соединяемые маячки

Соединяемый маячок является устройством Bluetooth Low Energy в периферийном режиме. Такой маячок может не только передавать, но получать данные, что позволяет центральному устройству (например, смартфону) соединяться и взаимодействовать с сервисами, реализованными в маячке. Каждый сервис имеет один или более атрибутов, которые могут быть изменены подключенным к маячку устройством. Один из примеров такого атрибута - строка данных, которая представляет широковещательную информацию. Таким образом, можно иметь маячок с перестраиваемой конфигурацией, которая легко обновляется по эфиру.

Пакет данных

Переданные от устройства Bluetooth Low Energy данные имеют формат, соответствующий базовой спецификации Bluetooth, и состоят из нескольких частей, которые показаны на рисунке 1.

Преамбула - однобайтовое значение, используемое для синхронизации в приемнике. Для широковещательных пакетов она всегда равна 0xAA. Адрес доступа также фиксирован для широковещательных пакетов и установлен в 0x8E89BED6. Полезная нагрузка пакета состоит из заголовка и, собственно, полезной нагрузки. Заголовок описывает тип пакета, а тип PDU определяет назначение устройства. Для широковещательных приложений есть три различных типа PDU (таблица 1). ADV_IND и ADV_NONCONN_IND были описаны ранее (как соединяемый и несоединяемый), в то время как ADV_SCAN_IND - несоединяемый широковещательный передатчик, который может предоставить дополнительную информацию в ответ на сканирование.

Таблица 1. Типы PDU-объявлений для широковещательных данных

Бит TxAdd указывает, является ли адрес объявителя (содержащийся в полезной нагрузке) публичным (TxAdd = 0 ) или случайным (TxAdd = 1 ). RxAdd зарезервирован для других типов пакетов, не рассматриваемых в данной статье, поскольку они не применяются к маячкам.

Последняя часть передаваемого пакета – циклический избыточный код (CRC). Циклический контроль избыточности - код с обнаружением ошибок, используемый для проверки целостности пакета от нежелательных изменений, как правило, вследствие помех в эфире. Это гарантирует целостность данных всех переданных по эфиру пакетов.

Полезная нагрузка пакета включает адрес объявителя наряду с определяемыми пользователем данными, включаемыми в пакет объявления (user defined advertised data), как показано на рисунке 2. Эти поля представляют собой широковещательный адрес маячков и данные.

Адрес устройства

Широковещательный адрес может быть или публичным, или случайным. Публичный адрес (Том 6.C.1.3, стр. 2500), в соответствии со стандартом IEEE 802-2001 используется как уникальный идентификатор организации (OUI), полученный из центра регистрации IEEE. Компания Texas Instruments обеспечивает адреса IEEE для всех устройств Bluetooth Smart. Случайные адреса могут быть непосредственно сгенерированы маячком и бывают трех различных типов (рисунок 3): статический, неразрешимый частный и разрешимый частный (resolvable private). Статический адрес не разрешается менять, пока устройство не перезагрузится. Частный адрес может меняться со временем, а разрешимый адрес может использоваться, чтобы получить истинный адрес. Неразрешимый адрес также может измениться со временем, в этом его отличие от статического адреса. Случайный адрес - средство обеспечения секретности, которое предотвращает слежение за устройством. Есть определенные правила генерации случайных адресов, подробности можно найти в базовой спецификации (Том 3.C.10.8, стр. 2020).

Переданные данные могут быть отформатированы согласно специальным форматам данных SIG Bluetooth, некоторые примеры показаны в таблице 2 . Далее уделим внимание флагам и данным, специфичным для изготовителя.

Таблица 2. Типы данных объявлений

Флаги

Первые три байта широковещательных данных определяют возможности устройства. Это требование базовой спецификации (Vol 3. стр. 2029 C.13.1.1), формат байтов определен в таблице 3.

Таблица 3. Флаги типов данных установки соединения

Флаги режима обнаружения - маскированные биты, их различные значения представлены в таблице 3. Если никакие битовые флаги не установлены, флаг типа данных может быть опущен . Он, например, не требуется для несоединяемого пакета объявления (ADV_NONCONN_IND).

Данные, специфичные для изготовителя

Когда задаются данные, специфичные для изготовителя (то есть определяемые и сформатированные исключительно по правилам самого производителя), чтобы показать наличие этих данных, используется флажок “0xFF”. Первые два байта самих данных должны быть кодом идентификатора компании.

Формат пакета Bluetooth Low Energy позволяет устройству передавать 25 байтов данных, специфичных для изготовителя, если объявление имеет тип соединяемого ненаправленного объявления (ADV_IND) или сканируемого ненаправленного объявления (ADV_SCAN_IND), при этом требуется флаг режима обнаружения. Для несоединяемого ненаправленного объявления (ADV_NONCONN_IND) максимальная длина данных в поле “Manufacturer-Specific Data” может достигать 28 байт. Эти данные определяются производителем и могут содержать любую информацию.

Широковещательные данные могут быть также форматированы стандартным способом. Во время написания этой статьи существовало два стандарта: iBeacon от Apple и AltBeacon от Radius Networks. iBeacon защищен в соответствии с лицензией MFi и взаимодействует со всеми iOS-устройствами. AltBeacon - открытый стандарт, его спецификация может быть загружена со страницы http://altbeacon.org/.

Интервал объявления

Маячок обеспечивает низкое энергопотребление, по преимуществу находясь в бездействии и просыпаясь только на короткие периоды для передачи данных. Время между этими событиями вещания называется интервалом объявлений (рисунок 4). Для несоединяемых маячков интервал не может быть меньше 100 мс, а для соединяемых маячков – меньше 20 мс. К этому интервалу добавляется псевдослучайная задержка 0…10 мс, это гарантирует, что маячки могут работать совместно, даже если они начали передачу в одно и то же время.

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

Наблюдатель обычно выполняет сканирование с длительностью циклов менее 100%, чтобы снизить потребление энергии или предоставить другим беспроводным протоколам время для работы. Хороший пример - смартфоны, у которых в большинстве случаев есть один общий чип для Bluetooth и Wi-Fi®. Если наушники соединены через классический Bluetooth, а через Wi-Fi поддерживается связь с точкой доступа, то сканирование Bluetooth Low Energy будет, вероятно, производиться лишь на коротких интервалах работы. Временные интервалы доступа к эфиру на этом устройстве разделены между несколькими 2,4-гигагерцевыми протоколами.

Наблюдатель может сканировать в пассивном или активном режиме. Если будет использоваться активный режим и маячок его поддерживает, то посылается команда “Scan Request”, на которую маячок должен выдать Scan Response. Запрос (Request) - это пустой пакет (нет никаких данных), тогда как ответ (Response) - это, как правило, статическая информация, например, название или модель устройства. Ответ полностью определяется самим устройством. Таким образом, это могут быть данные с каких-либо датчиков или любая другая полезная информация. Когда наблюдатель сканирует в пассивном режиме, он не будет посылать запрос сканирования.

Таблица 4. Типы данных объявления, формат данных, специфичных для изготовителя

Питание

Маячок может получать энергию несколькими путями. Есть три различных основных способа (рисунок 5):

  • источник питания постоянной доступности (USB, электросеть и так далее);
  • батарейки (CR2032, AAA, литиевая и так далее);
  • сбор энергии – солнечной, кинетической и тому подобное (energy harvesting).

Как правило, сначала выбирают батарейки, времени жизни которых достаточно для большинства приложений, и которые позволяют выпускать небольшие и бюджетные продукты. Можно также использовать перезаряжаемые аккумуляторы, причем в некоторых приложениях – вместе с беспроводной зарядкой. Выбор типа батарейки важен, потому что некоторые батарейки могут плохо работать в режиме отдачи максимального тока. Емкость батарейки выбирается на основе того, как часто необходима передача и требуется ли дальнейшая обработка (чтение датчика, алгоритмы обработки полученных данных и так далее). Взаимодействие с датчиком обычно подразумевает последовательную передачу данных с использованием интерфейсов UART, SPI или I2C, что требует дополнительной энергии, которая может оказаться даже больше, чем при выполнении радиообмена по протоколам Bluetooth Low Energy.

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

Сбор энергии реализуется чаще для беспроводных проектов с низким энергопотреблением, и маячок может быть оснащен источником сбора энергии. Механическое давление и солнечная энергия - самые известные источники. Даже свет в помещении может использоваться для питания маячка.

Расстояние

Теоретически расстояние для заданной радиочастоты зависит от многих факторов, например, таких как:

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

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

Совместимость

В открытом диапазоне частот 2,4 ГГц, который используется Bluetooth Low Energy, работают также многие другие беспроводные протоколы, такие как Wi-Fi и ZigBee. В этой полосе частот возможны и потенциальные помехи от домашних приборов, например микроволновых печей. Подобная активность в радиоэфире может мешать работе устройств Bluetooth Low Energy. Широковещательная передача объявлений происходит последовательно на трех различных каналах (рисунок 6).

Каналы 37, 38 и 39 были выбраны для того, чтобы не вступать во взаимодействие с тремя обычно используемыми каналами Wi-Fi - 1, 6 и 11 (рисунок 7).

Несмотря на то, что каналы объявлений Bluetooth Low Energy стратегически размещены в полосе 2,4 ГГц так, чтобы не взаимодействовать с наиболее традиционными каналами Wi-Fi, из рисунка 8 видно, что проблемы совместимости с этими частными каналами Wi-Fi так или иначе могут возникать. Впрочем, нужно заметить, что в данном случае частотный спектр был измерен на маячке, расположенном непосредственно на корпусе устройства Wi-Fi.

В зависимости от приложения маячка к совместимости предъявляются различные требования. Даже малое количество активных маячков создает помехи друг другу, что вызывает потерю пакетов. Как уже отмечено, Wi-Fi имеет, в общем случае, более высокую мощность TX и занимает более широкую полосу ISM на 2,4 ГГц, чем устройства Bluetooth Low Energy.

Проектирование маячка Bluetooth Low Energy

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

Средства разработки

При проектировании маячка сначала принимается решение о том, какие средства разработки использовать. Есть несколько доступных отладочных наборов компании Texas Instruments, которые представлены на рисунке 9. Эти средства включают в себя как небольшие платы с питанием от дискового элемента (CC254XDK-MINI , CC2541DK-SENSOR), так и многофункциональные платформы, идеальные для моделирования устройств любой сложности (CC2540DK). Подробная информация об этих средствах разработки находится на сайте ti.com/ble.

Создание приложения маячка с BLE-стеком TI

BLE-стек, поставляемый компанией Texas Instruments для беспроводных MCU CC254x , обеспечивает простую и надежную реализацию соединяемых и несоединяемых маячков. Есть типовые приложения, которые могут использоваться как программные шаблоны при проектировании маячка, они описаны в таблице 5. Предполагается, что разработчик уже знаком со средой разработки IAR Embedded Workbench и BLE-стеком.

Таблица 5. Примеры программного обеспечения маячка для CC254x

Пример проекта Назначение GAP Тип Поддержка устройств
SimpleBLEPeripheral Периферийное устройство Соединяемый CC2540 , CC2540T , CC2541 , CC2541-Q1
SimpleBLEBroadcaster Диктор Несоединяемый CC2540, CC2540T, CC2541, CC2541-Q1

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

Проект SimpleBLEPeripheral полностью описан в «Руководстве по разработке программного обеспечения» и является, в общем случае, лучшей отправной точкой при реализации соединяемого маячка. SimpleBLEBroadcaster - упрощенная версия SimpleBLEPeripheral, которая поддерживает только несоединяемые маячки. API поддерживает те же функции маячка, что и для указанных выше проектов. Таким образом, приведенные ниже примеры, применимые к обоим проектам, в частности, SimpleBLEBroadcaster (BLEv1.4), можно использовать как эталонный пример проекта. Есть две аппаратных платформы для SimpleBLEBroadcaster: CC2541 и CC2541DK-MINI Keyfob. В этой статье рассматривается применение платы CC2541EM . Конфигурирование производится с помощью всплывающего списка рабочих пространств (рисунок 10). Кроме того, существует версия проекта для CC2540 с подобными встроенными опциями.

Приложение реализовано в SimpleBLEBroadcaster.c, где широковещательные данные определены как advertData:

static uint8 advertData =
{
//Флаги; они устанавливают устройство в режим ограниченного обнаружения
//(установка соединения один раз в течение 30 секунд) вместо общего
//режима обнаружения (объявления не определены)
0x02, //длина этих данных
GAP_ADTYPE_FLAGS,
GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED, //трехбайтовое объявление данных «1, 2, 3»
0x04, //длина этих данных
GAP_ADTYPE_MANUFACTURER_SPECIFIC, //данные, определяемые производителем
//тип данных объявления
1,
2,
3
};

По умолчанию передаваемые данные содержат обязательные флаги, за которыми идут три байта данных Manufacture-Specific Data (номера 1, 2 и 3). Эти данные могут быть изменены на какие-либо иные данные, при этом в случае необходимости следует обновить длину данных. В зависимости от аппаратной платформы объявления устанавливаются по-разному. Для CC2541 Вuild, который является общим для микросхем CC2541, по умолчанию эта переменная имеет значение TRUE. В типовом приложении тип объявления по умолчанию установлен как константа GAP_ADTYPE_ADV_SCAN_IND. Это позволяет во время соединения использовать команды Scan Request/Response. Чтобы запретить сканирование, что, кстати, уменьшит потребляемую мощность, тип объявления (advType) может быть изменен на константу GAP_ADTYPE_ADV_NONCONN_IND. После этого изменения можно также не задавать три байта флагов:

//Для других аппаратных платформ устройство начинает процедуру соединения
//после инициализации
uint8 initial_advertising_enable = TRUE;
//в случае использования несоединяемого объявления
uint8 advType = GAP_ADTYPE_ADV_SCAN_IND;

Конфигурированные переменные далее поступают на уровень GAP для использования стеком BLE. Отметим, что режим advertEnable не запускается мгновенно, во всяком случае, это не происходит во время инициирования приложения (simpleBLEBroadcaster_Init). Объявления начнут передаваться после того, как запустится стек протокола:

GAPRole_SetParameter (GAPROLE_ADVERT_ENABLED, sizeof (uint8), &advertEnable);
GAPRole_SetParameter (GAPROLE_ADVERT_DATA, sizeof (advertData), advertData);
GAPRole_SetParameter (GAPROLE_ADV_EVENT_TYPE, sizeof (uint8), &advType).

Интервал объявления по умолчанию установлен равным 100 мс, хотя он может быть увеличен до 10,24 с, что является максимумом, разрешенным базовой спецификацией BLE. Если необходимы более длинные интервалы – можно вручную разрешать и отключать передачу данных с помощью таймера OSAL, например:

//Интервал между процедурами соединения (шаг 625 нс, 160 = 100 мс)
#define DEFAULT_ADVERTISING_INTERVAL 160

Чтобы гарантировать обнаружение объявлений, есть общее правило: интервал объявлений + 10 должен быть меньше, чем окно сканирования наблюдателя. Это означает, что маячок должен быть спроектирован с учетом возможностей партнерского устройства, иначе для получения переданных пакетов потребуется много времени. Подразумевается, что меньший интервал объявления позволит быстрее обнаруживать отправляемые данные, хотя для этого требуется больше мощности из-за более частых «пробуждений». Интервал устанавливается с помощью следующего API:

uint16 advInt = DEFAULT_ADVERTISING_INTERVAL;
GAP_SetParamValue (TGAP_LIM_DISC_ADV_INT_MIN, advInt);
GAP_SetParamValue (TGAP_LIM_DISC_ADV_INT_MAX, advInt);
GAP_SetParamValue (TGAP_GEN_DISC_ADV_INT_MIN, advInt);
GAP_SetParamValue (TGAP_GEN_DISC_ADV_INT_MAX, advInt).

Для получения дополнительной информации относительно прикладной архитектуры и описания API, смотрите «Руководство по разработке программного обеспечения» .

При использовании сниффера пакетов TI переданные данные могут быть проконтролированы. На рисунке 11 показан пакет из канала 37 (0x25 ), который является соединяемым (ADV_IND). Значение AdvA - адрес IEEE, advData включает флаги (0x01 ) и Manufacturer-Specific Data (0xFF ).

Заметим, что в коде примера, основанном на BLEv1.4, Manufacturer-Specific Data не включает код компании, то есть, согласно базовой спецификации, это неправильный формат. Чтобы исправить это, просто добавьте код компании к AdvertData с помощью прикладной программы, как показано ниже. Не забудьте обновить длину данных, специфичных для изготовителя, которые также включают флажок для типа данных:

//GAP - данные объявления (максимальный размер = 31 байт, хотя лучше их делать короче, чтобы снизить потребление во время события объявления)
static uint8 advertData =
{
//флаги; они переводят устройство в режим ограниченного обнаружения
//(установка соединения один раз в течение 30 секунд) вместо общего режима обнаружения (объявления не определены)

CC2650 оптимизирован для создания устройств с питанием от малогабаритных дисковых элементов – потребление радио в режиме непрерывного приема составляет лишь 5,9 мА.

Низкое потребление нового чипа позволило инженерам Texas Instruments создать опорную разработку беспроводного сенсора 2,4 ГГц для мониторинга окружающей среды, который работает более 10 лет от одной батареи CR2032. Датчик измеряет значения температуры и влажности и передает их один раз в минуту в виде широковещательного BLE-пакета (nonconnectable Bluetooth Smart advertisement packet). Практические испытания показали дальность действия в пределах 130 м внутри офисного здания.

Для достижения экстремально низкого тока потребления в режиме сна в схеме использован уникальный нанотаймер TPL5110 , который имеет ток собственного потребления 35 нА в режиме счета времени 0,1 с…2 ч. Коммутация питания выполнена с помощью аналогового ключа TS5A3160 с током утечки ±20 нА. Использование этих компонентов позволило получить потребление всей системы 183 нА в режиме сна (59,97 с) и средний ток 4,04 мА при активном процессоре и работающем передатчике (30 мс).

Схема и рабочий проект печатной платы выложены в открытом доступе, поэтому разработчик может легко модифицировать плату, добавляя новые датчики на шину I2C. Печатная плата позволяет использовать не только микросхему CC2650, которая включает поддержку разных беспроводных протоколов, но и чипы CC2640 (только Bluetooth Smart) или СС2630 (только ZigBee), которые по выводам полностью совместимы с CC2650.

О компании Texas Instruments
  • Разработка мобильных приложений
  • У нас уже есть умные термостаты, весы, камеры, телевизоры, холодильники, датчики, замки и тд. С каждыми днём на рынке появляется всё больше и больше умных устройств от самых разных производителей, притом некоторые из них действительно хороши и полезны. Но как сегодня выглядит наше взаимодействие с такими устройствами, например, первоначальная настройка и мониторинг? В подавляющем большинстве случаев, у каждого производителя есть приложение, с помощью которого мы и можем взаимодействовать с его продуктами. На первый взгляд выглядит нормально, так ведь?

    Но ведь умные устройства могут нас окружать не только дома. У многих из нас есть приложения для общественного транспорта, оплаты парковок, аренды автомобилей или велосипедов. Но если вы оказываетесь в другой стране по работе или в отпуске, вам скорей всего нужно будет установить еще несколько приложений.

    Если мы верим в закон Мура, то маленькие, недорогие, подключенные устройства скоро ворвутся в нашу жизнь, наполняя наши дома, рабочие и общественные места. В настоящее время большинство умных устройств для интернета вещей требует установки специального приложения. Такое узкое решение просто не масштабируется до взаимодействия со всем множеством умных устройств. Я не имею ничего против приложений, приложения это здорово! Но их много и то взаимодействие, которое они нам предлагают не всегда удобно.

    Концепция Physical Web

    Physical Web - это попытка построить мост между цифровым и физическим миром, который позволяет нам расширить суперсилу web - URL - для повседневного использования. В своей основе, Physical Web является службой обнаружения: умный объект передает соответствующий URL-адрес, который могут принимать любые устройства поблизости, например ваш смартфон или планшет. Эта простая возможность транслировать обычный URL открывает новые, захватывающие способы взаимодействия.

    Видео o Physical web от Scott Jenson. Рекомендую посмотреть.




    Представьте, что вы можете легко взаимодействовать со всеми умными устройствами в вашем доме, без труда их настроить или получить диагностические данные. Подойдя к остановке вы можете узнать когда прибудет ближайший автобус, сев в него, вы узнаете информацию по маршруту, время до следующей остановки. В торговом центре вы узнаете об акциях и скидках. Подойдя к торговому автомату, вы сможете купить и получать товар, не уговаривая его принять ваши деньги и даже не прикасаясь к нему. Вы можете купить билет в музей или кино, а подойдя к постеру или предмету экспозиции получить о нем дополнительную информацию. Можно арендовать машину или велосипед, оплатить парковку, совершив меньше ненужных действий. Или занять очередь. Занять очередь, Карл! Мы же в России так любим очереди. Даже если вы окажетесь в другом городе, для вас ничего не изменится.

    Всё это возможно без установки кучи ненужных приложений, вам понадобиться одно единственное приложение, для Android это - Physical Web Browser , а на iOS - данный функционал встроен в Google Chrome . Google Chrome с поддержкой Physical web для Android сейчас находится в стадии beta. Так же поддержку Physical Web в скором времени получит Opera c переходом на кодовую базу Chrome 49.

    Physical Web является естественным решением, предлагающим взаимодействие по требованию без дополнительных усилий и накладных расходов в виде установки приложений. Это совершенно новый User eXperience , предлагающий взаимодействие по требованию, только тогда когда это действительно нужно пользователю. Вы просто нажимаете на ссылку и получаете то, что вам нужно. Никаких Push уведомлений, вибраций или чего то подобного.
    Physical Web экономит силы, средства и время на разработку приложений, т.к. не нужно писать приложение под каждую платформу, достаточно сделать одно, адаптивное Web приложение.

    Пример того как это выглядит:



    Physical Web еще не готов до конца и не является продуктом Google . Это экспериментальный проект, находящийся на ранней стадии и разрабатываемый Google в открытом виде, как и все вещи, связанные с интернетом.

    Устройство маячков

    Как вы уже могли легко догадаться, источником так нужного нам URL являются маячки (англ. Beacon - маяк). Маячки представляют собой простейшее устройство, которое с заданной частотой транслирует какие-то данные, так называемый advertisement packet , с помощью технологии Bluetooth v4 или Bluetooth Low Eenergy(BLE) .

    Для тех, кто переживает за приватность: маячки принципиально не могут вас отслеживать, они умеет только транслировать сообщения и ничего о вас не знают. Им всё равно, один человек получает от них пакеты или 30.

    Ниже, как пример, представлен маячок от компании Estimote в разобранном виде:


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

    Далеко не полный пример разнообразия устройств:



    Маячки, которые у меня есть в данный момент:



    В чем же концептуальная разница между маячками, если не брать в расчет цену и исполнение? Разница заключается в формате транслируемых сообщений.

    Сейчас есть три основных стандарта:

    • iBeacon
    • AltBeacon
    • Eddystone
    На самом деле есть еще стандарты, например PayPal beacon или какие-то свои реализации от вендоров, например gimbal и estimote, но именно перечисленные выше являются на данный момент основными, доминирующими стандартами.

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

    iBeacon

    Первым стандартом был iBeacon , он был представлен компанией Apple inc . в 2013 году. Основным его назначением было применение в области розничной торговли и мобильного маркетинга, а также для локального позиционирования внутри помещений.

    Стандарт iBeacon предполагает трансляцию только 1 типа advertisment packet , который состоит из следующих частей:

    • UUID - 16-байтный уникальный идентификатор группы маяков;
    • Major
    • Minor - 2-байтное беззнаковое значение;
    • Measured Power - значение уровня сигнала в 1 м от передатчика. 8-битное знаковое целое - значение показателя уровня принимаемого сигнала (RSSI - Received Signal Strength Indicator), которое используется для определения близости (proximity) маяка к приёмнику (мобильному устройству). Измеряется в dBm.

    iBeacon frame:


    Устройство или iOS сами по себе эти пакеты ничего не значат, их должно обрабатывать приложение. В каждом отдельном случае, для каждого сценария использования пользователю придется ставить отдельное приложение. Количество UUID с которым может работать приложение ограничено. Среди недостатков стандарта стоит отметить его проприетарность, отсутствие нативной поддержки на платформе Android и то, что он умеет транслировать только один тип advertisment packet .

    AltBeacon

    Консорциумом RadiusNetwork"s был представлен альтернативный и открытый стандарт AltBeacon . Он изначально разрабатывался как интероперабельный и обратно совместимый со стандартом iBeacon . AltBeacon обладает почти таким же функционалом что и iBeacon , хотя и позволяет передать чуть больше полезной информации.

    AltBeacon frame:


    Из 28 байт Advertisment packet , нам доступны 25 байт которые состоят из:
    • MFG ID - 2 байта. Идентификатор производителя устройства
    • BEACON CODE - 2 байта. Код Advertisment packet
    • BEACON ID - 20 байт. Уникальный идентификатор устройства
    • MFG RSVD - 1 байт. Специальное зарезервированное поле (в основном используется для Bluetooth assigned numbers)
    В свою очередь BEACON ID может быть представлен как у iBeacon , т.е. 16-byte id1 + 2-byte id2 + 2-byte id3 . Подробнее со спецификаций протокола можно ознакомиться . Так как это по сути открытый аналог iBeacon , то и недостатки у него такие же.

    Eddystone



    В 2015 году компанией Google был представлен новый и полностью открытый стандарт Eddystone , который эволюционировал из проекта URIbeacon . Как и 2 других стандарта, Eddystone - это спецификация протокола, которая определяет формат сообщений BLE . Eddystone включает весь опыт других стандартов и призван быть более гибким и устранить недостатки присущие ibeacon и AltBeacon

    В отличие от них, он умеет рассылать уже 3 типа пакетов:

    • Eddystone-UID - 16-байтовый идентификатор устройства, который состоит из 10-байт namespaceId и 6-байт instanceId .
    • Eddystone-URL - транслирует URL используя сжатый формат кодирования. Любой длинный URL можно сократить с помощью Google URL Shortener (https://goo.gl/), что бы поместится в ограниченный 18 байтами Advertisment packet . После декодирования, URL может быть использован любым клиентом с доступом к интернету. Например, если маячок транслирует URL: https://goo.gl/Aq18zF , то любой клиент, который получил этот пакет может посетить этот URL (https://goo.gl/Aq18zF).
    • Eddystone-TLM - телеметрия, доступны такие данные как напряжение аккумуляторной батареи, температура устройства, количество отправленных пакетов с момента включения и время с момента включения.

    Eddystone frame:


    Eddystone-URL является основой Physical Web и позволяет легко обнаруживать и взаимодействовать с окружающим нас веб-содержимым. Так как он транслирует обычный URL нам не нужно ничего кроме браузера. Никаких специальных приложений, библиотек или SDK!
    Для случаев когда нужно сделать не публичное, обычное приложение для внутреннего или специального использования, Eddystone-URL не подходит, мы должны использовать Eddystone-UID.

    Как я уже писал выше, есть маячки, которые позволяют одновременно транслировать несколько видов пакетов, например iBeacon и Eddystone-URL или Eddystone-UID и Eddystone-URL. Как и для чего это можно использовать я расскажу дальше.

    Как это выглядит на примере маячков RadBeacon USB, RadBeacon Dot и iBKS 105:


    Работа с маячками и реализация Physical Web

    В самом простом случае, для реализации Physical Web, достаточно ble-маячка с поддержкой Eddystone. Разные модели маячков инициализириуется и конфигурируютсятся по разному. Можно легко развернуть 5, 10, или, скажем 100 маячков. Вы просто назначаете им URL, потом, если это необходимо, меняете только сам контент. Но если вам нужно развернуть большое количество разных устройств, от разных производителей на достаточно большой площади (торговый центр, аэропорт, район города или даже целый город), при том что часть маячков могут быть в постоянном движении, например в транспорте. В таком случае у вас возникают некоторые проблемы, но решения есть. Некоторые производители предоставляют свои облачные решения и CMS для управления маячками, например Estimote , Kontakt.io , Blesh , Phy.net и LightCurb . Estimote и Kontakt.io так же предоставляют на github свои SDK .

    На мой взгляд, наиболее универсальным и простым инструментом для решения подобных задач является (Google"s beacon platform )[https://developers.google.com/beacons/ ]. Google"s beacon platform позволяет легко мониторить и управлять сразу всеми устройствами. Платформа позволяет работать с разными маячками от разных производителей, предоставляй разработчикам единый, простой и гибкий инструмент, о котором я подробно расскажу в отдельной статье.
    Мы можем добавить в уже имеющееся, популярное у пользователей приложение возможность работы с маячками, например для навигации или получения каких то дополнительных данных. Понятно что в этом случае Eddystone-URL не подходит, нам нужно использовать Eddystone-UID. Но благодаря тому что некоторые маячки умеют рассылать сразу два типа пакетов одновременно, например Eddystone-URL или Eddystone-UID, мы можем обеспечить пользователей с приложением дополнительными данными, а пользователей без приложения, самим приложением.
    В случае когда необходимо сделать не публичное приложение для специального или внутреннего использования, мы просто используем Eddystone-UID.

    Маячки могут использоваться для навигации, при том не только внутри помещений(indoor). На первый взгляд эта задача выглядит на такой уж сложной, ведь мы можем определять расстояние до маячка с помощью RSSI. Но даже в идеальных условиях значение сигнала скачет. Связанно это с особенностями антенны, распространения волн, зашумленностью и преградами. В целом, приблизительно, вы можете определить расстояние и кому то этого достаточно. Но если вам нужны более точные показания, то придётся применять триангуляцию сигнала, фильтр Калмана и т.д. В целом, на хабре было написано достаточно про особенности indoor навигации, вот неплохие статьи.