Перейти к содержанию
    

SIM868E & BLE. Зачем GATT-клиент выдает рекламу (advertising) ?

Буду пользоваться терминологией из статей по SIM868E, чтобы не было недопонимания процессов.

Есть GATT-сервер с данными, который и задуман как дающий рекламу (адвертайзинг), и к которому могут подключаться GATT-клиенты. Тут все понятно, вопросов нет.

GATT-клиенты сканируют рекламу и, если нужно, подключаются.

Но зачем-то GATT-клиенты на SIM868E при этом сами выдают рекламу. Зачем это нужно? Это так задумано и этим можно пользоваться смело или нет? Нигде это не описано и обнаружилось случайно.

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

Инит клиента:

AT+GMR

Revision:1418B02SIM868E32_BLE_DS_20190330_1400

OK
AT+BTPOWER=1

RDY

+CFUN: 1

+CPIN: NOT INSERTED

+CPINDS: NOT INSERTED

OK
AT+BLEADDR?

+BLEADDR: 0,f6:eb:45:73:6a:80

OK
AT+BLECREG

+BLECREG: 1,ABCDEF50

OK
AT+BLESCAN=1,1

OK

+BLESCANRST:
 ABCDEF50,1,72,10:15:8f:b6:88:6e,1EFF0600010920024ECE88F7970399C86817B0DDB6F35B7817EAF2AA55B645

+BLESCANRST:
 ABCDEF50,2,37,f0:e9:31:03:e2:a4,0201061BFF570100F96756EFDCF68C04EEED0E4632BD19B801F0E93103E2A4
 

 

S00610-12543577.jpg

Изменено пользователем Rse72

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И BT Classic и BLE могут работать в разных режимах. У них обычно разделяются понятия "discoverable" и "connectable".
По умолчанию обычно включено discoverable + connectable. Даже в смартфонах есть возможность переключать эти режимы.
Так что ищите у SIM868E команды, которые управляют этими режимами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть отдельно команды на регистрацию GATT-сервера и его инит. Именно после этого начинается процесс рекламы согласно докам симкома.

Эти команды на выдачу рекламы я не даю. Только сканирование.

Или это по умолчанию включено и нужно отключать отдельно?

Это из статьи:

AT+BLESREG // Регистрируем GATT-сервер, в этот же момент начинается процесс рекламы (advertising), и устройство становится видимым

По факту же реклама идет сразу после AT+BTPOWER=1 // Включение Bluetooth

Вопросы остаются:

- зачем сразу включается реклама?

- как отключить ее?

команды AT+BLESDREG=1 и AT+BLESLSTOP=1 не работают 


 

 

Изменено пользователем Rse72

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я тут вам могу наплести чего-нибудь неправильного, ибо до BLE еще не добрался, застрял на BT Classic, но из того что читал, всегда было:
сервер молчит, а BLE клиенты периодически передают пакеты advertising (я есть, вот мой статус). Более того, если вы установили соединение с сервером, то без пакетов advertising вообще работа невозможна, т.к. BLE клиент большую часть времени спит и просыпается только для advertising. А в этом пакете - синхронизация с сервером времени следующего просыпания.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разница между старым BT и BLE существенная

1 hour ago, Baser said:

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

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

На абсолютные знания я точно не претендую. 

Изменено пользователем Rse72

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

22 hours ago, Rse72 said:

В общем случае мне не нужно, чтобы устройство было видно, чтобы кто-то подключался к нему, читал сервисы и тд.

Посмотрите "AT+BTVIS=0". Отключает видимость одновременно в classic и ble

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 6/11/2020 at 12:37 PM, desh said:

Посмотрите "AT+BTVIS=0". Отключает видимость одновременно в classic и ble

Помогло, спасибо!

Но все же зачем без всяких инитов, сразу после включения BLE включается реклама? Надеюсь, уважаемые представители объяснят причину

Изменено пользователем Rse72

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Включается не реклама, а рассылка пакетов для возможности подключения к модулю на каналах Advertising'а.

Вы похоже путаете с так называемым Beaconing (AT+BLEADV), который тоже работает на каналах Advertising. Такую рассылку можно выключить через AT+BTVIS=0.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Hub said:

Включается не реклама, а рассылка пакетов для возможности подключения к модулю на каналах Advertising'а.

Ну так это и есть реклама.

 

1 hour ago, Hub said:

Вы похоже путаете с так называемым Beaconing (AT+BLEADV), который тоже работает на каналах Advertising.

Ну вроде как и то и это считается рекламой, просто к одним устройствам можно подключаться, а к другим нет. Если считаете что я не прав, прошу ссылку на ваш источник.

Ну и чистого Beaconing в sim868e вообще не реализовано. Во всяком случае я не нашел как реализовать режим Beacon без возможности подключения.

 AT+BLEADV лишь дает настроить параметры рекламы, но не дает отключить возможность подключения к модулю, т.е. Beacon из sim868e не получить. Опять же, если я не прав, пришлите лог как это сделать. У меня не получилось.

Изменено пользователем Rse72

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

6 minutes ago, Rse72 said:

Ну вроде как и то и это считается рекламой, просто к одним устройствам можно подключаться, а к другим нет. Если считаете что я не прав, прошу ссылку на ваш источник.

Одна из лучших статей на эту тему: https://www.bluetooth.com/blog/advertising-works-part-1/

В конце этой статьи как раз про четыре основных типа адвертов.

6 minutes ago, Rse72 said:

Ну и чистого Beaconing в sim868e вообще не реализовано. Во всяком случае я не нашел как реализовать режим Beacon без возможности подключения. 

Если нужно чтобы устройство/модуль просто передавали в эфир некие данные - это одна история, если нужен маяк Beacon, то это будет совсем другая (с регистрацией в Bluetooth SIG и т.п.). Давайте начнем от печки: какую задачу нужно реализовать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 minutes ago, Hub said:

Одна из лучших статей на эту тему: https://www.bluetooth.com/blog/advertising-works-part-1/

Читал, ну так там нет разделения на advertising и beaconing. Поэтому и попросил источник такого интересного разделения.

Есть advertising (реклама) и его разновидности, об этом я и говорю.

26 minutes ago, Hub said:

Давайте начнем от печки: какую задачу нужно реализовать?

Задач много,  нужно разобраться, что можно выжать из 868-го.

27 minutes ago, Hub said:

Если нужно чтобы устройство/модуль просто передавали в эфир некие данные - это одна история, если нужен маяк Beacon, то это будет совсем другая (с регистрацией в Bluetooth SIG и т.п.)

Упс. Чтото я совсем в ступоре. В моем понимании просто передать в эфир некие данные без всего остального действия это и есть маяк Beacon. Разъясните, плиз, про две разные истории

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ответ на эти вопросы тянет на хорошую такую статью.

Написал в личку свой телефон, наберите когда будет возможность.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...