微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > attDevice Name 与 Local Name的区别

attDevice Name 与 Local Name的区别

时间:10-02 整理:3721RD 点击:

亲爱的TI工程师:

您好!请问下CC2540里面的Device Name 与 Local Name 的区别是什么?他们可以写成不一样的吗?

我发现我如果把 attDeviceName 设置成 a,Local Name 设置成a1234,用lightblue搜索,搜到显示的名字为 a1234,而不是a,

但是如果连接一下,然后断开,再搜索,搜到显示的名字就变成了 a,这是怎么回事呢?

我一直理解的是ligtblue 上应该显示的是我的广播名字,为什么没进行一次连接,会显示的是我的 Local Name?

谢谢!

可以设置成不一样的。

应该是显示Device Name的。名称应该是上层软件刷新的问题。可以通过sniffer工具看一下发包来协助判断

Local name其实取决你的scanRspdata. 而搜索显示的名字由attDeviceName 决定。

发起连接才会有scanrequest和scanrsp交互,手机才能从你的scanrspdata中知道你现在的local name.否则他会使用上一次的记录。

static uint8 scanRspData[] =
{
// complete name
0x14, // length of this data
GAP_ADTYPE_LOCAL_NAME_COMPLETE,
0x53, // 'S'
0x69, // 'i' 69
0x6d, // 'm'
0x70, // 'p'
0x6c, // 'l'
0x65, // 'e'
0x42, // 'B'
0x4c, // 'L'
0x45, // 'E'
0x50, // 'P'
0x65, // 'e'
0x72, // 'r'
0x69, // 'i'
0x70, // 'p'
0x68, // 'h'
0x65, // 'e'
0x72, // 'r'
0x61, // 'a'
0x6c, // 'l'

// connection interval range
0x05, // length of this data
GAP_ADTYPE_SLAVE_CONN_INTERVAL_RANGE,
LO_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ), // 100ms
HI_UINT16( DEFAULT_DESIRED_MIN_CONN_INTERVAL ),
LO_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ), // 1s
HI_UINT16( DEFAULT_DESIRED_MAX_CONN_INTERVAL ),

// Tx power level
0x02, // length of this data
GAP_ADTYPE_POWER_LEVEL,
0 // 0dBm
};

Hi WBJ,

从sniffer抓包来看,广播的数据只能看到服务和是否可被发现的属性,Device Name好像是无法看到。

Respone Data里面就是我设置的 Local name

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top