DA14581停止发送广告

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
2个职位/ 0个新职位
最后发表
TiKoEsope
离线
最后看到:1个月前
加入:2019-02-25 11:51
DA14581停止发送广告

你好,

我有一个问题,得到芯片发送广告,因为我需要他们。
我需要做的是按照客户的要求,将两个不完整的服务id列表添加到单个广告中。
#定义USER_ADVERTISE_DATA \“\ x03”
ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS \
\ \ x70 \ x31
\ \ x03
ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS \
“\ x70 \ x30”

设置此值将导致调试器直接停止而不发送任何通告,它以nmi_handler.c结束。如果我删除一个不完整的列表,广告就会被发送。
工作原理:
#定义USER_ADVERTISE_DATA \“\ x03”
ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS \
“\ x70 \ x31”
作品也:
#定义USER_ADVERTISE_DATA \“\ x03”
ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS \
“\ x70 \ x30”
作品也:
#定义USER_ADVERTISE_DATA \“\ x03”
ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS \
\ \ x70 \ x31
\ \ x03
ADV_TYPE_COMPLETE_LIST_16BIT_SERVICE_IDS \
“\ x70 \ x30”

我也尝试了这个DA14585在SDK 6.0.10.511…结果是一样的。

我希望有人能给我一个提示,为什么芯片拒绝发送两个id都不完整的广告。这可以通过使用sdk的基本示例复制,并将其设置为user_config.h中的广告数据。

最好的问候,
蒂姆

设备:
PM_Dialog
离线
最后看到:7小时31分钟前
工作人员
加入:2018-02-08 11:03
嗨TiKoEsope,

嗨TiKoEsope,

不允许在用户发布数据中有两个相同的标记,在本例中是ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS。堆栈会返回一个错误,你会得到一个NMI。如果你想有两个不同的不完整服务,你应该定义如下的ser广告数据:

#define USER_ADVERTISE_DATA "\x05"\ ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS\

“\ x70 \ x31 \ x70 \ x30”

长度:0x05 (adv数据中的5字节:0x02 0x70 0x31 0x70 0x30)

标签:ADV_TYPE_INCOMPLETE_LIST_16BIT_SERVICE_IDS (= 0x02)

第一个不完整的服务:0x70 0x31

2st不完整服务:0x70 0x30

谢谢,PM_Dialog