Как правильно подключиться к устройству Bluetooth?

#bluetooth #bluetooth-lowenergy

#bluetooth #bluetooth-низкое энергопотребление

Вопрос:

Я унаследовал приложение, которое подключается к устройству ble.

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

Довольно просто question…is это стандартный способ подключения к определенному типу устройства?

Должен ли я использовать что-то более конкретное, например, проверять службы на предмет ожидаемых идентификаторов служб?

Ответ №1:

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

Комментарии:

1. Имеет ли смысл иметь пустую службу с UUID для явной цели идентификации типа устройства?

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

3. Единственная служба, которую мое приложение использует с пользовательского устройства, — это служба Nordic UART, которая не является уникальной для устройства, поэтому ее нельзя использовать для его идентификации. Это пользовательское устройство, предназначенное только для работы с пользовательским приложением, но у него нет пользовательской службы для его идентификации.