• Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

BLE SoC PHY6202

pvvx

Активный участник сообщества
Прочитайте REDME - каждый тип устройства имеет свою прошивку. И все изначально прошиваются через UART.
 
Почему при смене имени устройства или mac адреса устройство определяется как "Неизвестное или неподдерживаемое устройство (mac address)"
Тип датчика THB2, прошивка последняя.
 
Дополнение к вопросу, это происходит после снятия питания с устройства, например для замены батарейки.
 

pvvx

Активный участник сообщества
По тому, что не прочиталось имя устройства. Имя читается при активном сканировании, дополнительным запросом.
 
Спасибо, но понятней не стало.
И не совсем полно описал проблему.
Я прошиваю устройство, меняю имя или MAC и если не снимать питание, то устройство присутствует в эфире под новым именем или MACом. И через PHY62x2BTHome.html находиться под новым именем.
Так-же у меня есть самописный BLE сканер на ESP32, он так-же его видит, и читает с него данные.
Но стоит снять питание с устройства, и PHY62x2BTHome.html видит в эфире "Неизвестное или неподдерживаемое устройство (mac address)", а ESP32 устройство просто не видит.
Если подключиться к "Неизвестное или неподдерживаемое устройство (mac address)" через PHY62x2BTHome.html , то имя или MAC отображается новое.
Если снова прошить через UART устройство, то оно появляется в эфире под своим именем.
И как использовать - Имя читается при активном сканировании, дополнительным запросом.
 

pvvx

Активный участник сообщества
1. Не описан тип системы - Linux или Windows? Какой адаптер BT?
По умолчанию (default) интервал между рекламами у THB2 5 секунд. Стандарт BLE предусматривает максимум 10 секунд.
В Linux, в Bluez, всё не по стандарту - необходимо изменить в конфигах Bluez все интервалы на стандартные и добавить всякие опции в /lib/systemd/system/bluetooth.service типа ExecStart=/usr/local/libexec/bluetooth/bluetoothd --experimental
Только тогда в Linux кое-как начнут работать с устройствами BLE Chrome-подобные эксплореры .
В Windows функция сканирования BLE в Chrome-подобных эксплорерах тоже ущербная, а в Andriod урезанная.
Это из-за Linux - не могут дописать API BLE в Chrome, т.к. Linux не поддерживает стандарты Bluetooth/BLE с 2014 года.

2. Типов сканирования BLE бывает два: активный и пассивный.
Только при активном сканировании внешний адаптер BT запрашивает дополнительную информацию путем передачи запроса. В пассивном - не запрашивает.
Имя устройства типично для всех BLE передается в дополнительном ответе, для которого необходим запрос (активное сканирование). Причина в том, что имя бывает длинное и в основной блок передачи рекламы BLE не лезет.
Если устройство не примет запроса, то и не передаст имени, а будет известен только MAC. Причин может быть множество - слабый передатчик у BT адаптера, большой шум в эфире, такое ПО в BT адаптере, ...

Сканер в пассивном режиме сам не запросит имени у BT устройства, но если запрос сделает какой-то другой адаптер, то словит ответ...
 

nikolz

Well-known member
Предположу, что у чел проблема в том, что он меняет мас и имя текущее, не записывает его во флеш. в итоге у него новое имя есть лишь при прошивке и до снятия напряжения.
 

pvvx

Активный участник сообщества
Предположу, что у чел проблема в том, что он меняет мас и имя текущее, не записывает его во флеш. в итоге у него новое имя есть лишь при прошивке и до снятия напряжения.
В проекте BTHome THB1, THB2, THB3, BTH01, TH05 (HW: v1.3..1.6), TH05F нет такой возможности - при смене MAC или Имени устройства оно всегда записывается в Flash.
Но ещё есть ошибки в ROM чипа и бардак в SDK.

@АлексейМ - эта кривизна исправлена в новой версии с номером 1.9. Будет на git через часик...
 
Я упоминал про BLE сканер, он реализован на ESP32, но писался на стандартном примере из Arduino.
Собственно вопросов в целом нет, но хотелось бы имена иметь более понятные, потому и меняю.
Но уперся в вышеуказанную проблему.
Я перешил датчики THB и BTH и TH, все работают, но с вышеописанной проблемой.
Но насколько я понимаю автор не относится к сторонникам Ардуино, и потому не прошу посмотреть на мой код. Это к разговору о режимах сканирования.
Поскольку есть опасение, что проблема в этом, сканер работает в пассивном режиме.
Буду разбираться с этим.
 
В проекте BTHome THB1, THB2, THB3, BTH01, TH05 (HW: v1.3..1.6), TH05F нет такой возможности - при смене MAC или Имени устройства оно всегда записывается в Flash.
Но ещё есть ошибки в ROM чипа и бардак в SDK.

@АлексейМ - эта кривизна исправлена в новой версии с номером 1.9. Будет на git через часик...
Проверил на BTH01 - работает.
У себя на сканере в коде ничего не правил.
 

pvvx

Активный участник сообщества
Значит у вас сканер работает в активном режиме - жрет батареи BLE устройств каждый раз запрашивая у них дополнительную передачу...
Т.е. сокращает жизнь батареек на 10..20% (вместо 3-х пакетов рекламы устройству приходится передавать 4-ре и дополняется пауза на время приема запроса после передачи пакета типовой рекламы).
 

pvvx

Активный участник сообщества
У TLSR82xx USB device, а для подключения USB камеры нужен USB host или USB OTG.
 
Сверху Снизу