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

nRF51822 вопросы по работе с ним

а примеры есть, чтобы был изначально вбит passkey у перифериала и централа? Т.о. когда они в зоне видимости находятся, сразу связь устанавливается.

Я пока варианты перебираю, т.к. еще не определился с нужным типом бондинга.

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


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

Может поможет глоссарий в моей статье - https://geektimes.ru/post/276558/

Бондинг и пайринг, как следует из него совершенно разные вещи.

Но прежде чем сделать бондинг надо сделать пайринг.

За оба процесса отвечает слой GAP

 

Уточняю :-)

 

"Pairing

The procedure by which a temporary common security encryption key is generated

to be able to switch to a secure, encrypted link. This temporary key is not stored

and is therefore not reusable in subsequent connections.

 

Bonding

A sequence of pairing followed by the generation and exchange of permanent se‐

curity keys, destined to be stored in nonvolatile memory and therefore creating a

permanent bond between two devices, which will allow them to quickly set up a

secure link in subsequent connections without having to perform a bonding pro‐

cedure again."

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


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

я про то, как в примерах и в каких это реализовано. На сайте нордика ответили мне, что надо смотреть пример ble_app_hrs

Завтра буду разбираться с этим примером. Там еще далеко не все примеры поддерживают бондинг. Например, UART без бондинга идет там.

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


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

Все равно из примера ble_app_hrs не понятно как я подцепляюсь к устройству. Можете объяснить этот момент? В каком месте кода происходит проверка на пайринг или код статический или что там происходит?

Не любым же я устройством цепляюсь к ble_app_hrs? Где- то в этом примере надо код установить для связки?

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


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

Делал устройства на NRF51822 для трех разных заказчиков. Ни у кого не стояло задачи ограничить доступ к устройству. У всех разрешено соединение для всех.

Хотя когда я начинал разбираться с BLE для меня казалось очень странным после BT2.0 что тут нет необходимости переходить в режим спаривания и вводить пин код.

У других компаний встречал следующий режим спаривания для BLE:

В кастомном приложении на телефоне нажимаем кнопку добавить устройство. После этого оно просит положить девайс на дисплей телефона и двигать синхронно с движением картинки на телефоне. На самом деле приложение в телефоне всего лишь отслеживает уровень RSSI, возможно тоже самое делает и BLE. И класть на дисплей конечно не обязательно. Так сделано у них https://play.google.com/store/apps/details?...ream.humiditrak и у них https://play.google.com/store/apps/details?...aconthermometer

Вы с whitelist разобрались? Это не то что вам надо?

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


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

Т.е. для того же примера ble_app_hrs так и есть- он будет работать с любым телефоном?

 

Нашел вроде вот что:

вставить в

gap_params_init():

 

static_pin_option.gap_opt.passkey.p_passkey = passkey;

err_code = sd_ble_opt_set(BLE_GAP_OPT_PASSKEY, &static_pin_option);

APP_ERROR_CHECK(err_code);

 

тогда будет предустановка пароля. И связь будет между только двумя этими устройствами.

 

С witelist так и не понял до конца. По идее, туда и добавляются устройства.

 

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

Сумбурно немного объяснил.

 

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

Вот как это в примере ble_app_hrs сделать?

 

Конечно, думаю, и мой код сработает- про passkey. А без него как-то еще можно?

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


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

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

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

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

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

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

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

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

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

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