使用压缩技术提高BLE吞吐量

7个帖子/ 0新
最后一篇
Bharath.
离线
最后一次露面:1年3个月前
加入:2016-04-14 07:03
使用压缩技术提高BLE吞吐量

在我们的设计中,我们有一个传感器,每个传感器每秒产生36kbps的数据。
但是,BLE的吞吐量不支持从传感器的那么多的数据传输和中断处理。所以我想使用压缩逻辑来传输数据。该方法应快速无损。
使用简单的压缩技术提高我的BLE吞吐量的可能方法是什么?

谢谢

设备:
mt_dialog.
离线
最后一次露面:1个月1天前
职员
加入:2015-06-08 11:34
嗨bharath,

嗨bharath,

DSPS应用程序可以在不使用任何类型的压缩的情况下实现您想要的速度,请检查DSPS应用笔记的性能结果。

谢谢mt_dialog.

Bharath.
离线
最后一次露面:1年3个月前
加入:2016-04-14 07:03
现在我们正在使用数据

现在我们正在使用data_stream配置文件。
DSP是否会提供更好的结果?
所有修改我应该做些什么,以便从SPI设备读取数据并使用DSP发送它?

谢谢

mt_dialog.
离线
最后一次露面:1个月1天前
职员
加入:2015-06-08 11:34
嗨bharath,

嗨bharath,

如我之前的帖子中所述,可以在第32页检查UM-B-038串行端口服务中的性能结果,您可以找到针对不同类型的操作系统(Android,iOS)和580操作执行的所有测量作为一个中心。

关于SPI修改,我假设您可以从SPI设备读取数据并将数据放置在DSP应用程序的环形缓冲区中,以防您想要仅在连接的另一侧上打印UART上的数据。如果您对使用UART接口根本不感兴趣,您可以检查DSP如何通过蓝牙实现这些数据速率。通常,通过使用较低的连接间隔提高您的吞吐量,通过增加MTU大小,可以删除L2CAP进入数据包的开销。另外,通过使用适当的特性还提高了您的数据速率,例如使用通知,以便从从设备(比指示更有效)发送数据,并且使用Write没有支持此属性的响应命令和特性,以便发送数据你的中心。

谢谢mt_dialog.

Bharath.
离线
最后一次露面:1年3个月前
加入:2016-04-14 07:03
我尝试改变mtu大小

我尝试在吞吐量eval示例中更改MTU大小,但它没有工作。当MTU大小仅在每次发送时才发生8到10个字节时。
你能告诉我,我在哪里可以将数据从SPI添加到DSP示例中的环形缓冲区?
此外,当我运行我的DSP示例时,在Keil中,程序停止而无法调试我的代码。这可能是这个问题的原因?

谢谢

Bharath.
离线
最后一次露面:1年3个月前
加入:2016-04-14 07:03
这个问题可以解决吗?

这个问题可以通过线程解决吗?
如何在DA14580中添加一个线程?

mt_dialog.
离线
最后一次露面:1个月1天前
职员
加入:2015-06-08 11:34
嗨bharath,

嗨bharath,

关于SPI的DSP和数据,您可以看一下应用程序注意,用于将数据中的函数放置在环形缓冲区中的数据是user_periph_push()从UART到Periph_to_ble_buffer。该函数还检查缓冲区的状态并发送流量。如果不希望此类控件到您的应用程序,则可以使用user_send_ble_data()以直接发送另一侧的数据。

关于在睡眠模式下的停止问题,您无法调试,您必须禁用睡眠模式或启用睡眠模式退出调试模式。

关于线程,580无法使用实际操作系统,以支持线程,处理任务的基本操作系统只是收到消息并将其处理,并不喜欢作为实际操作系统。

谢谢mt_dialog.