不完整的VS 128位服务ID的完整列表

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
4个帖子/ 0新
最后一篇
Ratheesht.
离线
最后一次露面:1年11个月前
加入:2017-01-02 11:08
不完整的VS 128位服务ID的完整列表

你好 ,
你能向我解释,不完整和128位服务UUID的完整列表之间有什么区别。?

如果广告使用ADV_TYPE_INCOMPLETE_LIST_128BIT_SERVICE_ID,则所有128bit Servic UUID都应包含在广告中。

下面的更改我为增量设备名称长度而制作。

原文 - > user_advertise_data“\ x11 \ x07 \ xb7 \ x5c \ x49 \ xd2 \ x04 \ xa3 \ x40 \ x71 \ xa0 \ xb5 \ x35 \ x85 \ x3e \ xb0 \ x83 \ x07”

修改 - > user_advertise_data“\ x0c \ x06 \ xb7 \ x5c \ x49 \ xd2 \ x04 \ xa3 \ x40 \ x71 \ xa0 \ xb5 \ x35”//删除了最后5个字节

它正常工作,但我想知道它是遵循标准吗?
请澄清我,它是正确的还是不正确的?

设备:
mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨Ratheesht,

嗨Ratheesht,

放置在广告字符串中的标志表示外设支持的服务,因此“128位服务UUID的完整列表”意味着在该特定的广告字符串中,设备支持被声明的所有128位服务另一方面,如果设备支持多个服务,但在广告字符串中没有足够的空间,则BLE规范可以选择外围设备,以声明它包含更多由广告字符串指示的服务。通常是基于广告字符串,以便连接到外围设备(他们检查广告字符串,以便知道它们是否对广告字符串中提供的服务感兴趣),因此如果他们发现广告字符串通过完整的服务列表,可以轻松地确定它们是否应该连接,另一方面,如果使用不完整的标志,这意味着它最多可以决定它是否将连接到外围设备以检查可用的服务。

所以你上面放置的内容并不适当,因为主机(DA14580)无法匹配uuid,因为您声明了这是一个不完整的UUID,所以不完整的UUID是指提供的服务由设备而不是如果128位UUID完成而不是。

谢谢mt_dialog.

Ratheesht.
离线
最后一次露面:1年11个月前
加入:2017-01-02 11:08
嗨mt_dialog,

嗨mt_dialog,
我明白了你的观点,但我想增加我的设备广告名称如下
#define user_device_name“dialog-1”到#define user_device_name“dialog-1dca02”.i.e名称大小从8中增加到13(这就是为什么我减少UID长度)

我在主机和设备(user_advertise_data“\ x0c \ x06 \ xb7 \ x5c \ x49 \ xd2 \ x04 \ xa3 \ x40 \ x71 \ xa0 \ xb5 \ x35”)中使User_Advertise_Data更改

我的问题是:

1.我需要增加我的设备名称长度,我该怎么办?
2. user_advertise_data的每个字节都有不同的含义,或者是每个字节表示不同的服务?如果是的,请提供更多的链接以了解更多。

mt_dialog.
离线
最后一次露面:3个月4天前
职员
加入:2015-06-08 11:34
嗨Ratheesht,

嗨Ratheesht,

1.如果我在user_device_name定义中将设备的名称放在user_device_name定义中,那么如果广告串中有足够的空间,那么设备的名称将放在广告字符串中,如果它不适合它将放置在扫描响应数据中,如果它不适合扫描响应数据,它根本不会被放置,因此您必须忽略一些字节,从而熄灭广告字符串或扫描响应数据字符串。

2.是,在广告字符串上,字符串中的数据由它们的长度及其标志标记,您将能够找到有关蓝牙核心规范中的标志和数据的更多信息。

谢谢mt_dialog.