了解更多常见问题教程

19个帖子/ 0新
最后一篇文章
Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
连接滴

你好,

我通过使用无附加固件映像Defeless_531_Standalone_set_two.hex,通过在CP2104上通过2线UART和USB / UART转换器连接到计算机的一对DA14531微小模块。在UM-B-140的3.3节中建立它们之间的连接工作。但是Probelm是模块在大约3分钟后下降连接。是否可以修复它,以便连接将无限期保持活跃?

另外两个预编译固件映像(无代码\u 531_独立.hex和无代码的_数据泵.hex)没有这个缺点,但我需要I2C支持。我从源代码处重新编译了独立的\u set \u two项目,但它在2-3分钟后仍然会断开连接。如果我通过添加I2C特性来重新编译设置一个固件,也会发生同样的情况。对话小组-请建议如何解决这个问题。

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨Sergei Bezroukov,

嗨Sergei Bezroukov,

谢谢你的问题。

>>>但Probelm是模块在大约3分钟后下降连接。

您能否提供更多细节?连接下降?您是否在命令中发送任何特定的?你能在调试模式下运行它吗?

>>> I2C支持

您是否意味着有一个连接到TINE模块的I2C接口,您的要求是读取和发送I2C数据?

我建议在调试模式下运行这个项目,并检查它是否卡在断言NMI中。

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
谢谢你的提示

感谢您的及时回复!

I2C与该问题无关,因为到目前为止,我甚至没有向该模块发出任何I2C命令。而且,它没有与之连接的从属设备。我使用的唯一模块引脚是p0u5和p0u6,用于将其连接到外部USB-UART转换器。

我在keilv5.27.1.0的免费版本中使用了无代码sdk6.380.10.4,并注释掉了文件user\AT\u command.h(见附件)中的一些AT命令,以使无代码的独立图像低于32K的限制。按照你的建议,我在seggerj-Link调试器下的debug中运行了它。在启动我在+SLEEP=0命令下给它的代码之后,模块在下一行以OK和+AWAKE响应。然后我使用Cypress CySmart工具和他们的加密狗作为中央设备连接到这个小模块。在建立连接后,模块以+CONNECTED(TeraTerm)响应,我可以在CySmart中探索它的服务和属性,用作BLE扫描工具。在这一点上,一切工作正常,如预期-我可以看到模块的特点概述了手册。然后我让模块在连接模式下空转,即TeraTerm不发出命令,CySmart也不通过蓝牙发出命令。如前所述,连接在大约3分钟后断开。调试器没有显示任何可疑的东西,绝对没有NMI,实际上它没有显示任何东西,只是运行模块代码。TeraTerm reports+READY和CySmart报告连接断开。

如果你不知道CySmart,我做了同样的实验,用一对531个小模块建立了蓝牙连接。其中一个运行预编译的映像(不管是哪一个),其他模块运行我编译的映像。相同的连接中断发生在3分钟后。但是,如果两个模块都运行预编译的数据泵或独立映像(预编译的意思是SmartBond Flash Programmer中提供的映像)工具,则不会发生连接中断。但一旦其中一个模块加载了预编译的独立集2,就会发生连接中断。所以,预编译的set2映像和SDK源代码有问题。

我写I2C只是因为我需要那个选项。到目前为止,我甚至没有尝试它是如何工作的,所以这个问题肯定与I2C无关。

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨Sergei Bezroukov,

嗨Sergei Bezroukov,

由于应用程序代码不会卡在任何地方(NMI/WDOG/assertion),因此共享嗅探器日志以了解空中发生的事情将非常有用。

有没有可能使用一个BLE嗅探器工具和共享一个嗅探器捕获?

您有定制板,或者您正在使用任何或dks?此外,如果使用睡眠模式,则应使用4个UART信号(URX / UTX / RTS / CTS)。

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
干得好。附带的

干得好。附加的存档有我的硬件照片(仅为DA14531模块和CP2104 USB-UART)以及BLE事件日志。日志显示,连接建立后3分钟(最后3条记录),531发出的连接超时。我不使用睡眠模式。

附件:
PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨Sergei Bezroukov,

嗨Sergei Bezroukov,

