Automating the BLE server to send the data to BLE central

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

你好对话框,
我们综合了IMU与DA14585奥维传感器r I2C it was successful. After that, we have created new characteristics for the IMU sensor (ACC, GYRO, Temp) and able to read all the sensor characteristics values on nRF connect app by sending trigger using control point characteristic(0x01). For developing this application we have used the ble_peripherial example.
现在我们想使用BLE中央设备阅读相同的数据,我们想在没有发送任何触发器的情况下进行。就像,当连接到BLE服务器的BLE Central时,它应该在没有任何外部触发的情况下自动发送传感器数据。这是否可以使用可用的堆栈,如果是这样,请告诉我们我们应该在BLE_PERIALIAL示例中执行哪些修改?

谢谢
D.Vishnu

关键词:
设备:
MT_dialog
离线
Last seen:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

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

Thanks MT_dialog

vishnuatdialog
离线
Last seen:8个月1周前
加入:2017-07-25 07:44
你好对话框,

你好对话框,
whichever you have explained above is in the case of both (client and server ) is based on DA14585.
但是,在我的情况下
BLE服务器(外围设备)是(DA14585 + IMU传感器)
BLE客户端(中央)是(CC2650)不是基于DA14585的。
截至上述情况,我不希望在BLE客户端中实现触发。每当BLE客户端连接到BLE服务器而不触发时,我想读取数据。为此,我想在BLE_Peripheral代码中进行更改,而不是在BLE客户端代码中。
是否可以从BLE服务器(外设)读取数据而不将0x01写入控制点(触发)?

谢谢
D.Vishnu

MT_dialog
离线
Last seen:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

The read procedure is a command that only a central can initiate and not a peripheral, in BLE the only way for a peripheral to initiate a data transfer towards a central is via notification, that means that you will have to make your characteristics notifiable. Also in order for the central to get the notifications from the peripheral it must perform a write request to the notifiable characteristic in order to enable the notifications. So its not mandatory to write to the control point that the ble_app_peripheral has (the control point just enables a timer that will trigger the sending of the notifications) but its mandatory to enable the CCC on the characteristic that you would like to send its value. For example when using the ble_app_peripheral you need to perform two writes in order to start getting data from the peripheral, one is the control point and the other write is to enable the CCC of the ADC characteristic, the later is mandatory for the client to start getting the notifications which you could start triggering upon connection in the corresponding callback.

Thanks MT_Dialog

vishnuatdialog
离线
Last seen:8个月1周前
加入:2017-07-25 07:44
你好对话框,

你好对话框,
但是,当我使用NRFConnect应用程序作为Blecentral时,我仅向控制点(0x01)写入,然后按下启用的通知箭头,然后按读取箭头以接收外围数据。我没有编写任何外部命令以使来自应用程序的CCC读取ADC值。
如何启用CCC对特性的是通过代码执行的,或者我们应该通过使用BLE Central来执行此操作吗?
Finally is it possible to receive peripheral data without writing any command from BLE central?

谢谢
D.Vishnu

MT_dialog
离线
Last seen:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

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

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

Thanks MT_dialog

vishnuatdialog
离线
Last seen:8个月1周前
加入:2017-07-25 07:44
你好对话框,

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

MT_dialog
离线
Last seen:1个月3周前
职员
加入:2015-06-08 11:34
嗨Vishnuatdialog,

嗨Vishnuatdialog,

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

Thanks MT_dialog