自动化BLE服务器将数据发送到BLE central

⚠️
嗨,...感谢您来论坛。令人兴奋的消息!我们现在正在迁至我们的新论坛平台,将提供更好的功能,并包含在主对话框网站中。所有帖子和帐户都已迁移。我们现在只接受新论坛上的流量 - 请发布任何新线程https://www.dialog-seminile.com/support.。我们将在未来几天修复错误/优化搜索和标记。
8个帖子/ 0新
最后一篇
vishnuatdialog
离线
最后一次见到:8个月1周前
加入:2017-07-25 07:44
自动化BLE服务器将数据发送到BLE central

你好对话框,
我们已经将IMU传感器与I2C上的DA14585集成,这是成功的。之后,我们为IMU传感器创建了新特性(ACC、GYRO、Temp),并能够通过使用控制点特性(0x01)发送触发器来读取nRF connect应用程序上的所有传感器特性值。为了开发这个应用程序,我们使用了bleèu外围示例。
现在我们想使用BLE中央设备阅读相同的数据,我们想在没有发送任何触发器的情况下进行。就像,当连接到BLE服务器的BLE Central时,它应该在没有任何外部触发的情况下自动发送传感器数据。这是否可以使用可用的堆栈,如果是这样,请告诉我们我们应该在BLE_PERIALIAL示例中执行哪些修改?

谢谢
毗湿奴

关键词:
设备:
MT\u对话框
离线
最后一次见到:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

因此,您想根据585设备创建一个中央应用程序,一旦设备连接到中央,它应该开始从外设或外设通知中央设备与更新值的情况开始读取数据?如果这是这种情况,那么您请求的项目是BLE_APP_PERITERAL的简单MOD。为了实现您必须拍摄一个空项目,将堆栈配置为中心,发出扫描命令,并在收到正确的广告字符串后,您可以发出连接execet。在挑选连接后,您必须发现外围侧的所有特性。这意味着您必须创建一个中央配置文件,该配置文件将执行将支持外围设备上的自定义配置文件的发现过程,一旦完成发现过程(并且中央知道该特定于上支持的所有特征外设)开始发出读取命令(如果您希望从外围设备读取数据的核心),或者您应该写入外围设备的CCC描述符(如果是该特性是不可用的),以便外围将开始向数据发送数据中央。为了实现自定义中央配置文件,没有文档或教程或一个简单的示例,但是您可以将DSPS演示作为参考(主机侧),以便实现一个非常相似的东西,这将执行发现并开始通信的设备有一个中央。

谢谢你的对话

vishnuatdialog
离线
最后一次见到:8个月1周前
加入:2017-07-25 07:44
你好对话框,

你好对话框,
无论您在上面解释的是什么情况(客户机和服务器)都是基于DA14585的。
但是,在我的情况下
BLE服务器(外围设备)是(DA14585 + IMU传感器)
BLE客户端(中央)是(CC2650)不是基于DA14585的。
截至上述情况,我不希望在BLE客户端中实现触发。每当BLE客户端连接到BLE服务器而不触发时,我想读取数据。为此,我想在BLE_Peripheral代码中进行更改,而不是在BLE客户端代码中。
是否可以从BLE服务器(外设)读取数据而不将0x01写入控制点(触发)?

谢谢
毗湿奴

MT\u对话框
离线
最后一次见到:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

读取程序是一个命令,只有中央设备可以启动,而不是外围设备。外围设备启动向中央设备的数据传输的唯一方法是通过通知,这意味着您必须将您的特征通知。此外,为了使中央从外围设备获得通知,它必须执行对可通知特征的写入请求,以便启用通知。因此,它不是强制写入ble\u app\u外围设备所具有的控制点(控制点只是启用一个触发发送通知的计时器),而是强制启用您希望发送其值的特性上的CCC。例如,当使用ble\u app\u外设时,您需要执行两次写入以开始从外设获取数据,一次是控制点,另一次是启用ADC特性的CCC,后者是客户端开始获取通知的必需条件,您可以在相应回调中连接时触发这些通知。

谢谢你的对话

vishnuatdialog
离线
最后一次见到:8个月1周前
加入:2017-07-25 07:44
你好对话框,

你好对话框,
但是,当我使用NRFConnect应用程序作为Blecentral时,我仅向控制点(0x01)写入,然后按下启用的通知箭头,然后按读取箭头以接收外围数据。我没有编写任何外部命令以使来自应用程序的CCC读取ADC值。
如何启用CCC对特性的是通过代码执行的,或者我们应该通过使用BLE Central来执行此操作吗?
最后,是否可以在不从BLE central写入任何命令的情况下接收外围数据?

谢谢
毗湿奴

MT\u对话框
离线
最后一次见到:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

当您按下通知启用按钮时,这就是中心的所作所为,它将写入特性的CCC,以便启用指定特征的通知。

如果您不写信到CCC特性(即启用通知),则中央不会从该分析特性接收任何内容。

谢谢你的对话

vishnuatdialog
离线
最后一次见到:8个月1周前
加入:2017-07-25 07:44
你好对话框,

你好对话框,
如果我不想写入控制点,我如何自动触发计时器?

MT\u对话框
离线
最后一次见到:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

您可以在与设备连接后设置计时器以发出小延迟,并在该计时器的回调中发送通知,或者您可以在中央写入CCC时使用写入指示(以便启用通知)并且要么从那里开始计时器或直接发送通知。对于后面的所有您所要做的就是在user_catch_rest_hndl()函数中有此实现,当您收到Custs1_Val_Write_ind时。

谢谢你的对话