在附加的日志中,断开连接的原因是连接超时。根据Bluetooth LL核心规范,连接超时错误代码表示给定连接的链路监督超时已过期。监视超时在user\u connection\u param\u conf结构中设置。

是否也能说明设备在断开连接后是否再次开始广告?您可以在断开连接回调中添加断点-user\u on\u disconnect()–并检查断开连接的原因。请参阅gapc\u disconnect\u ind structure。

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
是的,在放下枪之后

是的,丢弃连接后,DA设备再次启动广告。您是对的:链接监督已过期,因为DA14531停止响应连接事件。

我通过使用Silicon Labs Simplicity Studio及其雷鸣簿感测2板作为刚刚连接到DA14531的中央,并在保持连接的同时无效,使用Silicon Labs Sense 2板。在附加的存档中,简单的Studio网络分析仪提供了两个图像。在这些图像上,设备90:FD:9F:7B:86:16是我的中央和DA:E4:D9:A6:F6:E9是DA14531。在名为connection_parameters的图像上,您可以看到DA14531请求设置连接延迟5和监控超时1250ms,由客户端接受(请参阅事件详细窗口)。然后在图像log2上,您可以根据连接延迟,通过不响应串联的5个连接间隔,根据连接延迟,验证DA14531。但是在这一情况下,在138年代之后,它是一个较长的系列没有响应的数据包,导致中央的超级性超时。我也看到了这个原因(错误0x208)在第3图像上的Central设备中的Tera-术语输出上。

从这些日志可以看出,经过一段时间(2-3分钟),DA14531会无缘无故地停止响应连接事件。所以,Dialog-你为什么不修复你的软件呢。这样的行为绝对是个错误。通过将提供的源代码编译并加载到两个模块或开发板中,您可以很容易地说服自己。

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
好的,对话,我决定

好的,Dialog,我决定按照你的建议,在user\u codeless.c文件中的user\u on\u disconnect()函数中添加几个断点。结果表明,在断开连接后,你提供的代码不会进入这个函数。进一步的研究表明,模块在断开连接后会自行重置,如果在main()中添加断点,代码将停止。所以,我认为您需要为您的软件开发组创建一个票证。如果你要我做这件事,请给我指示。

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨Sergei Bezroukov,

嗨Sergei Bezroukov,

你能在安装了调试器的情况下运行它并分享一个在断开连接后代码被卡住的屏幕截图吗?

设备是否从系统RAM或SPI闪存引导?

说实话,我有点困惑。您能否用SmartConsole移动应用程序复制此问题?

在我这边,我无法复制它,无代码的工作非常完美。

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
我再次在调试器中运行它,

我再次在调试器中运行它,屏幕截图附在后面。代码不会卡在任何地方,它只是重置模块,main()函数重新开始。您将在屏幕截图上看到它,该截图显示调试器在断开连接后停止的位置。所以,这个模块已经准备好建立一个新的模块了,如果我继续运行它,它就可以工作了。但新的连接也会在3分钟后断开。同样,在建立连接之后,我不与模块通信—只是让它处于空闲状态。在我看来,这就像看门狗的行为。

我不使用任何(外部)闪光灯,只需连接到CP2104 USB转换器的裸模块,请参阅附图,并且不确定设备如何在内部启动。我刚刚编译了无附加的软件(V6.380.10.4)图像,用于无附加_531_SET_TWO_STANTalone,无需任何更改,并通过SWD接口将其加载到我的两个模块中。因此,它根据软件中的算法靴子。并且它在每个模块上都适用 - 在不活动3分钟后下降连接。

通过使用Android(三星Galaxy S8)作为客户端的SmartConsole应用程序来观察到相同的连接下降行为。有什么想法还有什么检查?

稍后添加(重要):我刚刚注意到,如果我向在调试器下运行的模块发出ATI命令,响应是无附带DA14531 V_6.380.10.4这与我使用的SDK版本匹配。但是,如果我现在用调试器断开连接重启模块,则对ATI命令的响应变为无附带DA14531 V_6.380.9.10(??!!!) 也许这就是行为不端的原因?

附件:
Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
好吧,这些天我知道了

