0

Я работаю над физическим веб-ориентированным приложением.Передача BLE без сопряжения

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

Возможно ли реализовать такое поведение без обработки фаз между передатчиком bluetooth и мобильным телефоном?

На данный момент я работал с протоколом eddystone, создавая маяк с моей малиной pi, но у меня есть некоторые ограничения из-за ограничения длины символов на 17 символов. (Я использую url как строку для передачи данных).

+0

Маяки используют рекламные рамки BLE для трансляции, и эти рамки ограничены по размеру. Таким образом, доступно ~ 20 байт. – Juancho

+0

Хорошо спасибо. Возможно ли реализовать вещательную компанию без сопряжения с использованием приложения BLE - cordova? –

ответ

0

Вам не нужно связывать мобильные устройства с маяковыми устройствами для приема их сигналов. Сигналы маяка отправляются в виде сообщений Bluetooth LE, которые могут быть прочитаны всеми соседними устройствами BLE без сопряжения. Это справедливо для iOS и Android.

Если вы планируете использовать Ионный, есть Cordova iBeacon plugin вы можете использовать. Я не знаю об одном для Eddystone.

С iBeonon вы еще более ограничены в передаче данных, в основном ограниченных четырьмя байтами в iOS. Чтобы отображать разные сообщения, вам нужно будет встроить таблицу поиска в приложение или использовать веб-службу, чтобы сделать то же самое, в любом случае, глядя на строку на основе идентификатора маяка. С четырьмя байтами. Это даст вам 2 ** 32 (4 миллиарда) возможных сообщений.

Полное раскрытие информации: Я являюсь ведущим разработчиком проекта с открытым исходным кодом Android Beacon Library, на котором основан вышеупомянутый плагин Cordova.

+0

Спасибо. На самом деле проблема не связана с # сообщением и взаимодействием моего приложения с eddystone. Я хотел бы знать, есть ли альтернативный подход (вместо использования маяка eddystone) для трансляции строки с помощью BLE и приема ее в мое приложение без необходимости сопряжения устройств. Я получаю проблемы с ограничениями длины URL, так как мне нужно транслировать строки 50-60 символов. Мое намерение - не отправлять URL-адрес, а сообщения. На данный момент я неправильно использую eddystone-url. Таблица поиска не подходит для моей цели, поскольку сообщения должны часто обновляться, и мое приложение должно оставаться в автономном режиме. –

+0

Если вы хотите отправить полное сообщение внутри пакета BLE без сопряжения, вам будет ограничена максимальная длина рекламного пакета BLE, которая составляет в основном 24 байта полезного пространства для рекламных объявлений производителя. Вам необходимо зарезервировать один или два байта, чтобы идентифицировать его как вероятный тип вашего маяка. Таким образом, вы можете получить 22 символа ASCII в пользовательском формате маяка. Вы могли бы повернуть рекламу таким образом, чтобы один байт сообщал вам количество рекламных объявлений, которые объединяются вместе, и какой из них (например, 4 из 15). Это позволит вам объединить 16 объявлений, чтобы получить 300 символов – davidgyoung

+0

Да, спасибо, это было решение, которое пришло мне в голову. Я не думаю, что коммерческий маяк допускает такую ​​вращение, но я могу реализовать его с моей малиной. Итак, вы думаете, что я не могу реализовать базовое широковещательное сообщение (похожее на маяк), используя только BLE? –