2个月前
没有数据在之前开始流数据启用通知
发布的gme_johannes10分 4回复嗨对话框支持,
我们正在开发一个项目基于物联网传感器SDK (DA14585物联网多传感器开发、v6.160.4)
如果我们和连接到设备
1。开始流数据(发送0 x01 char uuid 2 ea78970 - 7 - d44 - 44 - bb - b097 - 26183 - f402409)
只有在这
2。使听通知(char uuid 2 ea78970 - 7 - d44 - 44 - bb - b097 - 26183 - f402410)
传感器不发送任何数据。
在这之后,我们不继续接收数据从设备即使我们断开,重新连接,开关序列
1。使听通知和
2。开始流数据。
这是预期的行为吗?我怎么能让设备重新开始发送数据?
谢谢你!
凯瑟琳
2个月前
我不知道如果你还监测老论坛,我新任命的答案从你的评论
没有数据时开始流
在这里。
嗨PM_Dialog,
谢谢你回到美国。是的,我知道,通知必须启用为了发送通知(明显:))。但只有启用通知空气不会开始发送数据。为了要实现这一目标,必须开始流数据。这取决于顺序,开始启用:
——第一次开始流数据和第二启用通知_does not_开始发送数据。
——第一次启用通知和第二次开始流数据_does_开始发送数据。
我们启用通知:设备不发送数据(在空气中)当启用通知_after_我们发送命令开始流数据。
我们的代码是基于物联网MSK v6.160.4。我们没有实现任何自定义代码接收通知和发送命令开始流数据。
我们特别不更改代码负责撰写和发送传感器数据。
这在以下文件和函数实现:
——文件user_dws_reports。c函数bool user_prepare_multi_sensor_report (…)
——文件user_dws_reports。c函数void user_add_multi_sensor_report (…)
——文件user_dws_reports。c函数void user_send_multi_sensor_report (…)
——文件user_dws_task。c函数user_dws_val_ntf_cfm_handler (…)
当我连接到串行调试控制台(看到的结果任何archprintfs)我可以看到以下错误消息
“错误:NTF下降——<柜台>优秀NTFs”在柜台(ntf_sent_cntr)是一个数字大于15(有一个阈值# define (d)开始印刷这个错误消息,而不是编写和发送数据报告,这也是预配置在上述物联网MSK v6.160.4并不是感动我们)。
每次停止流数据(发送命令停止流数据)并重新启动(发送命令开始流数据)这个计数器增加两个(无论通知是启用或禁用)
这种行为继续当设备从对等设备断开连接和重新连接。
notification-sent-counter ntf_sent_cntr,增加的功能
user_send_multi_sensor_report (…)
以及在
user_dws_reports.c user_send_command_reply(…)(包括文件)
和减少的功能
user_dws_task.c user_dws_val_ntf_cfm_handler(文件)
流媒体数据开始发送0 x01 dws_control_char (uuid 2 ea78970 - 7 - d44 - 44 - bb - b097 - 26183 - f402410)
流数据停止发送0 x00 dws_control_char
这之间的上述行为,我们没有改变。所以我的问题引出:
是设备的行为,不能恢复了通知,想要的吗
(一)甚至当设备断开连接和重新连接时?
(b)在流启动时启用_before_通知(这不是发生在流启动时启用_after_通知)?
我希望这描述清晰。
谢谢你!
凯瑟琳
1个月前
你好,凯瑟琳娜,
物联网MSK的应用程序代码提供wrbl_dws_control_char特征(wriatable)和wrbl_dws_control_reply_char(法定)配置和控制设备
所以,每次设备被连接到一个中央设备,首先你应该写0 x01控制点(wrbl_dws_control_char)特点,wrbl_dws_control_reply_char启用通知,然后开始流数据。如果设备断开连接和贯通,那么应遵循重复上述过程。
如果控制点的特点是用0 x01并开始流数据没有wrbl_dws_control_reply_char启用通知,你将不会看到对等设备的流数据,因为通知应该启用。
谢谢,PM_Dialog
1个月前
亲爱的PM_Dialog,
的过程你描述(1。写0 x01控制点,2。为wrbl_dws_control_reply_char启用通知3所示。启用wrbl_dws_multi_sens_char的通知)不会让设备发送数据吗在所有但把它在一个国家无法恢复(如断开和重新连接),除非完全重启!(这是由于ntf_sent_cntr如上解释说在我漫长的帖子)
与你的声明我将获得传感器数据,如果我不为wrbl_dws_control_reply_char启用通知(但只启用通知wrbl_dws_multi_sens_char)当我写0 x01控制点。
很明显,我不会接收传感器数据如果我不启用通知wrbl_dws_multi_sens_char。
的正确接收数据的过程它常常是无需重新启动/复位
- 为wrbl_dws_control_reply_char启用通知
- 为wrbl_dws_multi_sens_char启用通知
- 开始流数据通过写0 x01控制点
但这不是我的问题。
我的问题是(我只是复制从我最后一次回复):
是设备的行为,不能恢复了通知,想要的吗
(一)甚至当设备断开连接和重新连接时?
(b)在流启动时启用_before_通知(这不是发生在流启动时启用_after_通知)?
谢谢你!
凯瑟琳
2个月前
嗨gme_johannes,
谢谢你的帖子。因为它是一个自定义代码,你能请描述有点问题是什么?如果我没有记错的话,根据标题、设备不发送数据时,才通知同行设备被禁用。在这种情况下,应该启用通知从对等设备为了在空中开始发送数据。
谢谢,PM_Dialog