好吧,这几天我了解到,如果一个人从Keil内部(在degug模式下)和外部用Dialog SmartBond Flash programmer编程模块,那么结果是不同的。也就是说,在用Flash编程器刷新我编译的代码之后,它会显示正确的固件映像版本da14531 v_6.380.10.4无论你如何启动它(我的意思是在Keil的调试会话中,也与Jlink调试器断开连接)。因此,在中概述的固件图像之间的不匹配稍后添加我上面的帖子的一部分得到解决。但是,该模块仍在3分钟后丢弃连接。我是唯一一个经历的人吗?

对话小组:如果你的连接没有下降,你能给我发送十六进制图像吗无码\u 531 \u集合\u 2_独立.hex那对你很好?

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨,谢尔盖,

嗨,谢尔盖,

你在大学里有一个很好的嗅探工具吗?我们想分享一个有价值的捕获,这样我们就可以了解空中正在发生的事情。这将真正帮助我们更好地了解根本原因。

你能用另一部运行SmartConsole应用程序的手机复制这个问题吗?你只试过三星Galaxy S8吗?

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
亲爱的对话小组!我有

亲爱的对话小组!我已经提供了以上两个BLE捕获收集不同的捕获软件和硬件。其中一个由Cypress CySmart工具及其软件狗CY5677采集,另一个由Silicon Labs网络分析仪采集。附件是北欧半导体公司BLE-dongle PCA10031及其Sniffer 3.0软件(与Wireshark(v3.2.5)协同工作)收集的另一个最详细的捕获。附带的捕获涉及两个设备(运行SmartConsole的Galaxy S8手机和带有MAC 48:23:35:00:07:AA的DA14531模块),可以用Wireshark打开。在每一种情况下,在建立连接之后,我都让连接处于空闲状态。这些是我所有的嗅探工具。

我已经在我妻子的另一部Galaxy S8手机、我的旧款Galaxy S5手机以及我作为主机使用的至少3台其他不支持通话的设备上复制了连接中断问题。DA14531模块只是停止了对主连接事件的响应,并自行复位(不过,我不确定什么先发生)。同样,只有将无代码的\u531\uStandalone\uSet\uTwo映像加载到模块中时,我才会遇到这种情况。与其他两个可用的预编译映像(codeless_531_datadump和codeless_531_standalone)的连接似乎工作正常,即3分钟后没有连接断开,除非我自己从提供的源代码编译它们。在后一种情况下,无论编译哪个图像,都会出现连接中断。

我使用的预编译图像是由Dialog SmartBond Flash程序员提供的。我要求你上面给我的图像,你正在使用的测试。请做吧。另外,请在你的硬件上尝试我的附加十六进制。

附件:
PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03

嗨,谢尔盖,

我对混乱道歉 - 刚看到附加的嗅探器日志。最后,我可以用Dodeless_531_Standalone_set_two.hex复制它并使用Flash程序员工具。让我在内部将其升级到团队中,我会尽快回复你。

谢谢,PM_DIALOG.

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨,谢尔盖,

嗨,谢尔盖,

很抱歉我反应太晚了。我从团队内部得到了反馈,很快就会得到解决。我会让你知道在这个论坛线程,一旦修复被释放。

任何其他评论/反馈撤销无附庸不仅仅是欢迎!

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
非常感谢。我在找

非常感谢。我期待着这些问题得到解决。

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨Sergei Bezroukov,

嗨Sergei Bezroukov,

新无附加无线环版6.380.12.6已在线发布。现在可以从无附件的门户下载:

//www.xmece.com/亚博电竞菠菜products/smartbond-codeless-commands

谢谢,PM_DIALOG.

Sergei Bezroukov.
离线
最后一次露面:3个月2周前
已加入:2020-06-25 00:28
谢谢,对话团队。这个

谢谢,对话团队。解决此问题已得到解决。等待解决I2C问题......

PM_DIALOG.
离线
最后一次露面:20小时3分钟前
工作人员
已加入:2018-02-08 11:03
嗨,谢尔盖,

嗨,谢尔盖,

感谢您接受我的回答,并很高兴新的无代码版本修复了这个问题。关于I2C问题,我会在您的其他论坛帖子中回复您。。

谢谢,PM_DIALOG.