⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.wsdof.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
6个员额/ 0个新员额
最后发表
DLO.
离线
最后看到:2个月3周前
加入:2017-05-26 16:21
DA14586 DSPS设备偶像

使用提供的DSPS设备演示,我试图添加SUOTA。

我跟随training_06_suota_example_v1.1_0.pdf,也是https://support.dialog-semiconductor.com/guide/faq-da1458x-software-peri..。

我已经编译了所有的东西,我还检查了prox报告程序的源代码进行比较。

但是,在所有内容编译和加载到测试之后,我不再看到对话框DSP应用程序中发布的DSP或在Suota应用程序中看到它。

该代码似乎在运行,因为我可以看到我写的正交编码器,因为我可以在不同的BLE扫描应用程序上看到它,并且可以连接并查看其广告数据。

我认为问题在于
#定义USER_ADVERTISE_DATA " \ x11 \ x07 \ xb7 \ x5c \ x49 \ xd2 \ x71 \ \ x04 \ xa3 \ x40 xa0 \ xb5 \ x35 \ x85 \ x3e \ xb0 \ x83 \ x07 " \
ADV_UUID_SUOTAR_SERVICE

我不认为我理解如何正确格式化USER_ADVERTISE_DATA。“\x11\x07\xb7\x5c\x49\xd2\x04\xa3\x40\x71\xa0\xb5\x35\x85\x3e\xb0\x83\x07”这是默认的DSPS字符串。

谢谢你的帮助!

设备:
DLO.
离线
最后看到:2个月3周前
加入:2017-05-26 16:21
我想我开始明白了

我想我开始得到它,我编辑添加ADV_UUID_SUOTAR_SERVICE ("\xF5\xFE" /* SUOTAR Service */)在定义的末尾,并将大小从0x11更改为0x13

#定义USER_ADVERTISE_DATA “\ X13 \ X07 \ XB7 \ x5c \ X49 \ XD2 \ X04 \ XA3 \ X40 \ X71 \ XA0 \ XB5 \ X35 \ X85 \ x3e \ XB0 \ X83 \ X07 \ XF5 \ xFE如果”

我还添加了:
#define SPS_SERVICE_UUID {0xb7, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}

#define SPS_SERVER_TX_UUID {0xb8, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}
#define SPS_SERVER_RX_UUID {0xba, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}
#define SPS_FLOW_CTRL_UUID {0xb9, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}

但是,当我尝试编译时,我得到这些错误:
common\src\profiles\spss\user_sps_config.h(94):错误:#146:太多初始化值
static const struct att_uuid_128 sps_service = {
PS_SERVICE_UUID};

搜索进一步,我看到了ATT.H(ATT_UUID_128_LEN)的定义我向IT添加了2个字节并编译和工作。我可以在DSPS应用程序中看到设备。虽然没有关于Suota应用程序。
编辑:
这个应用看起来不稳定,它曾经在广告中出现过,但现在它只是在arch_system.c中的system_init()之后崩溃

更改ATT_UUID_128_LEN回到0x0010修复了崩溃问题。需要弄清楚如何添加Suota Adv String而不是现在崩溃......

...

PM_Dialog
离线
最后看到:2周2天前
工作人员"title=
加入:2018-02-08 11:03
嗨dlo,

嗨dlo,

SUOTA是一个配置文件,而DSPS是一个演示项目,所以为了将SUOTA功能添加到DSPS演示中,你需要做什么,除了OTA项目,在软件实现部分(如何将SUOTA配置文件添加到我的SDK应用程序)的FAQ中也有一些指南,用于5.0.3 SDK,这与5.0.4 SDK完全相同。你可以在支持网站的顶层菜单上找到FAQ部分,请检查下面的链接:

https://support.dialog-semiconductor.com/guide/frequently-asked-questions

