亲爱的对话yabo国际娱乐框半导体,
我通过了教程部分“training_03_custom_profile_gatt_cmd_example_v1.2”,现在我能够控制我的物联网MSK DA14585从iOS应用程序LightBlue。
1.连接IoT-585设备
2.选择wrbl_dws_control_char 2EA7-…-2409的UUID
3.写入0x17使LED闪烁或0x18使LED停止闪烁
现在我需要实现这个GATTC消息发送从我的设备与定制FW基于Active扫描仪的例子。
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项目让我有些困惑。对我来说,结构体spsc_env_tag数据结构是一个奇迹,因为它是特定于DSPS项目的东西。
如果我错了,请纠正我:
1.我需要用UUID来获得句柄,我知道(来自MSK FW的WRBL_DWS_CONTROL_CHAR)
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(能够扫描并连接到外围设备,user_on_connection回调工作)的我的另一个设备开发一个自定义中央fw
3.我正在努力使用一个发现功能来查找具有特定UUID的外围服务和特征
我的问题:
1.函数user_spsc_enable()是sps_client角色的处理程序:
2.下面是user_spsc_enable()函数体:
在不使用sps_client角色的情况下,我可以启动和完成发现过程的步骤是什么?请为我列出它们。
亲爱的pm_dialog,
我最近已经向前迈进了一点,我想请您审查一下如下所述的状态。我的目标是发现MSK中定义的具有UUID DWS_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是枚举KE_API_ID中的一个新项:
2.User_dws_client_create_db()基本上是一个消息触发函数,其内容如下:
3.user_dws_client_enable()是DSPS项目user_spsc_enable()函数的派生函数。该函数应该触发DWS_CLIENT_ENABLE_REQ消息:
4. DWS_CLIEND_ENABLE_REQ处理程序定义为:
5.dws_client_enable_req_handler发出带有GATTC_DISC_BY_UUID_SVC参数的GATTC_DISC_CMD,此命令应该发现与DWS_CONTROL_UUID的所需UUID对应的服务
6.此处的问题是代码命中dws_client_cmp_evt_handler status == agt_err_attribute_not_found with start handle == 0:
我很确定发现参数中的UUID是正确的。
这是什么可能是这种行为的原因?
请介绍user_dws_config.h中定义的msk特性与从DSP中获取的中央代码中的数据结构之间的关系:
好的,我设法设置为我想得出的点:
1.从我定制的PCB DA14585 FW连接到MSK设备与库存FW IoT-585
2.发现MSK设备的服务和特性
3.发送CMD = 0x17开始MSK LED闪烁并发送CMD = 0x18停止MSK LED闪烁
以下是上述项目的步骤和要点:
A.扫描
scan_start()函数:
user_scan_stop () app_easy_timer处理程序:
b连接
user_choose_device app_easy_timer夹头:
user_connect_to_device功能:
user_on_connection回调:
在app.c中定义的Prf_func_callbacks:
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 .的数据结构:
我相信它将帮助另一个人谁与实现一个非常简单的中央设备FW DA14585斗争。
在您希望我到达的情况下,请在LinkedIn上与我联系https://www.linkedin.com/in/petr-dvorak-hw/
嗨,彼得,
如前所述,585-MSK作为外设提供,并与适当的硬件一起提供。但是,谢谢你的建议和解决方案。我会试着对它进行评估。
问候,pm_dialog
你好PM_Dialog,
我最近的帖子并不是想要对585-MSK项目提出任何建议。我使用585-MSK作为外围设备,我说过很多次了。我一直在开发一个自定义板和我的自定义板,我一直在开发一个自定义FW。
任何中心角色的固件例子在这里都是非常罕见的。唯一提到的项目是DSPS项目,一次又一次。但是在自定义项目中实现Central角色并不是那么简单。我试着帮助这里的社区。在我能够达到我的目标之前,我花了大约两周的时间学习文件和DSPS项目。
切赫