BLE: соединение начато с уже связанным устройством
У меня есть два устройства BLE, настроенные для работы в качестве периферийных устройств с простой программой статического сопряжения и телефоном Android в качестве клиента. 1) адрес периферийного_1 = 0xCECECECECE со статическим паролем 123456, имя устройства = сад, внешний вид = универсальный тег. 2) адрес периферийного_2 = 0xC1C1C1C1C1 со статическим паролем 123456, имя устройства = сад, внешний вид = универсальный тег. Обе периферийные устройства ввода-вывода настроены только для отображения.
Я пытаюсь подключиться к Периферическому_1 через приложение nrfConnect, я получаю всплывающее окно для подачи пароля, после предоставления правильного ключа устройства связаны и все хорошо. повторил ту же процедуру с Периферическим_2 и все хорошо, как хорошо.
Теперь возникает реальная проблема. После отключения с периферийным_2, я попытался подключиться к периферийному_1, я снова получаю сообщение, чтобы ввести пароль для уже подключенного устройства, почему? Кроме того, после ввода пароля, я не могу прочитать какие-либо значения характеристик, если я не отсоединяюсь и повторно подключаюсь к периферийному устройству_1. Зачем?
Теперь я повторяю с параметром Периферийное_2 и вижу то же самое поведение (клиент снова просит ввести пароль).
Я считаю, что STK/LTK должны генерироваться однозначно на основе адреса BT и храниться в базе данных клиента.
Предположим, что если я изменю внешний вид одного из периферийных устройств на "неизвестный", то вижу, что клиент не запрашивает повторный ввод пароля после связывания. Только с этим появлением комбинации это работает ("неизвестный" против ""). Любые предложения, предложения с благодарностью.