尊敬的Di雷竞技电竞平台alog半导体公司:
我完成了教程部分“training_03_custom_profile_gatt_cmd_example_v2 .2”,现在我能够从iOS应用程序LightBlue控制我的IoT MSK DA14585。
1.连接IoT-585设备
2.选择wrbl_dws_control_char 2EA7-…-2409的UUID
3.写数字0x17使LED闪烁或0x18停止LED闪烁
现在我需要实现这个GATTC消息发送从我的设备与自定义FW基于主动扫描器的例子。
1.我可以扫描设备
2.我可以看到IoT-585设备
3.我可以成功连接到IoT-585
4.我不知道如何发出一个消息包。
你能帮我指出另一个话题或信息源吗?
谢谢你,彼得
设备:
嗨hwidvorakinfo,
你在MSK项目中实现了自定义服务吗?
>>>>我不知道如何发出一个消息包。
我假设你想写一个特征从手机到MSK。你想写哪一个特点?
谢谢,PM_DIalog
你好PM_dialog,
请让我解释一下目前的情况。
1.我使用MSK是,我有MSK工具包与原始FW在它(外围角色)
2.我正在为我的设备开发一个基于DA14585的自定义中央FW(中央角色,能够扫描和连接到外围设备,user_on_connection回调工作)
3.我正在努力使用一个发现特性来查找具有特定UUID的外围服务和特征
我在这里讨论了很多主题(包括RW-BLE-GATT-IS文档大约三次),但多次提到的DSPS项目让我感到困惑。struct spsc_env_tag数据结构对我来说是一个奇迹,因为它是DSPS项目特定的东西。
如果我说错了,请指正:
1.我需要得到一个处理的特征与UUID我知道(wrbl_dws_control_char这里,从MSK FW)
2.然后发出一个只有单个数据字节的消息0x17开始LED闪烁或0x18停止LED闪烁
现在我有:
我在上面的两个处理程序中都设置了断点,但代码并没有运行。为什么呢?
切赫
好的,我会尽量简单明了:
1.函数user_spsc_enable()是SPS_CLIENT角色的处理程序:
2.下面是user_spsc_enable()主体:
在不使用SPS_CLIENT角色的情况下,启动和完成发现过程的步骤是什么?请把它们列出来。
嗨hwidvorakinfo
DA14585 MSK的支持,提供了我们的支持网站。正如您所正确提到的,DA14585配置在外围角色中。你把它设置成中央模式了吗?
谢谢,PM_Dialog
你好PM_dialog,
请让我解释一下目前的情况:
事实:
1.我使用MSK是,我有MSK工具包与原始FW在它(外围角色)
2.我正在为我的另一个基于DA14585的设备开发一个自定义的中央FW(中心角色,能够扫描和连接到外围设备,user_on_connection回调工作)
3.我正在努力使用一个发现特性来查找具有特定UUID的外围服务和特征
我的问题:
1.函数user_spsc_enable()是SPS_CLIENT角色的处理程序:
2.下面是user_spsc_enable()主体:
在不使用SPS_CLIENT角色的情况下,启动和完成发现过程的步骤是什么?请把它们列出来。
亲爱的PM_dialog,
我最近有了一些进步,我想请您回顾一下如下所述的状态。我的目标是发现在MSK中定义的具有UUID ws_control_uuid ({0x09, 0x24, 0x40, 0x3f, 0x18, 0x26, 0x97, 0xb0, 0xbb, 0x44, 0x44, 0x7d, 0x70, 0x89, 0xa7, 0x2e})的DWS外围设备服务。
1.增加了一个新的prf_func回调。TASK_ID_DWS_CLIENT是enum KE_API_ID中的一个新项:
2.User_dws_client_create_db()基本上是一个消息触发函数,包含以下内容:
3.user_dws_client_enable()是DSPS项目的user_spsc_enable()函数的派生。该函数应该触发DWS_CLIENT_ENABLE_REQ消息:
4.dwws_client_enable_req处理程序定义在:
5.当dws_client_enable_req_handler发出带有GATTC_DISC_BY_UUID_SVC参数的GATTC_DISC_CMD时,该命令应该发现与DWS_CONTROL_UUID的所需UUID对应的服务
6.这里的问题是,代码使用status == ATT_ERR_ATTRIBUTE_NOT_FOUND与start句柄== 0命中dsws_client_cmp_evt_handler:
我非常确定发现参数中的UUID是正确的。
这种行为的原因是什么?
请描述在user_dws_config.h中定义的MSK特征和我从DSPS中提取的中心代码中的数据结构之间的关系:
好的,我成功地设置到我想要的点:
1.从我的定制PCB与DA14585 FW连接到MSK设备与库存FW IoT-585
2.发现MSK设备业务和特征
3.Send CMD=0x17开始MSK LED闪烁,Send CMD=0x18停止MSK LED闪烁
以下是上述项目的步骤和重点:
答:扫描
scan_start()函数:
User_scan_stop () app_easy_timer处理器
b连接
app_easy_timer hander:
user_connect_to_device功能:
user_on_connection回调:
在app.c中定义的prf_func_callback:
user_dws_client_create_db功能:
user_dws_client_enable功能:
default_state_handlers:
dws_client_enable_req_handler:
dws_client_cmp_evt_handler:
dws_client_event_ind_handler:
dws_client_disc_char_ind_handler:
dws_client_disc_svc_ind_handler:
dws_client_disc_char_desc_ind_handler:
dws_client_data_tx_req_handler:
BLE数据发送例程:
user_send_ble_data功能:
c .特点:
D.数据结构:
我相信它将帮助另一个为DA14585实现非常简单的中央设备FW而挣扎的人。
如果您需要我联系,请在领英上与我联系https://www.linkedin.com/in/petr-dvorak-hw/
嗨,彼得,
如前所述,585-MSK作为外设提供,并与适当的硬件一起提供。但是,谢谢你的建议和解决方案。我会试着看一遍,评估一下。
问候,PM_Dialog
你好PM_Dialog,
我最新的帖子并不是要建议改变585-MSK项目。我使用585-MSK作为外设,我说过很多次。我一直在开发一个自定义板,为我的自定义板,我一直在开发一个自定义FW。
对于中心角色的固件示例在这里是非常罕见的。唯一提到的项目是DSPS项目,一次又一次。但是要在自定义项目中实现Central角色并不是那么简单。我试着帮助这里的社区。在我能够达到我的目标之前,我花了大约两周的时间研究文档和DSPS项目。
切赫