从您在文章中提到的内容来看,在开始本教程中描述的过程之前,我认为您已经将SUOTA配置文件添加到DSPS项目中。你能分享一下你定义的广告数据吗?另外,如果你能说明一下你的问题是什么,那也会很有帮助。你可以有SUOTA,但你不知道如何添加到广告字符串?

谢谢,PM_Dialog

DLO.
离线
最后看到:2个月3周前
加入:2017-05-26 16:21
你好,

你好,

在启动SUOTA之前,我尝试过FAQ,但它似乎不适用于DA14586,因为它使用SUOTAR而不是SPOTAR,我没有在DSPS项目的SDK文件夹中找到SPOTAR文件。我在user config module.h文件中找到了#define,它已经包含在内了。因此,我在KEIL中将suotar文件添加到项目中,并在SDK示例中的代理报告程序中查看了suotar示例,以确保事情尽可能接近。

我认为SUOTAR是在代码中正确实现的,但不是广告的SUOTA应用程序看到。上面我试图解释的是我是如何投放广告的:

这是原始的DSPS广告字符串:
#define user_advertise_data“\ x11 \ x07 \ xb7 \ x5c \ x49 \ xd2 \ x04 \ xa3 \ x40 \ x71 \ xa0 \ xb5 \ x35 \ x85 \ x3e \ xb0 \ x83 \ x07”
这是修改后的,添加了ADV_UUID_SUOTAR_SERVICE
#定义USER_ADVERTISE_DATA “\ X13 \ X07 \ XB7 \ x5c \ X49 \ XD2 \ X04 \ XA3 \ X40 \ X71 \ XA0 \ XB5 \ X35 \ X85 \ x3e \ XB0 \ X83 \ X07 \ XF5 \ xFE如果”
编译此工作,但在应用程序中没有显示任何内容。

然后我也将它添加到:
#define SPS_SERVICE_UUID {0xb7, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}

#define SPS_SERVER_TX_UUID {0xb8, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}
#define SPS_SERVER_RX_UUID {0xba, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}
#define SPS_FLOW_CTRL_UUID {0xb9, 0x5c, 0x49, 0xd2, 0x04, 0xa3, 0x40, 0x71, 0xa0, 0xb5, 0x35, 0x85, 0x3e, 0xb0, 0x83, 0x07, 0xF5, 0xFE}

但是,当我尝试编译时,我得到这些错误:
common\src\profiles\spss\user_sps_config.h(94):错误:#146:太多初始化值
static const struct att_uuid_128 sps_service = {
PS_SERVICE_UUID};

进一步搜索,我看到在att.h (ATT_UUID_128_LEN)中有一个定义,我添加了2个字节到它,它编译。然而,在这之后,它崩溃时,我试图运行。调试器显示它在一个错误处理程序中。

附加是我的项目文件,而不包括SDK文件。

感谢您的支持!

PM_Dialog
离线
最后看到:2周2天前
工作人员"title=
加入:2018-02-08 11:03
嗨dlo,

嗨dlo,

Suota应用程序的关键信息是检查16bits服务UUID的完整列表,以查看它是0xFEF5,否则将筛选设备。

所以,请更新以下广告数据:

#定义USER_ADVERTISE_DATA”\ x11 \ x07 \ xb7 \ x5c \ x49 \ xd2 \ x71 \ \ x04 \ xa3 \ x40 xa0 \ xb5 \ x35 \ x85 \ x3e \ xb0 \ x83 \ x07 \x03 \ x03 \ xf5 \ xfe

在发布数据中添加完整的16位服务UUID列表:“0x03, 0x03, 0xF5, 0xFE”。

  • 0 x03:长度
  • 0 x03: ADV_TYPE_COMPLETE_LIST_16BIT_SERVICE_IDS
  • 0xF5, 0xFE: ADV_UUID_SUOTAR_SERVICE

谢谢,PM_Dialog

DLO.
离线
最后看到:2个月3周前
加入:2017-05-26 16:21
谢谢!那是

谢谢!这是非常丰富的。