嗨,对话框中,
我修改了你的sample128程序,根据I2C包值在advertising package中设置设备名称。连接管理器软件下的设备名称是正确的。然而,在推荐的iOS测试软件中,设备名称将显示为NVDS中的值存储。
我替换了部分程序在app_adv_func,我不认为我使用设备名称值在NVDS。
/ * #如果(NVDS_SUPPORT)
device_name_length = NVDS_LEN_DEVICE_NAME;
if (nvds_get(NVDS_TAG_DEVICE_NAME, &device_name_length, &device_name_temp_buf[0])) != NVDS_OK
# endif / / (NVDS_SUPPORT)
{
//获取默认设备名(如果空间不足则没有名称)
device_name_length = strlen (APP_DEVICE_NAME);
memcpy (&device_name_temp_buf [0], APP_DEVICE_NAME device_name_length);
}
*/
device_name_length = 12;
memcpy (&device_name_temp_buf [0] buf 12);
我确信buf中的数据是正确的。你能帮我一下吗?
谢谢,

你好,
不幸的是,iOS保留了它过去看到的设备的记录,并且不会刷新设备名称,除非你关闭和打开蓝牙。Android应用程序BlueLoupe(在谷歌Play上可用)将反映正确的名称。
嗨MHv_Dialog,
非常感谢您的快速回复。这就解决了我的很多问题。我一整天都对那些疯狂的名字感到困惑。
谢谢,
我之前花了一天时间做同样的事。非常令人沮丧!
一般来说,对于那些拥有带有软件狗的专家工具包的人来说,最好的设置是运行连接管理器并将软件狗作为中心启动。这种设置不会遭受任何问题,你有与iOS和Android。每次扫描都是一次全新的扫描,每次连接都是一次完整的发现。你会清楚地看到设备在传输什么,而不是一些来自内存的旧数据。