IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

liuchengbiao
Posts: 5
Joined: Fri Aug 21, 2020 6:32 am

IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby liuchengbiao » Tue Apr 20, 2021 6:05 am

环境

*使用的模块或芯片:ESP32-WROOM-32D
*IDF版本:ESP-IDF Release v3.3.5
*使用的手机:苹果ios;版本:14.4.2版本
*BLE测试工具为:lightBlue
*官方例子:gatt_server

问题描述

具体操作:
(1)首先设置BLE名称为TS-21C04,启动程序
(2)接着更改BLE 名称为ESP-GATTS_DEMO,启动程序
(3)最后的现象如图片所示

---外设名字还是以前的TS-21C04,本地名称为ESP-GATTS_DEMO---使用的是ios系统手机

1111111.png
1111111.png (93.57 KiB) Viewed 8275 times
8a0e9eefd7e3515183ebcc0e5455fce.jpg
8a0e9eefd7e3515183ebcc0e5455fce.jpg (124.4 KiB) Viewed 8275 times
e78a531dd99f89b41c76e691e974cab.jpg
e78a531dd99f89b41c76e691e974cab.jpg (129.89 KiB) Viewed 8275 times
这个问题怎么处理??谢谢!!

liuchengbiao
Posts: 5
Joined: Fri Aug 21, 2020 6:32 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby liuchengbiao » Sun Apr 25, 2021 1:28 am

有人帮忙处理下吗??主要是ios的缓存问题,不过实验了其他的蓝牙模块,进行更改名称后启动,是可以让ios系统直接识别到最新的名称的;不用像esp32那样连接后断开才变成最新的名称

ESP_XuLZ
Posts: 173
Joined: Fri Mar 26, 2021 6:04 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby ESP_XuLZ » Sun Apr 25, 2021 1:53 am

这个我们进行了实验,是由于app或者是手机系统缓存的问题,像你所说的,连接后退出,再进行连接一次后就变成了一个新的name,或者你在更改程序再运行时,尝试下使用其他的蓝牙app进行扫描,得到的设备name应该是你改过之后的名字

liuchengbiao
Posts: 5
Joined: Fri Aug 21, 2020 6:32 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby liuchengbiao » Sun Apr 25, 2021 6:07 am

模块这边不能让手机那边自行更新数据吗?(安卓的没啥问题会自行更新名字,ios系统的不行),我用其他蓝牙模块,给其改名称,ios那边会自行更改名称,esp32这边能实现吗?----有相应的办法吗

liuchengbiao
Posts: 5
Joined: Fri Aug 21, 2020 6:32 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby liuchengbiao » Sun Apr 25, 2021 8:59 am

有人帮忙处理下吗??

ESP_XuLZ
Posts: 173
Joined: Fri Mar 26, 2021 6:04 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby ESP_XuLZ » Sun Apr 25, 2021 9:16 am

我使用的是安卓的lightblue也会出现你所说的这种情况,但这是app的缓存,刷新下就变成新的广播name了,你所说的其他的蓝牙模块可以,请查看下是否前后两次的MAC地址有所变动,如果有变动,app会把他们视为两个设备,那name自然就更新了

liuchengbiao
Posts: 5
Joined: Fri Aug 21, 2020 6:32 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby liuchengbiao » Sun Apr 25, 2021 9:43 am

对,lightblue下拉后会重新扫描下,安卓的lightblue没问题(下拉后,其他蓝牙模块和esp32名称后会更新),而苹果的lightblue就不行了,其他的蓝牙模块前后两次的MAC地址没有变动过,不过苹果lightblue下拉后,其他的蓝牙模块名称会改变,而esp32的没改变(esp32除非连接后在断开,苹果lightblue 重新扫描下才会变成新name)

ESP_XuLZ
Posts: 173
Joined: Fri Mar 26, 2021 6:04 am

Re: IOS连接ESP32 ble,外设名称(peripheral name)和本地名称(local name)不一致

Postby ESP_XuLZ » Sun Apr 25, 2021 10:11 am

我使用同事的iPhone12 (ios 版本 14.4.1)进行测试,也不必连接后再断开才能更新name, 下拉刷新后就已经更新name了

Who is online

Users browsing this forum: No registered users and 74 guests